Pular para o conteúdo principal

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​

TabelaUso
CONTASreferenciada nas queries do layout
PARMFATURreferenciada nas queries do layout
PARMNOTAreferenciada nas queries do layout
RETORNA_CABECNFreferenciada nas queries do layout
RETORNA_IMPOSTOSITEMNOTAreferenciada nas queries do layout
RETORNA_IMPRESSORAUSUARIOreferenciada nas queries do layout
RETORNA_ITENSNFreferenciada nas queries do layout
RETORNA_PAGAMENTONOTAreferenciada nas queries do layout
TIPOCONTAreferenciada 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