LNF015 — Listagem LNF015
Visão Geral
Layout de impressão da família LNF (Nota Fiscal). Acionado via ExecLayout a partir das telas que imprimem este tipo de documento.
Descrição
Consulta baseada em HABILITA_PESOQTDE, com junção em ITEMNOTA, PESSOA, ENDERECOPESSOA, MUNICIPIO, EMPRESA, CONDPAGTO (+6), filtrada por CD_PESSOA, JO, CD_MUNICIPIO, CD_CONDPAGTO, CD_ITEM, CD_FORMAPAGTO (+9).
Chamada
ExecLayout(Connection, [
// 0 - Nome do Layout da Nota Fiscal
// 1 - Cod Empresa
// 2 - Nr Lancamento
// 3 - Tp Nota
// 4 - Cod Serie
// 5 - Path Servidor
// 6 - Visualiza -> V ou Imprime -> I
// 7 - Impressora do Parametro
// 9 - nome cliente(não gravado no banco)
// 10 - CPF cliente (não gravado no banco)
]);
SQL Base
Pedido
SELECT N.CD_EMPRESA, E.NM_EMPRESA, EE.DS_ENDERECO||coalesce(', '||EE.NR_ENDERECO,' ')||coalesce(coalesce(' - '||EE.DS_BAIRRO, EE.DS_COMPLEMENTO),' ') DS_ENDEREMP, ME.DS_MUNICIPIO||' - '||ME.SG_ESTADO DS_MUNICEMP, ME.DS_MUNICIPIO,EE.NR_INSCEST INSCEMP, PE.NR_CNPJCPF NR_CNPJEMP, coalesce(EE.NR_FONE, EE.NR_FAX) NR_FONEEMP, EE.NR_CEP NR_CEPEMP, N.NR_LANCAMENTO, N.TP_NOTA, N.DT_EMISSAO, N.NR_NOTAFISCAL, cast(N.DT_EMISSAO ||' '|| current_time as timestamp) DT_EMISSAO, N.CD_PESSOA, P.NM_PESSOA, P.NR_CNPJCPF, EP.NR_CEP, EP.DS_ENDERECO||coalesce(', '||EP.NR_ENDERECO,' ') DS_ENDERECO, coalesce(EP.DS_BAIRRO, EP.DS_COMPLEMENTO) DS_BAIRRO, MP.DS_MUNICIPIO||' - '||MP.SG_ESTADO DS_MUNICIPIO_1, EP.NR_INSCEST, coalesce(EP.NR_FONE, EP.NR_FAX) NR_FONE, N.DT_VENCIMENTO, case C.ST_CONDPAGTO when 'D' then 'Vencto.: '||FORMATA_DATA(N.DT_VENCIMENTO,'%d/%m/%Y') else C.DS_CONDPAGTO end DS_CONDPAGTO, N.CD_CONDPAGTO, '('||N.CD_VENDEDOR||') '||V.NM_PESSOA NM_VENDEDOR, N.VL_NOTAFISCAL, coalesce('Observação.: '||N.DS_OBSERVACAO,'') DS_OBSERVACAO, IP.CD_ITEM, I.DS_ITEM, I.SG_UNIDMED, I.SG_UNIDALT, IP.VL_UNITARIO, IP.VL_DESCONTO, IP.VL_TOTAL, IP.VL_TOTAL - coalesce(IP.VL_DESCONTO,0) VL_LIQUIDO, COALESCE(IP.QT_ITEMNOTA, IP.PS_ITEMNOTA) QT_ITEMNOTA, (
SELECT V_TIPO
FROM HABILITA_PESOQTDE (IP.CD_ITEM)) TIPO, N.VL_CONTABIL, FP.DS_FORMAPAGTO, CASE WHEN C.ST_CONDPAGTO = 'V' THEN NULL ELSE CC.VL_DOCUMENTO END VL_DOCUMENTO, COALESCE(P.NM_FANTASIA||' - ','')||P.NM_PESSOA NM_FANTPESSOA, CAST(:0 AS VARCHAR(100)) NM_CLIENTE, CAST(:1 AS VARCHAR(20)) NR_CPF
FROM NOTA N
INNER JOIN ITEMNOTA IP on (N.NR_LANCAMENTO = IP.NR_LANCAMENTO
AND N.CD_EMPRESA = IP.CD_EMPRESA
AND N.TP_NOTA = IP.TP_NOTA
AND N.CD_SERIE = IP.CD_SERIE)
INNER JOIN PESSOA P on (N.CD_PESSOA = P.CD_PESSOA)
INNER JOIN ENDERECOPESSOA EP on (N.CD_PESSOA = EP.CD_PESSOA
AND N.CD_ENDERECO = EP.CD_ENDERECO)
INNER JOIN MUNICIPIO MP on (EP.CD_MUNICIPIO = MP.CD_MUNICIPIO)
INNER JOIN EMPRESA E on (N.CD_EMPRESA = E.CD_EMPRESA)
INNER JOIN PESSOA PE on (E.CD_PESSOA = PE.CD_PESSOA)
INNER JOIN ENDERECOPESSOA EE on (EE.CD_PESSOA = PE.CD_PESSOA
AND EE.CD_ENDERECO = (
SELECT min(CD_ENDERECO)
FROM ENDERECOPESSOA ENDER
WHERE ENDER.CD_PESSOA = EE.CD_PESSOA))
INNER JOIN MUNICIPIO ME on (EE.CD_MUNICIPIO = ME.CD_MUNICIPIO)
INNER JOIN CONDPAGTO C on (N.CD_CONDPAGTO = C.CD_CONDPAGTO)
INNER JOIN ITEM I on (IP.CD_ITEM = I.CD_ITEM)
LEFT JOIN PESSOA V on (V.CD_PESSOA = N.CD_VENDEDOR)
INNER JOIN FORMAPAGTO FP ON (FP.CD_FORMAPAGTO = N.CD_FORMAPAGTO)
LEFT JOIN CONTAS CC ON (CC.CD_EMPRESA = N.CD_EMPRESA
AND CC.NR_LANCTONOTA = N.NR_LANCAMENTO
AND CC.TP_CONTAS = N.TP_NOTA
AND CC.CD_SERIE = N.CD_SERIE
AND CC.NR_PARCELA = 1
AND CC.ST_CONTAS = 'L'
AND cc.DT_LANCAMENTO = cc.DT_LIQUIDACAO)
WHERE N.CD_EMPRESA = :CD_EMPRESA
AND N.NR_LANCAMENTO = :NR_LANCAMENTO
AND N.TP_NOTA = :TP_NOTA
AND N.CD_SERIE = :CD_SERIE
ORDER BY I.CD_ITEM 0 1 CD_EMPRESA 1 NR_LANCAMENTO TP_NOTA CD_SERIE CD_EMPRESA "NOTA"."CD_EMPRESA" NM_EMPRESA "EMPRESA"."NM_EMPRESA" DS_ENDEREMP DS_MUNICEMP DS_MUNICIPIO "MUNICIPIO"."DS_MUNICIPIO" INSCEMP "ENDERECOPESSOA"."NR_INSCEST" NR_CNPJEMP "PESSOA"."NR_CNPJCPF" NR_FONEEMP NR_CEPEMP "ENDERECOPESSOA"."NR_CEP" NR_LANCAMENTO "NOTA"."NR_LANCAMENTO" TP_NOTA "NOTA"."TP_NOTA" DT_EMISSAO "NOTA"."DT_EMISSAO" NR_NOTAFISCAL "NOTA"."NR_NOTAFISCAL" CD_PESSOA "NOTA"."CD_PESSOA" NM_PESSOA "PESSOA"."NM_PESSOA" NR_CNPJCPF "PESSOA"."NR_CNPJCPF" NR_CEP "ENDERECOPESSOA"."NR_CEP" DS_ENDERECO DS_BAIRRO NR_INSCEST "ENDERECOPESSOA"."NR_INSCEST" NR_FONE DT_VENCIMENTO "NOTA"."DT_VENCIMENTO" DS_CONDPAGTO CD_CONDPAGTO "NOTA"."CD_CONDPAGTO" NM_VENDEDOR DS_OBSERVACAO VL_NOTAFISCAL "NOTA"."VL_NOTAFISCAL" CD_ITEM "ITEMNOTA"."CD_ITEM" DS_ITEM "ITEM"."DS_ITEM" SG_UNIDMED "ITEM"."SG_UNIDMED" SG_UNIDALT "ITEM"."SG_UNIDALT" VL_UNITARIO "ITEMNOTA"."VL_UNITARIO" VL_DESCONTO "ITEMNOTA"."VL_DESCONTO" VL_TOTAL "ITEMNOTA"."VL_TOTAL" VL_LIQUIDO QT_ITEMNOTA TIPO VL_CONTABIL "NOTA"."VL_CONTABIL" DS_FORMAPAGTO "FORMAPAGTO"."DS_FORMAPAGTO" VL_DOCUMENTO "CONTAS"."VL_DOCUMENTO" NM_FANTPESSOA NM_CLIENTE NR_CPF DT_EMISSAO_1 DT_EMISSAO DS_MUNICIPIO_1 DS_MUNICIPIO
SELECT CONTAS.DT_VENCIMENTO, CONTAS.VL_DOCUMENTO, CONTAS.NR_PARCELA, F.DS_FORMAPAGTO
FROM CONTAS
LEFT JOIN FORMAPAGTO F ON (F.CD_FORMAPAGTO = CONTAS.CD_FORMAPAGTO)
WHERE CONTAS.CD_EMPRESA = :CD_EMPRESA
AND CONTAS.NR_LANCTONOTA = :NR_LANCAMENTO
AND CONTAS.TP_CONTAS = :TP_NOTA
AND CONTAS.CD_SERIE = :CD_SERIE
AND CONTAS.CD_FORMAPAGTO <> 'CH'
AND CONTAS.DT_VENCIMENTO > CONTAS.DT_LANCAMENTO
AND CONTAS.ST_CONTAS <> 'C'
ORDER BY CONTAS.DT_VENCIMENTO CD_EMPRESA 1 NR_LANCAMENTO TP_NOTA CD_SERIE DT_VENCIMENTO "CONTAS"."DT_VENCIMENTO" VL_DOCUMENTO "CONTAS"."VL_DOCUMENTO" NR_PARCELA "CONTAS"."NR_PARCELA" DS_FORMAPAGTO "FORMAPAGTO"."DS_FORMAPAGTO" DBSub1 DT_VENCIMENTO DT_VENCIMENTO VL_DOCUMENTO VL_DOCUMENTO NR_PARCELA NR_PARCELA DS_FORMAPAGTO DS_FORMAPAGTO
SELECT LG.DS_LINHA||' - '||CG.DS_COLUNA DS_GRADE, IG.QT_GRADE
FROM ITEMNOTAGRADE IG
INNER JOIN GRADE G ON (G.CD_GRADE = IG.CD_GRADE)
INNER JOIN COLUNAGRADE CG ON (CG.CD_GRADE = IG.CD_GRADE
AND CG.NR_COLUNA = IG.NR_COLUNA)
LEFT JOIN LINHAGRADE LG ON (LG.CD_GRADE = IG.CD_GRADE
AND LG.NR_LINHA = IG.NR_LINHA)
WHERE IG.CD_EMPRESA = :CD_EMPRESA
AND IG.NR_LANCAMENTO = :NR_LANCAMENTO
AND IG.TP_NOTA = :TP_NOTA
AND IG.CD_SERIE = :CD_SERIE
AND IG.CD_ITEM = :CD_ITEM
ORDER BY IG.CD_ITEM CD_EMPRESA 1 NR_LANCAMENTO TP_NOTA CD_SERIE CD_ITEM DS_GRADE QT_GRADE "ITEMNOTAGRADE"."QT_GRADE" DBSub2 DS_GRADE DS_GRADE QT_GRADE QT_GRADE Default Impressão de Nota Fiscal A4 Default D:\Desenvolvimento\JunsoftERP_V2\dist\LNF015.RTM ($MyDocuments)\ReportArchive.raf Printer PDF PDF SMTP http://localhost http://localhost Default ReportBuilder ReportBuilder Arial Report ($MyDocuments)\Report.pdf <Texto a localizar> ReportBuilder ReportBuilder Report Report Report http://localhost http://localhost http://localhost 23.0 ppDB Line5 lblCD_ITEM1 Produto Roman 12cpi lblQT_PEDIDA2 Qtde Roman 12cpi lblVL_UNITARIO1 Unitário Roman 12cpi lblVL_TOTAL1 Total Roman 12cpi edtNM_EMPRESA1 NM_EMPRESA Roman 12cpi ppDB edtDS_ENDEREMP1 DS_ENDEREMP Roman 12cpi ppDB edtNR_NOTAFISCAL1 NR_NOTAFISCAL "Documento" ######### Roman 12cpi ppDB edtDT_EMISSAO1 DT_EMISSAO dd/mm/yyyy Roman 12cpi ppDB lblDT_PEDIDO1 Data.: Roman 12cpi lblNM_PESSOA1 Cliente.: Roman 12cpi edtNM_PESSOA1 NM_PESSOA Roman 12cpi ppDB lblDS_ENDERECO1 Endereço.: Roman 12cpi edtDS_ENDERECO1 DS_ENDERECO Roman 12cpi ppDB lblNR_FONE1 Telefone.: Roman 12cpi edtNR_FONE1 NR_FONE Roman 12cpi ppDB lblDS_MUNICIPIO1 Cidade.: Roman 12cpi edtDS_MUNICIPIO1 DS_MUNICIPIO_1 Roman 12cpi ppDB lblNR_CNPJCPF1 CPF.: Roman 12cpi edtNR_CNPJCPF1 NR_CNPJCPF Roman 12cpi ppDB lblDS_BAIRRO1 Bairro.: Roman 12cpi edtDS_BAIRRO1 DS_BAIRRO Roman 12cpi ppDB lblDS_ENDEREMP1 Endereço.: Roman 12cpi lblNR_FONEEMP1 Fone.: Roman 12cpi edtNR_FONEEMP1 NR_FONEEMP Roman 12cpi ppDB SG_UNIDALT1 SG_UNIDALT Roman 12cpi ppDB SG_UNIDMED1 SG_UNIDMED Roman 12cpi ppDB TIPO1 TIPO Roman 12cpi ppDB lblPS_PEDIDO1 Peso Roman 12cpi Line8 Label30 UN Roman 12cpi Line9 Label1 CNPJ.: Roman 12cpi DBText2 NR_CNPJEMP Roman 12cpi ppDB DBText10 NR_INSCEMP Roman 12cpi ppDB Label7 I. E. Roman 12cpi Label3 Qtde Grade Roman 12cpi Label11 Cond. Pagto.: Roman 12cpi Label12 Forma Pagto.: Roman 12cpi DBText13 DS_CONDPAGTO Roman 12cpi ppDB DBText3 DS_FORMAPAGTO Roman 12cpi ppDB edtCD_ITEM1 CD_ITEM Roman 12cpi ppDB edtDS_ITEM1 DS_ITEM Roman 12cpi ppDB edtQT_ITEMNOTA1 QT_ITEMNOTA #,0.00 Roman 12cpi ppDB edtVL_UNITARIO1 VL_UNITARIO #,0.0000 Roman 12cpi ppDB edtVL_TOTAL1 VL_TOTAL #,0.00 Roman 12cpi ppDB DBText1 SG_UNIDMED Roman 12cpi ppDB SubReport1 ppDBSub2 Default Impressão de Nota Fiscal A4 Default 23.0 ppDBSub2 edtQT_GRADE QT_GRADE #,0.00 Roman 12cpi ppDBSub2 edtDS_GRADE DS_GRADE Roman 12cpi ppDBSub2 Foreground lblDS_CONDPAGTO1 Cond. de Pagamento.: Roman 12cpi edtDS_CONDPAGTO1 DS_CONDPAGTO Roman 12cpi ppDB subContas1 ppDBSub1 8000 105500 Default Impressão de Nota Fiscal A4 Default 23.0 ppDBSub1 Label2 Parcela Roman 12cpi Label6 Forma Pagto Roman 12cpi Label8 Vencimento Roman 12cpi Label9 Valor Roman 12cpi Line4 Label1 Parcela Roman 12cpi Label3 Forma Pagto Roman 12cpi Label4 Vencimento Roman 12cpi Label5 Valor Roman 12cpi Line1 edtDT_VENCIMENTO DT_VENCIMENTO dd/mm/yy Roman 12cpi ppDBSub1 edtVL_DOCUMENTO VL_DOCUMENTO #,0.00 Roman 12cpi ppDBSub1 edtDT_VENCIMENTO1 NR_PARCELA Roman 12cpi ppDBSub1 DBText3 DS_FORMAPAGTO Roman 12cpi ppDBSub1 Line2 Label35 Reconheco a exatidão desta Duplicata de Venda Mercantil, com pagamento Roman 12cpi DBText31 NM_EMPRESA Roman 12cpi ppDB Label36 ou a sua ordem na praça e vencimento acima indicados. Roman 12cpi Label37 parcelado na importância de Roman 12cpi DBCalc7 VL_DOCUMENTO R$ #,0.00 Roman 12cpi ppDBSub1 Label38 que pagarei a Roman 12cpi Foreground1 DBText16 VL_DOCUMENTO Entrada: #,0.00 Roman 12cpi ppDB DBText12 NM_VENDEDOR Roman 12cpi ppDB Label2 Vendedor.: Roman 12cpi Line10 Label32 Total Líquido.: Roman 12cpi edtVL_TOTLIQUIDO2 VL_LIQUIDO #,0.00 Roman 12cpi ppDB edtVL_TOTDESC1 VL_DESCONTO "Desconto.: " #,0.00 Roman 12cpi ppDB edtVL_TOTTOTAL1 VL_TOTAL #,0.00 Roman 12cpi ppDB lblTOTAIS2 Totais.: Roman 12cpi edtQT_TOTITEMNOTA1 QT_ITEMNOTA #,0.00 Roman 12cpi ppDB Line11 DBText101 NM_PESSOA Roman 12cpi ppDB Label34 , Roman 12cpi SystemVariable3 dd 'de' mmmm 'de' yyyy'.' Roman 12cpi edt_DS_MUNICIPIO DS_MUNICIPIO Roman 12cpi ppDB SystemVariable4 Roman 12cpi Foreground2
tabGRADE
{Consulta}
Consulta #1
SELECT LG.DS_LINHA||' - '||CG.DS_COLUNA DS_GRADE, IG.QT_GRADE
FROM ITEMNOTAGRADE IG
INNER JOIN GRADE G ON (G.CD_GRADE = IG.CD_GRADE)
INNER JOIN COLUNAGRADE CG ON (CG.CD_GRADE = IG.CD_GRADE
AND CG.NR_COLUNA = IG.NR_COLUNA)
LEFT JOIN LINHAGRADE LG ON (LG.CD_GRADE = IG.CD_GRADE
AND LG.NR_LINHA = IG.NR_LINHA)
WHERE IG.CD_EMPRESA = {Parametros[1]+#10}
AND IG.NR_LANCAMENTO = {Parametros[2]+#10}
AND IG.TP_NOTA = {QuotedStr(Parametros[3])+#10}
AND IG.CD_SERIE = {QuotedStr(Parametros[4])+#10}
AND IG.CD_ITEM = {frmLNF015.PedidoCD_ITEM.AsString +#10}
ORDER BY IG.CD_ITEM
Consulta #2
SELECT CONDPAGTO.ST_CONDPAGTO
FROM NOTA
INNER JOIN CONDPAGTO ON (CONDPAGTO.CD_CONDPAGTO = NOTA.CD_CONDPAGTO)
WHERE NOTA.CD_EMPRESA = {Parametros[1]}
AND NOTA.NR_LANCAMENTO = {Parametros[2]}
AND NOTA.TP_NOTA = {QuotedStr(Parametros[3])}
AND NOTA.CD_SERIE = {QuotedStr(Parametros[4])}
Consulta #3
SELECT COALESCE(SUM(CONTAS.VL_DOCUMENTO),0)
FROM CONTAS
WHERE CONTAS.CD_EMPRESA = {Parametros[1] }
AND CONTAS.NR_LANCTONOTA = {Parametros[2] }
AND CONTAS.TP_CONTAS = {QuotedStr(Parametros[3]) }
AND CONTAS.CD_SERIE = {QuotedStr(Parametros[4]) }
AND CONTAS.DT_VENCIMENTO = CONTAS.DT_LANCAMENTO
Consulta #4
SELECT COALESCE(SUM(CONTAS.VL_DOCUMENTO),0)
FROM CONTAS
WHERE CONTAS.CD_EMPRESA = {Parametros[1] }
AND CONTAS.NR_LANCTONOTA = {Parametros[2] }
AND CONTAS.TP_CONTAS = {QuotedStr(Parametros[3]) }
AND CONTAS.CD_SERIE = {QuotedStr(Parametros[4]) }
AND CONTAS.DT_VENCIMENTO = CONTAS.DT_LANCAMENTO
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
COLUNAGRADE | referenciada nas queries do layout |
CONDPAGTO | referenciada nas queries do layout |
CONTAS | referenciada nas queries do layout |
EMPRESA | referenciada nas queries do layout |
ENDERECOPESSOA | referenciada nas queries do layout |
FORMAPAGTO | referenciada nas queries do layout |
GRADE | referenciada nas queries do layout |
HABILITA_PESOQTDE | referenciada nas queries do layout |
ITEM | referenciada nas queries do layout |
ITEMNOTA | referenciada nas queries do layout |
ITEMNOTAGRADE | referenciada nas queries do layout |
LINHAGRADE | referenciada nas queries do layout |
MUNICIPIO | referenciada nas queries do layout |
NOTA | referenciada nas queries do layout |
PESSOA | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LNF015/ULNF015.pas - DFM:
source/LNF015/ULNF015.dfm - Package:
source/LNF015/LNF015.dpk