LNF206 — Listagem LNF206
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 ITEMNOTA, com junção em VALOR_IMPOSTO, NFSE, PESSOA, EMPRESA, CONFIGNFSE, ENDERECOPESSOA (+6), filtrada por CD_EMPRESA, NR_LANCAMENTO, TP_NOTA, OS, VL, COF (+10).
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
]);
SQL Base
Nota
SELECT RE.O_NR_LINHA, EM.NR_INSCMUNICIPAL, RPE.NR_FONE FONEEMPRESA, N.CD_CONDPAGTO, N.CD_FORMAPAGTO, N.NR_NOTAFISCAL, CP.DS_CONDPAGTO, FP.DS_FORMAPAGTO, /*TOMADOR*/ COALESCE(NF.NR_RPS, NF.NR_LANCAMENTO) NR_RPS , N.DT_EMISSAO DT_RPS, P.NR_CNPJCPF, N.CD_PESSOA, PE.NR_CNPJCPF CNPJTOMADOR, PE.NM_PESSOA NM_TOMADOR, RPE.DS_ENDERECO||' - '||RPE.DS_BAIRRO||' - '||MC.DS_MUNICIPIO||'\'||MC.SG_ESTADO ENDERECOTOMADOR, PE.DS_EMAIL, PE.DS_SITE, (
SELECT SUM(((COALESCE(P.PS_ITEMNOTA, P.QT_ITEMNOTA) * P.VL_UNITARIO)))
FROM ITEMNOTA P
WHERE P.CD_EMPRESA = N.CD_EMPRESA
AND P.NR_LANCAMENTO = N.NR_LANCAMENTO
AND P.TP_NOTA = N.TP_NOTA) VL_TOTALNOTA, (
SELECT SUM(COALESCE(P.VL_DESCONTO,0))
FROM ITEMNOTA P
WHERE P.CD_EMPRESA = N.CD_EMPRESA
AND P.NR_LANCAMENTO = N.NR_LANCAMENTO
AND P.TP_NOTA = N.TP_NOTA) VL_DESCONTO, /*VIA PRESTADOR*/ P.NR_CNPJCPF CNPJPRESTADOR, P.CD_PESSOA||' - '||P.NM_PESSOA NM_PRESTADOR, EP.NR_FONE NR_FONEPRESTADOR, EP.DS_ENDERECO||COALESCE(' - '||EP.NR_ENDERECO,'')||COALESCE(' - '||EP.DS_BAIRRO,'')||' - '||MP.DS_MUNICIPIO||'/'||MP.SG_ESTADO DS_ENDERECOPRESTADOR, P.DS_EMAIL EMAIL_PRESTADOR, N.CD_EMPRESA, N.NR_LANCAMENTO, N.TP_NOTA, N.CD_SERIE, PV.NM_PESSOA NM_VENDEDOR, N.DS_OBSERVACAO, CN.DS_LOGOTIPO, 'Recebemos de '||PE.NM_PESSOA||' os Serviços Constantes do Recibo Provisório de Serviços Indicados Abaixo: ' DS_RECEBIMENTO, N.VL_CONTABIL, INSS.V_VL_IMPOSTO vlInss, IRRF.V_VL_IMPOSTO vlIrrf, ISS.V_VL_IMPOSTO vlIss, ISS_N.V_VL_IMPOSTO vlIssNaoRetido, (
SELECT sum(PIS.V_VL_IMPOSTO) + Sum(COFINS.V_VL_IMPOSTO) + sum(CSLL.V_VL_IMPOSTO)
FROM VALOR_IMPOSTO(N.CD_EMPRESA, N.NR_LANCAMENTO, N.CD_SERIE, N.TP_NOTA, NULL, 'F' ,'S', 'VI') COFINS
LEFT JOIN VALOR_IMPOSTO(N.CD_EMPRESA, N.NR_LANCAMENTO, N.CD_SERIE, N.TP_NOTA, NULL, 'L' ,'S', 'VI') CSLL on (1=1)
LEFT JOIN VALOR_IMPOSTO(N.CD_EMPRESA, N.NR_LANCAMENTO, N.CD_SERIE, N.TP_NOTA, NULL, 'S' ,'S', 'VI') PIS on (1=1)) PISCOFINS, COALESCE(VE.O_NM_VENDEDORES, PV.NM_PESSOA) O_DS_VENDEDORES, N.ST_NOTA
FROM NOTA N
LEFT JOIN VALOR_IMPOSTO(N.CD_EMPRESA, N.NR_LANCAMENTO, N.CD_SERIE, N.TP_NOTA, NULL, 'N' ,'S', 'VI') INSS on (1=1)
LEFT JOIN VALOR_IMPOSTO(N.CD_EMPRESA, N.NR_LANCAMENTO, N.CD_SERIE, N.TP_NOTA, NULL, 'J' ,'S', 'VI') IRRF on (1=1)
LEFT JOIN VALOR_IMPOSTO(N.CD_EMPRESA, N.NR_LANCAMENTO, N.CD_SERIE, N.TP_NOTA, NULL, 'Q' ,'S', 'VI') ISS on (1=1)
LEFT JOIN VALOR_IMPOSTO(N.CD_EMPRESA, N.NR_LANCAMENTO, N.CD_SERIE, N.TP_NOTA, NULL, 'Q' ,'N', 'VI') ISS_N on (1=1)
INNER JOIN NFSE NF ON (NF.CD_EMPRESA = N.CD_EMPRESA
AND NF.NR_LANCAMENTO = N.NR_LANCAMENTO
AND NF.TP_NOTA = N.TP_NOTA
AND NF.CD_SERIE = N.CD_SERIE)
LEFT JOIN PESSOA PV ON (PV.CD_PESSOA = N.CD_VENDEDOR)
INNER JOIN PESSOA P ON (N.CD_PESSOA = P.CD_PESSOA)
INNER JOIN EMPRESA EM ON (EM.CD_EMPRESA = N.CD_EMPRESA)
INNER JOIN CONFIGNFSE CN ON (CN.CD_EMPRESA = EM.CD_EMPRESA)
INNER JOIN PESSOA PE ON (PE.CD_PESSOA = EM.CD_PESSOA)
LEFT JOIN ENDERECOPESSOA RPE ON (RPE.CD_PESSOA = PE.CD_PESSOA
AND RPE.CD_ENDERECO = (
SELECT O_CD_ENDERECO
FROM RETORNA_ENDERECO(PE.CD_PESSOA, NULL)))
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)
LEFT JOIN MUNICIPIO MC ON (RPE.CD_MUNICIPIO = MC.CD_MUNICIPIO)
LEFT JOIN RETORNA_LINHAS(1) RE ON (1=1)
INNER JOIN FORMAPAGTO FP ON (FP.CD_FORMAPAGTO = N.CD_FORMAPAGTO)
INNER JOIN CONDPAGTO CP ON (CP.CD_CONDPAGTO = N.CD_CONDPAGTO)
LEFT JOIN RETORNA_VENDEDORESNOTA(N.CD_EMPRESA, N.NR_LANCAMENTO, N.CD_SERIE, N.TP_NOTA) VE ON (1=1)
WHERE N.CD_EMPRESA = :CD_EMPRESA
AND N.NR_LANCAMENTO = :NR_LANCAMENTO
AND N.TP_NOTA = :TP_NOTA
AND N.CD_SERIE = :CD_SERIE CD_EMPRESA NR_LANCAMENTO TP_NOTA CD_SERIE
SELECT R.O_DS_PRODUTO DS_PRODUTO, R.O_QTDE QTDE, R.O_VL_UNITARIO VL_UNITARIO, R.O_VL_LIQUIDO VL_LIQUIDO, R.O_DS_ITEM DS_ITEM, R.O_VL_TOT_UNIT VL_TOT_UNIT, R.O_VL_DESCONTO VL_DESCONTO, R.O_NRSERIE NRSERIE, R.O_DSDESENHO DSDESENHO, R.O_MARCAPNEUS MARCAPNEUS, R.O_NRFOGO NRFOGO, R.O_IDORDEMPRODUCAORECAP IDORDEMPRODUCAORECAP, R.O_DS_SERVICO DS_SERVICO, R.O_NR_LINHA O_NR_LINHA
FROM VIEW_LNF206 (:CD_EMPRESA,:NR_LANCAMENTO,:TP_NOTA,:CD_SERIE) R CD_EMPRESA NR_LANCAMENTO TP_NOTA CD_SERIE
SELECT V_NR_LANCAMENTO, V_NR_DOCUMENTO, V_NR_PARCELA, V_VL_DOCUMENTO, V_DT_VENCIMENTO
FROM RETORNA_CONTAS (:CD_EMPRESA, :NR_LANCAMENTO, :CD_SERIE, :TP_NOTA, :CD_PESSOA, 12, '1') CD_EMPRESA NR_LANCAMENTO CD_SERIE TP_NOTA CD_PESSOA
SELECT SUM(COALESCE(PN.VL_PARCELA,N.VL_NOTAFISCAL)) VL_PARCELA, FP.DS_FORMAPAGTO
FROM NOTA N
LEFT JOIN PARCELANOTA PN ON(PN.CD_EMPRESA = N.CD_EMPRESA
AND PN.NR_LANCAMENTO = N.NR_LANCAMENTO
AND PN.TP_NOTA = N.TP_NOTA
AND PN.CD_SERIE = N.CD_SERIE)
LEFT JOIN FORMAPAGTO FP ON (FP.CD_FORMAPAGTO = COALESCE(PN.CD_FORMAPAGTO,N.CD_FORMAPAGTO))
WHERE N.CD_EMPRESA = :CD_EMPRESA
AND N.NR_LANCAMENTO = :NR_LANCAMENTO
AND N.TP_NOTA = :TP_NOTA
AND N.CD_SERIE = :CD_SERIE
GROUP BY PN.CD_FORMAPAGTO , FP.DS_FORMAPAGTO CD_EMPRESA NR_LANCAMENTO TP_NOTA CD_SERIE
Consulta #1
SELECT N.ST_NOTA {#10}
FROM NOTA N {#10}
WHERE N.CD_EMPRESA = {iParametros[1]+#10}
AND N.NR_LANCAMENTO = {iParametros[2]+#10}
AND N.CD_SERIE = {Nulo(iParametros[4],}S{)+#10}
AND N.TP_NOTA = {Nulo(iParametros[3],}S{)}
Consulta #2
SELECT PARM.ST_GERABOLETO
FROM PARMNOTA PARM
WHERE PARM.CD_EMPRESA = {iParametros[1]}
AND PARM.TP_NOTA = {Nulo(iParametros[3],}S{)}
AND PARM.CD_SERIE = {Nulo(iParametros[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 |
|---|---|
CONDPAGTO | referenciada nas queries do layout |
CONFIGNFSE | 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 |
ITEMNOTA | referenciada nas queries do layout |
MUNICIPIO | referenciada nas queries do layout |
NFSE | referenciada nas queries do layout |
NOTA | referenciada nas queries do layout |
PARCELANOTA | referenciada nas queries do layout |
PARMNOTA | referenciada nas queries do layout |
PESSOA | referenciada nas queries do layout |
RETORNA_CONTAS | referenciada nas queries do layout |
RETORNA_ENDERECO | referenciada nas queries do layout |
RETORNA_LINHAS | referenciada nas queries do layout |
RETORNA_VENDEDORESNOTA | referenciada nas queries do layout |
VALOR_IMPOSTO | referenciada nas queries do layout |
| [[VIEW_LNF206]] | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LNF206/ULNF206.pas - DFM:
source/LNF206/ULNF206.dfm - Package:
source/LNF206/LNF206.dpk