LNF200 — Listagem LNF200
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 (+7), filtrada por CD_EMPRESA, NR_LANCAMENTO, TP_NOTA, OS, VL, COF (+13).
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 DISTINCT RE.O_NR_LINHA, EM.NR_INSCMUNICIPAL, RPE.NR_FONE FONEEMPRESA, N.CD_CONDPAGTO, N.CD_FORMAPAGTO, CP.DS_CONDPAGTO, FP.DS_FORMAPAGTO, /*TOMADOR*/ COALESCE(NF.NR_RPS, NF.NR_LANCAMENTO) NR_RPS , N.DT_EMISSAO DT_RPS, N.NR_NOTAFISCAL, 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_OBSNOTA 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, (
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( NULLIF(TRIM(RNV.O_NM_VENDEDORES), ''), PV.NM_PESSOA) NM_VENDEDORES, N.NR_PLACARECAP, N.NR_SERIERECAP, N.DS_VEICULORECAP, N.KM_ATUALRECAP, NF.CD_AUTENTICACAO
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)
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(:QT_LINHAS) 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) RNV 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 QT_LINHAS CD_EMPRESA NR_LANCAMENTO TP_NOTA CD_SERIE
SELECT DISTINCT SA.O_CD_ITEM, SA.O_DS_ITEM, SA.O_QTDE, --CAST(1 AS DOM_NUMERIC15_3) O_QTDE, SA.O_VL_UNITARIO, SA.O_VL_TOTAL, COALESCE(SA.O_VL_DESCONTO,0) O_VL_DESCONTO, COALESCE(SA.O_VL_DESPESA,0) O_VL_DESPESA, SA.O_VL_LIQUIDO, SA.O_DS_OBSITEM, SA.O_NR_SERIE, SA.O_DS_DESENHO, SA.O_DS_MARCAPNEU, SA.O_NR_FOGO, SA.O_NR_DOT, SA.O_ID_ORDEMPROD, SA.O_NR_LINHAS, SA.O_CD_ITEM||' - '||SA.O_DS_ITEM DS_ITEM, SA.O_QT_PNEU, 1 O_NR_LINHA, --RL.O_NR_LINHA, SA.O_NR_ORDERBY, COALESCE(SA.O_NR_DOT,'')||COALESCE(SA.O_NR_SERIE, '')||COALESCE(SA.O_DS_MARCAPNEU, '')||COALESCE(SA.O_ID_ORDEMPROD, '') DS_QUEBRA
FROM NOTA N
LEFT JOIN RETORNA_SERVICONOTA(N.CD_EMPRESA, N.NR_LANCAMENTO, N.TP_NOTA, N.CD_SERIE,'5') SA ON (1=1)
INNER JOIN ITEM I ON (I.CD_ITEM = SA.O_CD_ITEM) --
LEFT JOIN RETORNA_LINHAS(SA.O_QTDE) RL 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 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
Produto
{frmLNF200}
Consulta #1
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 #2
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 |
ITEM | 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 |
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_SERVICONOTA | referenciada nas queries do layout |
RETORNA_VENDEDORESNOTA | referenciada nas queries do layout |
VALOR_IMPOSTO | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LNF200/ULNF200.pas - DFM:
source/LNF200/ULNF200.dfm - Package:
source/LNF200/LNF200.dpk