LPD029 — Listagem LPD029
Visão Geral
Layout de impressão da família LPD (Pedido). Acionado via ExecLayout a partir das telas que imprimem este tipo de documento.
Descrição
Consulta baseada em HABILITA_PESOQTDE, com junção em ITEMPEDIDO, PESSOA, ENDERECOPESSOA, MUNICIPIO, EMPRESA, CONDPAGTO (+3), filtrada por TP_PEDIDO, JO, CD_EMPRESA, NR_PEDIDO, CD_PESSOA, CD_ENDERECO (+5).
Chamada
ExecLayout(Connection, [
// 0 - Nome do Layout
// 1 - Cod Empresa
// 2 - Nr Pedido
// 3 - Tp Pedido
// 4 - Path Servidor
// 5 - Visualiza -> V ou Imprime -> I
]);
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, coalesce(EE.NR_FONE, EE.NR_FAX) NR_FONEEMP, EE.NR_CEP NR_CEPEMP, N.NR_PEDIDO NR_LANCAMENTO, N.TP_PEDIDO TP_NOTA, N.DT_PEDIDO DT_EMISSAO, N.NR_PEDIDO NR_NOTAFISCAL, cast(N.DT_PEDIDO ||' '|| current_time as timestamp) DT_EMISSAO, N.CD_PESSOA, P.NR_CNPJCPF, EP.NR_CEP, case PF.CD_CONSUMIDOR when N.CD_PESSOA then N.DS_OBSERVACAO else '('||cast(N.CD_PESSOA as varchar(10))||') '||P.NM_PESSOA end NM_PESSOA, 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, EP.NR_INSCEST, coalesce(EP.NR_FONE, EP.NR_FAX) NR_FONE, 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, 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_PEDIDA, IP.PS_PEDIDO) QTDE, IP.QT_PEDIDA QT_ITEMNOTA, IP.PS_PEDIDO PS_ITEMNOTA, (
SELECT V_TIPO
FROM HABILITA_PESOQTDE (IP.CD_ITEM)) TIPO, coalesce(MOT.NM_PESSOA,'') NM_MOTORISTA, (
SELECT max(C.DT_VENCIMENTO)
FROM VIEW_CONTASPEDIDO(N.CD_EMPRESA, N.NR_PEDIDO, N.TP_PEDIDO) C
WHERE C.TP_PEDIDO = N.TP_PEDIDO) DT_VENCIMENTO
FROM PEDIDO N
INNER JOIN ITEMPEDIDO IP on (N.CD_EMPRESA = IP.CD_EMPRESA
AND N.TP_PEDIDO = IP.TP_PEDIDO
AND N.NR_PEDIDO = IP.NR_PEDIDO)
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)
INNER JOIN PARMFATUR PF on (PF.CD_EMPRESA = N.CD_EMPRESA)
LEFT JOIN PESSOA V on (V.CD_PESSOA = N.CD_VENDEDOR)
LEFT JOIN PESSOA MOT on (MOT.CD_PESSOA = N.CD_TRANSPORTADOR)
WHERE N.CD_EMPRESA = :CD_EMPRESA
AND N.NR_PEDIDO = :NR_LANCAMENTO
AND N.TP_PEDIDO = :TP_NOTA CD_EMPRESA 1 NR_LANCAMENTO TP_NOTA
SELECT N.CD_EMPRESA, E.NM_EMPRESA||' - CNPJ.: '||PE.NR_CNPJCPF NM_EMPRESA, N.NR_PEDIDO NR_LANCAMENTO, N.TP_PEDIDO TP_NOTA, N.DT_PEDIDO DT_EMISSAO, N.NR_PEDIDO NR_NOTAFISCAL, '' CD_SERIE, N.DT_PEDIDO DT_EMISSAO, CASE PF.CD_CONSUMIDOR WHEN N.CD_PESSOA THEN N.DS_OBSERVACAO ELSE '('||CAST(N.CD_PESSOA AS VARCHAR(10))||') '||P.NM_PESSOA END NM_PESSOA, N.CD_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, EP.NR_INSCEST, COALESCE(EP.NR_FONE, EP.NR_FAX) NR_FONE, P.NM_FANTASIA DS_OBSERVACAO, T.VL_DOCUMENTO, T.DT_VENCIMENTO, (
SELECT O_VALOR
FROM VALOR_EXTENSO(T.VL_DOCUMENTO)) VL_EXTENSO, (
SELECT O_DS_DATA
FROM DATA_EXTENSO(T.DT_VENCIMENTO)) DT_EXTENSA
FROM PEDIDO N
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 PARMFATUR PF ON (PF.CD_EMPRESA = N.CD_EMPRESA)
LEFT JOIN RETORNA_PARCELAPEDIDO(N.DT_PEDIDO, N.DT_VENCIMENTO, N.DT_ENTREGA, N.CD_CONDPAGTO, (
SELECT SUM(ITP.VL_TOTAL)
FROM ITEMPEDIDO ITP
WHERE ITP.CD_EMPRESA = N.CD_EMPRESA
AND ITP.NR_PEDIDO = N.NR_PEDIDO
AND ITP.TP_PEDIDO = N.TP_PEDIDO)) T ON(1 = 1)
WHERE N.CD_EMPRESA = :CD_EMPRESA
AND N.NR_PEDIDO = :NR_PEDIDO
AND N.TP_PEDIDO = :TP_PEDIDO
ORDER BY T.DT_VENCIMENTO CD_EMPRESA 1 NR_PEDIDO TP_PEDIDO
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
CONDPAGTO | referenciada nas queries do layout |
DATA_EXTENSO | referenciada nas queries do layout |
EMPRESA | referenciada nas queries do layout |
ENDERECOPESSOA | referenciada nas queries do layout |
HABILITA_PESOQTDE | referenciada nas queries do layout |
ITEM | referenciada nas queries do layout |
ITEMPEDIDO | referenciada nas queries do layout |
MUNICIPIO | referenciada nas queries do layout |
PARMFATUR | referenciada nas queries do layout |
PEDIDO | referenciada nas queries do layout |
PESSOA | referenciada nas queries do layout |
RETORNA_PARCELAPEDIDO | referenciada nas queries do layout |
VALOR_EXTENSO | referenciada nas queries do layout |
VIEW_CONTASPEDIDO | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LPD029/ULPD029.pas - DFM:
source/LPD029/ULPD029.dfm - Package:
source/LPD029/LPD029.dpk