LNF501 — Listagem LNF501
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 RETORNA_CABECNF, com junção em RETORNA_IMPOSTOSITEMNOTA, PARMFATUR, TIPOCONTA, filtrada por CD_EMPRESA, CD_PESSOA, ST_CONTAS, TP_CONTAS, TP_TIPOCONTA, JO (+1).
Chamada
ExecLayout(Connection, [
// 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
// 8 - usuario
// 9 - pdF
// 10 - Tela
// 11 - Confirma Impressão
]);
SQL Base
tabNOTA
SELECT /* NOTA */ NF.CD_EMPRESA, NF.NR_LANCAMENTO,NF.CD_SERIE, NF.TP_NOTA, NF.NR_NOTAFISCAL, NF.NR_NOTAFOR, NF.VL_NOTAFISCAL, NF.VL_CONTABIL,NF.VL_DESCONTO, NF.VL_FRETE, NF.VL_DESPESA, NF.CD_CONDPAGTO, NF.DS_CONDPAGTO, NF.DT_EMISSAO, NF.DT_VENCIMENTO, NF.CD_FORMAPAGTO, NF.DS_FORMAPAGTO, NF.DS_OBSNOTA, NF.DS_OBSFISCAL, NF.NM_VENDEDORCABEC, NF.CD_NM_VENDEDORCABEC, NF.O_NM_VENDEDORES,NF.ST_NOTA, NII.O_DS_IMPOSTOS, NII.O_VL_IMPOSTO, CASE NF.TP_PAGTCUPOM when '1' then 'Dinheiro' when '2' then 'Cheque' when '3' then 'Cartão de Crédito' when '4' then 'Cartão de Débito' when '5' then 'Crédito Loja' when '10' then 'Vale Alimentação' when '11' then 'Vale Refeição' when '12' then 'Vale Presente' when '13' then 'Vale Combustível' when '99' then 'Outros' END TP_PAGTCUPOM, NF.VL_TROCO, /* EMPRESA */ NF.DS_LOGOTIPO, NF.DS_MENSAGEM, NF.E_NM_RAZAOSOCIAL, NF.E_NM_FANTASIA, NF.E_NR_CNPJCPF, NF.E_DS_EMAIL, NF.E_DS_SITE, NF.E_DS_ENDERECO, NF.E_DS_MUNICIPIO, NF.E_NR_ENDERECO, NF.E_DS_BAIRRO, NF.E_DS_COMPLEMENTO, NF.E_NR_CEP, NF.E_NR_INSCEST, NF.E_NR_FONE, NF.E_NR_CELULAR, NF.E_DS_ENDCOMPLETO, NF.E_NR_FAX, /* PESSOA */ NF.C_CD_PESSOA, NF.C_NM_CLIENTE, NF.C_NM_FANTASIA, NF.C_NR_CNPJCPF, NF.C_DS_EMAIL, NF.C_DS_SITE, NF.C_DS_ENDERECO, NF.C_DS_MUNICIPIO, NF.C_NR_ENDERECO, NF.C_DS_BAIRRO, NF.C_DS_COMPLEMENTO, NF.C_NR_CEP, NF.C_NR_INSCEST, NF.C_NR_FONE, NF.C_NR_CELULAR, NF.C_DS_ENDCOMPLETO, NF.C_NR_INSCPRODUTOR, NF.C_NR_FAX, nf.CF_NR_CNPJCPF, /*NFE*/ NF.NR_CHAVEACESSO, NF.TP_EMISS, NF.CSTAT, NF.NR_LOTE, NF.NR_RECIBO, NF.NR_PROTOCOLOAUT, NF.NR_PROTOCOLOCANC, NF.TP_AMB, NF.DS_URLQRCODE,NF.HR_EMISSAO, CASE NF.TP_EMISS WHEN 1 THEN 'Normal' ELSE 'Contigência' END DS_TPEMISSAO, P.CD_CONSUMIDOR, NF.CF_NR_CNPJCPF, NF.ST_CONDPAGTO, P.ST_COMPROVANTECUPOM, NF.BI_IMGQRCODE, NF.DS_MSGSEFAZ, NF.ST_CUPOMIDENTIFICADO
FROM RETORNA_CABECNF(:CD_EMPRESA, :NR_LANCAMENTO, :CD_SERIE, :TP_NOTA) NF
LEFT JOIN RETORNA_IMPOSTOSITEMNOTA(NF.CD_EMPRESA, NF.NR_LANCAMENTO, NF.TP_NOTA, NF.CD_SERIE, NULL) NII ON (1=1)
INNER JOIN PARMFATUR P ON (P.CD_EMPRESA = NF.CD_EMPRESA) CD_EMPRESA NR_LANCAMENTO CD_SERIE TP_NOTA
SELECT /*Nota*/ NI.CD_EMPRESA, NI.NR_LANCAMENTO, NI.TP_NOTA, NI.CD_SERIE, /*Itens*/ NI.CD_ITEM, NI.N_CD_ITEM, NI.N_DS_ITEM, NI.N_CD_DS_ITEM, NI.N_DS_OBSITEM, NI.N_SG_UNIDMED, NI.N_SG_UNIDALT, NI.N_VL_UNITARIO,NI.N_VL_TOTAL, NI.N_VL_DESCONTO, NI.N_VL_DESPESA, NI.N_VL_FRETE, NI.N_VL_LIQUIDO, NI.N_QT_ITEMNOTA, NI.N_PS_ITEMNOTA, NI.N_QT_ITEM, NI.N_CD_CFO, NI.N_CD_CST, NI.N_CD_CSOSN, NI.N_NR_NCM, NI.N_CD_FORNECEDOR1, NI.N_CD_FORNECEDOR2, NI.N_CD_CODIGOBARRA,NII.O_VL_IMPOSTO,NII.O_DS_IMPOSTOS, COALESCE(NI.N_DS_OBSITEM, NI.N_DS_ITEM) DS_ITEMOBS
FROM RETORNA_ITENSNF(:CD_EMPRESA,:NR_LANCAMENTO,:CD_SERIE,:TP_NOTA,NULL) NI
LEFT JOIN RETORNA_IMPOSTOSITEMNOTA(NI.CD_EMPRESA, NI.NR_LANCAMENTO, NI.TP_NOTA, NI.CD_SERIE,NULL) NII on (1=1) CD_EMPRESA NR_LANCAMENTO CD_SERIE TP_NOTA
SELECT PGT.O_NR_PARCELA, PGT.O_TP_MOVTO, PGT.O_TP_BAIXA, PGT.O_VL_DOCUMENTO
FROM RETORNA_PAGAMENTONOTA(:CD_EMPRESA,:NR_LANCAMENTO,:CD_SERIE,:TP_NOTA) PGT CD_EMPRESA NR_LANCAMENTO CD_SERIE TP_NOTA
SELECT VL_SALDO, VL_PAGAR, VL_NOTAFISCAL, (VL_SALDO - VL_NOTAFISCAL) VL_CREDITO, (VL_PAGAR - VL_SALDO) VL_TOTCREDITO, (VL_SALDO - VL_PAGAR) VL_TOTDEBITO
FROM (
SELECT SUM(COALESCE(C.VL_SALDO,0)) VL_SALDO, (
SELECT COALESCE(SUM(C.VL_SALDO),0)
FROM CONTAS C
INNER JOIN TIPOCONTA ON (TIPOCONTA.CD_TIPOCONTA = C.CD_TIPOCONTA)
WHERE C.CD_EMPRESA = :CD_EMPRESA
AND C.CD_PESSOA = :C_CD_PESSOA
AND C.ST_CONTAS IN('T','P')
AND C.TP_CONTAS IN ('E')
AND TIPOCONTA.TP_TIPOCONTA IN('CP', 'AC')) VL_PAGAR, CAST(:VL_NOTAFISCAL AS DOM_NUMERIC15_2) VL_NOTAFISCAL
FROM CONTAS C
INNER JOIN TIPOCONTA ON (TIPOCONTA.CD_TIPOCONTA = C.CD_TIPOCONTA)
WHERE C.CD_EMPRESA = :CD_EMPRESA
AND C.CD_PESSOA = :C_CD_PESSOA
AND C.ST_CONTAS IN('T','P')
AND C.TP_CONTAS IN ('S')
AND TIPOCONTA.TP_TIPOCONTA = 'CR' ) CD_EMPRESA C_CD_PESSOA VL_NOTAFISCAL CD_EMPRESA C_CD_PESSOA
Consulta #1
SELECT O_DS_IMPRESSORA
FROM RETORNA_IMPRESSORAUSUARIO({ Nulo(Parametros[1],}I{)}, { Nulo(Parametros[8],}S{)}, { QuotedStr(}N{)}, { QuotedStr(}W{)}, { Nulo(Parametros[3],}S{)}, { Nulo(Parametros[4],}S{)})
Consulta #2
SELECT PARM.ST_GERABOLETO
FROM PARMNOTA PARM
WHERE PARM.CD_EMPRESA = {Parametros[1]}
AND PARM.TP_NOTA = {Nulo(Parametros[3],}S{)}
AND PARM.CD_SERIE = {Nulo(Parametros[4],}S{)}
Consulta #3
SELECT C.NR_NOSSONUMEROAPI {#10}
FROM CONTAS C {#10}
WHERE C.CD_EMPRESA = {nulo(iParametros[1],}I{) +#10}
AND C.NR_LANCTONOTA = {nulo(iParametros[2],}I{) +#10}
AND C.TP_CONTAS = {nulo(iParametros[3],}S{) +#10}
AND C.CD_SERIE ={nulo(iParametros[4],}S{)}
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
CONTAS | referenciada nas queries do layout |
PARMFATUR | referenciada nas queries do layout |
PARMNOTA | referenciada nas queries do layout |
RETORNA_CABECNF | referenciada nas queries do layout |
RETORNA_IMPOSTOSITEMNOTA | referenciada nas queries do layout |
RETORNA_IMPRESSORAUSUARIO | referenciada nas queries do layout |
RETORNA_ITENSNF | referenciada nas queries do layout |
RETORNA_PAGAMENTONOTA | referenciada nas queries do layout |
TIPOCONTA | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
- jFaturamento
Fonte
- Unit:
source/LNF501/ULNF501.pas - DFM:
source/LNF501/ULNF501.dfm - Package:
source/LNF501/LNF501.dpk