LPD128 — Listagem LPD128
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 PEDIDO, com junção em ITEMPEDIDO, ITEM, ITEMTABPRECO, PESSOA, ENDERECOPESSOA, MUNICIPIO (+7), filtrada por CD_PESSOA, JO, CD_MUNICIPIO, CD_CONDPAGTO, CD_EMPRESA, CD_FORMAPAGTO (+10).
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
// 6 - Usuario
// 7 - Modelo: Pedido/Orçamento -> 1 ou Romaneio produção -> 2
]);
SQL Base
tabPEDIDO
SELECT /*Dados do Pedido*/ N.CD_EMPRESA, E.NM_EMPRESA, LPAD(N.NR_PEDIDO,7,'0') CODBARRA, N.ST_PEDIDO, N.NR_PEDIDO, N.TP_PEDIDO, N.DT_PEDIDO, N.DT_ENTREGA, N.CD_PESSOA, P.NM_PESSOA||COALESCE(' - '||P.NM_FANTASIA,'')||' - '||P.CD_PESSOA NM_PESSOA, P.NR_CNPJCPF, EP.NR_CEP, N.CD_CONDPAGTO, N.DT_VENCIMENTO, N.CD_VENDEDOR, V.NM_PESSOA||' - '||N.CD_VENDEDOR NM_VENDEDOR, N.CD_FORMAPAGTO, F.DS_FORMAPAGTO, TRA.NM_PESSOA NM_TRANSPORTADOR, CASE N.CD_FORMAPAGTO WHEN 'DB' THEN 'BANCO DO BRASIL, Agência: 587-8, Conta: 26430-X' END DS_CONTABANCARIA, MP.DS_MUNICIPIO DS_MUNIC, MP.SG_ESTADO, RED.NM_PESSOA NM_REDESPACHANTE, CASE WHEN N.TP_PEDIDO = 'S' THEN COALESCE(N.DS_OBSERVACAO,'')||COALESCE(' '||PARM.DS_MSGPEDIDO,'') WHEN N.TP_PEDIDO = 'O' THEN COALESCE(N.DS_OBSERVACAO,'')||COALESCE(' '||PARM.DS_MSGORCAMENTO,'') END DS_OBSERVACAO, N.QT_DIASVALIDADE, CASE WHEN N.QT_DIASVALIDADE IS NOT NULL THEN CASE WHEN N.TP_PEDIDO = 'S' THEN 'Este Pedido é Válido por '||N.QT_DIASVALIDADE||' Dias.' WHEN N.TP_PEDIDO = 'O' THEN 'Este Orçamento é Válido por '||N.QT_DIASVALIDADE||' Dias.' END ELSE NULL END DS_VALIDADE, N.DS_OBSALTERACAO, 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, 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, C.DS_CONDPAGTO, /*Dados Dos Produtos*/ COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA) PS_PEDIDO, I.SG_UNIDMED, IP.CD_ITEM, I.DS_ITEM, I.NR_NCM, IP.VL_UNITARIO, COALESCE(ITP.VL_PRECO, (IP.VL_TOTAL - COALESCE(IP.VL_DESCONTO,0)) / COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA)) VL_UNITARIOTABELA, COALESCE(IP.VL_DESCONTO,0) VL_DESCONTO, COALESCE(COALESCE(IP.VL_DESCONTO,0) / COALESCE(NULLIF(IP.PS_PEDIDO,0), IP.QT_PEDIDA),0) VL_DESCUNIT, IP.VL_TOTAL, CI.V_VL_IPI, CI.V_VL_IPI / COALESCE(NULLIF(IP.PS_PEDIDO,0), IP.QT_PEDIDA) VL_IPIUNIT, CI.V_VL_SUBSTITUICAO, CI.V_VL_SUBSTITUICAO / COALESCE(NULLIF(IP.PS_PEDIDO,0), IP.QT_PEDIDA) VL_STUNIT, CAST( ((IP.VL_TOTAL + COALESCE(CI.V_VL_SUBSTITUICAO ,0) + COALESCE(CI.V_VL_IPI ,0) - COALESCE(IP.VL_DESCONTO,0)) / COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA)) AS DOM_NUMERIC15_4) VL_UNITARIOCOMIMPOSTO, CAST( (IP.VL_TOTAL + COALESCE(CI.V_VL_SUBSTITUICAO ,0) + COALESCE(CI.V_VL_IPI ,0) + COALESCE(IP.VL_DESPESA,0) - COALESCE(IP.VL_DESCONTO,0)) AS DOM_NUMERIC15_4) VL_LIQUIDO, ((COALESCE(IP.VL_DESCONTO,0) * 100.00) / COALESCE(NULLIF(IP.VL_TOTAL,0),1)) PC_DESC_ITEM, (COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA) * COALESCE(I.PS_LIQUIDOEMB,1)) PS_LIQUIDO, (COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA) * (COALESCE(I.PS_LIQUIDOEMB,1) + COALESCE(I.PS_EMBALAGEM,0))) PS_BRUTO, CAST((COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA) * (I.QT_VOLUME)) AS DOM_NUMERIC15_4) QT_VOLUME, COALESCE(CAST(NULL AS DOM_NUMERIC15_2),0) VL_FATOR, COALESCE(CAST(NULL AS DOM_NUMERIC3_2),0) PC_FATOR, IP.VL_DESPESA, COALESCE(IP.PC_COMISSAO, 0) PC_COMISSAO, COALESCE(IP.DS_OBSERVACAO, '') DS_OBSMASTER, CASE N.TP_PEDIDO WHEN 'O' THEN 'Orçamento ' ELSE 'Pedido ' END || N.NR_PEDIDO DS_PEDIDO, VENC.O_DS_VENCIMENTO
FROM PEDIDO N
INNER JOIN ITEMPEDIDO IP ON (N.NR_PEDIDO = IP.NR_PEDIDO
AND N.CD_EMPRESA = IP.CD_EMPRESA
AND N.TP_PEDIDO = IP.TP_PEDIDO)
INNER JOIN ITEM I ON (IP.CD_ITEM = I.CD_ITEM)
LEFT JOIN ITEMTABPRECO ITP ON (ITP.CD_TABPRECO = IP.CD_TABPRECO
AND ITP.CD_ITEM = IP.CD_ITEM)
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 PARMFATUR PARM ON (PARM.CD_EMPRESA = N.CD_EMPRESA)
LEFT JOIN PESSOA V ON (V.CD_PESSOA = N.CD_VENDEDOR)
LEFT JOIN FORMAPAGTO F ON (F.CD_FORMAPAGTO = N.CD_FORMAPAGTO)
LEFT JOIN PESSOA TRA ON (TRA.CD_PESSOA = N.CD_TRANSPORTADOR)
LEFT JOIN PESSOA RED ON (RED.CD_PESSOA = N.CD_REDESPACHO)
LEFT JOIN CALCULA_IMPOSTOPEDIDOLPD128(N.CD_EMPRESA, N.NR_PEDIDO, N.TP_PEDIDO, IP.CD_ITEM, ME.SG_ESTADO, N.CD_EMPRESA, NULL, NULL) CI ON (1 = 1)
LEFT JOIN RETORNA_VENCIMENTOS(N.CD_EMPRESA, N.NR_PEDIDO, N.TP_PEDIDO, N.CD_CONDPAGTO, N.DT_PEDIDO, N.DT_VENCIMENTO) VENC ON (1 = 1)
WHERE N.CD_EMPRESA = :CD_EMPRESA
AND N.NR_PEDIDO = :NR_PEDIDO
AND N.TP_PEDIDO = :TP_PEDIDO CD_EMPRESA NR_PEDIDO TP_PEDIDO
SELECT /*Dados do Pedido*/ N.CD_EMPRESA, E.NM_EMPRESA, LPAD(N.NR_PEDIDO,7,'0') CODBARRA, N.ST_PEDIDO, N.NR_PEDIDO, N.TP_PEDIDO, N.DT_PEDIDO, N.DT_ENTREGA, N.CD_PESSOA, P.NM_PESSOA||COALESCE(' - '||P.NM_FANTASIA,'')||' - '||P.CD_PESSOA NM_PESSOA, P.NR_CNPJCPF, EP.NR_CEP, N.CD_CONDPAGTO, N.DT_VENCIMENTO, N.CD_VENDEDOR, V.NM_PESSOA||' - '||N.CD_VENDEDOR NM_VENDEDOR, N.CD_FORMAPAGTO, F.DS_FORMAPAGTO, TRA.NM_PESSOA NM_TRANSPORTADOR, CASE N.CD_FORMAPAGTO WHEN 'DB' THEN 'BANCO DO BRASIL, Agência: 587-8, Conta: 26430-X' END DS_CONTABANCARIA, MP.DS_MUNICIPIO DS_MUNIC, MP.SG_ESTADO, RED.NM_PESSOA NM_REDESPACHANTE, CASE WHEN N.TP_PEDIDO = 'S' THEN COALESCE(N.DS_OBSERVACAO,'')||COALESCE(' '||PARM.DS_MSGPEDIDO,'') WHEN N.TP_PEDIDO = 'O' THEN COALESCE(N.DS_OBSERVACAO,'')||COALESCE(' '||PARM.DS_MSGORCAMENTO,'') END DS_OBSERVACAO, N.QT_DIASVALIDADE, CASE WHEN N.QT_DIASVALIDADE IS NOT NULL THEN CASE WHEN N.TP_PEDIDO = 'S' THEN 'Este Pedido é Válido por '||N.QT_DIASVALIDADE||' Dias.' WHEN N.TP_PEDIDO = 'O' THEN 'Este Orçamento é Válido por '||N.QT_DIASVALIDADE||' Dias.' END ELSE NULL END DS_VALIDADE, N.DS_OBSALTERACAO, 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, 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, C.DS_CONDPAGTO, /*Dados Dos Produtos*/ COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA) PS_PEDIDO, I.SG_UNIDMED, IP.CD_ITEM, I.DS_ITEM, I.NR_NCM, IP.VL_UNITARIO, COALESCE(ITP.VL_PRECO, (IP.VL_TOTAL - COALESCE(IP.VL_DESCONTO,0)) / COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA)) VL_UNITARIOTABELA, COALESCE(IP.VL_DESCONTO,0) VL_DESCONTO, COALESCE(COALESCE(IP.VL_DESCONTO,0) / COALESCE(NULLIF(IP.PS_PEDIDO,0), IP.QT_PEDIDA),0) VL_DESCUNIT, IP.VL_TOTAL, CI.V_VL_IPI, CI.V_VL_IPI / COALESCE(NULLIF(IP.PS_PEDIDO,0), IP.QT_PEDIDA) VL_IPIUNIT, CI.V_VL_SUBSTITUICAO, CI.V_VL_SUBSTITUICAO / COALESCE(NULLIF(IP.PS_PEDIDO,0), IP.QT_PEDIDA) VL_STUNIT, CAST( ((IP.VL_TOTAL + COALESCE(CI.V_VL_SUBSTITUICAO ,0) + COALESCE(CI.V_VL_IPI ,0) - COALESCE(IP.VL_DESCONTO,0)) / COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA)) AS DOM_NUMERIC15_4) VL_UNITARIOCOMIMPOSTO, CAST( (IP.VL_TOTAL + COALESCE(CI.V_VL_SUBSTITUICAO ,0) + COALESCE(CI.V_VL_IPI ,0) + COALESCE(IP.VL_DESPESA,0) - COALESCE(IP.VL_DESCONTO,0)) AS DOM_NUMERIC15_4) VL_LIQUIDO, ((COALESCE(IP.VL_DESCONTO,0) * 100.00) / COALESCE(NULLIF(IP.VL_TOTAL,0),1)) PC_DESC_ITEM, (COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA) * COALESCE(I.PS_LIQUIDOEMB,1)) PS_LIQUIDO, (COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA) * (COALESCE(I.PS_LIQUIDOEMB,1) + COALESCE(I.PS_EMBALAGEM,0))) PS_BRUTO, CAST((COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA) * (I.QT_VOLUME)) AS DOM_NUMERIC15_4) QT_VOLUME, COALESCE(CAST(NULL AS DOM_NUMERIC15_2),0) VL_FATOR, COALESCE(CAST(NULL AS DOM_NUMERIC3_2),0) PC_FATOR, IP.VL_DESPESA, COALESCE(IP.PC_COMISSAO, 0) PC_COMISSAO, COALESCE(IP.DS_OBSERVACAO, '') DS_OBSMASTER, CASE N.TP_PEDIDO WHEN 'O' THEN 'Orçamento ' ELSE 'Pedido ' END || N.NR_PEDIDO DS_PEDIDO, VENC.O_DS_VENCIMENTO
FROM PEDIDO N
INNER JOIN ITEMPEDIDO IP ON (N.NR_PEDIDO = IP.NR_PEDIDO
AND N.CD_EMPRESA = IP.CD_EMPRESA
AND N.TP_PEDIDO = IP.TP_PEDIDO)
INNER JOIN ITEM I ON (IP.CD_ITEM = I.CD_ITEM)
LEFT JOIN ITEMTABPRECO ITP ON (ITP.CD_TABPRECO = IP.CD_TABPRECO
AND ITP.CD_ITEM = IP.CD_ITEM)
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 PARMFATUR PARM ON (PARM.CD_EMPRESA = N.CD_EMPRESA)
LEFT JOIN PESSOA V ON (V.CD_PESSOA = N.CD_VENDEDOR)
LEFT JOIN FORMAPAGTO F ON (F.CD_FORMAPAGTO = N.CD_FORMAPAGTO)
LEFT JOIN PESSOA TRA ON (TRA.CD_PESSOA = N.CD_TRANSPORTADOR)
LEFT JOIN PESSOA RED ON (RED.CD_PESSOA = N.CD_REDESPACHO)
LEFT JOIN CALCULA_IMPOSTOPEDIDOLPD128(N.CD_EMPRESA, N.NR_PEDIDO, N.TP_PEDIDO, IP.CD_ITEM, ME.SG_ESTADO, N.CD_EMPRESA, :V_PC_FATOR, :V_VL_FATOR) CI ON (1 = 1)
LEFT JOIN RETORNA_VENCIMENTOS(N.CD_EMPRESA, N.NR_PEDIDO, N.TP_PEDIDO, N.CD_CONDPAGTO, N.DT_PEDIDO, N.DT_VENCIMENTO) VENC ON (1 = 1)
WHERE N.CD_EMPRESA = :CD_EMPRESA
AND N.NR_PEDIDO = :NR_PEDIDO
AND N.TP_PEDIDO = :TP_PEDIDO V_PC_FATOR V_VL_FATOR CD_EMPRESA NR_PEDIDO TP_PEDIDO
SELECT CAST(NULL AS DOM_NUMERIC15_2)VL_FATOR, CAST(NULL AS DOM_NUMERIC3_2)PC_FATOR
FROM EMPRESA E
WHERE E.CD_EMPRESA = -1 VL_FATOR PC_FATOR q q q
SELECT I.NR_NCM, CI.V_VL_SUBSTITUICAO, N.ST_PEDIDO, N.CD_EMPRESA, E.NM_EMPRESA, LPAD(N.NR_PEDIDO,7,'0') CODBARRA, 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, N.TP_PEDIDO, N.DT_PEDIDO, N.DT_ENTREGA, N.CD_PESSOA, P.NM_PESSOA||COALESCE(' - '||P.NM_FANTASIA,'')||' - '||P.CD_PESSOA NM_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, C.DS_CONDPAGTO, N.CD_CONDPAGTO, N.DT_VENCIMENTO, N.CD_VENDEDOR, V.NM_PESSOA||' - '||N.CD_VENDEDOR NM_VENDEDOR, N.CD_FORMAPAGTO, F.DS_FORMAPAGTO, TRA.NM_PESSOA NM_TRANSPORTADOR, CASE N.CD_FORMAPAGTO WHEN 'DB' THEN 'BANCO DO BRASIL, Agência: 587-8, Conta: 26430-X' END DS_CONTABANCARIA, MP.DS_MUNICIPIO DS_MUNIC, MP.SG_ESTADO, RED.NM_PESSOA NM_REDESPACHANTE, IP.CD_ITEM, I.DS_ITEM, COALESCE( IP.QT_CAIXAMASTER||' Caixa(s) com '||CAST(I.PS_MINIMO AS INTEGER)||' unidades'||' - '|| I.NR_CAIXAMASTER||' - '|| (
SELECT CEM.DS_CAIXA|| CEM.QT_COMPRIMENTO||'x'||CEM.QT_LARGURA||'x'||CEM.QT_ALTURA
FROM CAIXAEMBARQUE CEM
WHERE CEM.NR_CAIXA = I.NR_CAIXAMASTER)||' ', '')||COALESCE(IP.DS_OBSERVACAO,'') DS_OBSITEM, IP.VL_DESCONTO, IP.VL_TOTAL - COALESCE(IP.VL_DESCONTO,0) VL_TOTAL, IP.VL_TOTAL VL_TOTALBRUTO, (IP.VL_TOTAL - COALESCE(IP.VL_DESCONTO,0)) / COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA) VL_UNITARIO, COALESCE(I.CD_FORNECEDOR1, I.CD_FORNECEDOR2) CD_FORNECEDOR, IP.VL_TOTAL - COALESCE(IP.VL_DESCONTO,0) + COALESCE(IP.VL_DESPESA,0) + COALESCE(CI.V_VL_SUBSTITUICAO,0) + COALESCE(CI.V_VL_IPI,0) VL_LIQUIDO, IP.VL_TOTAL - COALESCE(IP.VL_DESCONTO,0) + COALESCE(CI.V_VL_SUBSTITUICAO,0) + COALESCE(CI.V_VL_IPI,0) VL_LIQUIDO_SEM_DESP, COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA) PS_PEDIDO, I.SG_UNIDMED, CAST((COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA) * (I.QT_ALTURA * I.QT_LARGURA * I.QT_COMPRIMENTO)) AS DOM_NUMERIC15_4) QT_VOLUME, (COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA) * COALESCE(I.PS_LIQUIDOEMB,1)) PS_LIQUIDO, (COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA) * (COALESCE(I.PS_LIQUIDOEMB,1) + COALESCE(I.PS_EMBALAGEM,0))) PS_BRUTO, IP.VL_DESPESA, CASE WHEN N.TP_PEDIDO = 'S' THEN COALESCE(N.DS_OBSERVACAO,'')||COALESCE(' '||PARM.DS_MSGPEDIDO,'') WHEN N.TP_PEDIDO = 'O' THEN COALESCE(N.DS_OBSERVACAO,'')||COALESCE(' '||PARM.DS_MSGORCAMENTO,'') END DS_OBSERVACAO, CI.V_VL_IPI, n.QT_DIASVALIDADE, CASE WHEN N.QT_DIASVALIDADE IS NOT NULL THEN CASE WHEN N.TP_PEDIDO = 'S' THEN 'Este Pedido é Válido por '||N.QT_DIASVALIDADE||' Dias.' WHEN N.TP_PEDIDO = 'O' THEN 'Este Orçamento é Válido por '||N.QT_DIASVALIDADE||' Dias.' END ELSE NULL END DS_VALIDADE, ((COALESCE(IP.VL_DESCONTO,0) * 100.00) / IP.VL_TOTAL) PC_DESC_ITEM, N.DS_OBSALTERACAO, IP.VL_UNITARIO VL_UNITARIOBRUTO, (IP.VL_DESCONTO / COALESCE(IP.PS_PEDIDO, IP.QT_PEDIDA)) VL_DESCBRUTO, NULLIF(COALESCE( CASE WHEN I.NR_CAIXAMASTER IS NOT NULL THEN IP.QT_CAIXAMASTER||' Caixa(s) com '||CAST(I.PS_MINIMO AS INTEGER)||' unidades' ELSE '' END, '')||' '||IP.DS_OBSERVACAO, '') DS_OBSMASTER, COALESCE(CAST(NULL AS DOM_NUMERIC15_2),0) VL_FATOR, COALESCE(CAST(NULL AS DOM_NUMERIC3_2),0) PC_FATOR
FROM PEDIDO N
INNER JOIN ITEMPEDIDO IP ON (N.NR_PEDIDO = IP.NR_PEDIDO
AND N.CD_EMPRESA = IP.CD_EMPRESA
AND N.TP_PEDIDO = IP.TP_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)
LEFT JOIN CALCULA_IMPOSTOPEDIDO(N.CD_EMPRESA, N.NR_PEDIDO, N.TP_PEDIDO, IP.CD_ITEM, ME.SG_ESTADO, N.CD_EMPRESA) CI ON (1 = 1)
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 PARM ON (PARM.CD_EMPRESA = N.CD_EMPRESA)
LEFT JOIN PESSOA V ON (V.CD_PESSOA = N.CD_VENDEDOR)
LEFT JOIN FORMAPAGTO F ON (F.CD_FORMAPAGTO = N.CD_FORMAPAGTO)
LEFT JOIN PESSOA TRA ON (TRA.CD_PESSOA = N.CD_TRANSPORTADOR)
LEFT JOIN PESSOA RED ON (RED.CD_PESSOA = N.CD_REDESPACHO)
WHERE N.CD_EMPRESA = :CD_EMPRESA
AND N.NR_PEDIDO = :NR_PEDIDO
AND N.TP_PEDIDO = :TP_PEDIDO
Consulta #1
SELECT S.CD_MODULO {#10}
FROM SESSAO S {#10}
WHERE S.NR_CONEXAO = CURRENT_CONNECTION
Consulta #2
SELECT {#10} P.CD_MOVIMENTACAOPED, P.CD_CONDPAGTOPED, P.CD_FORMAPAGTOPED, {#10} P.CD_TIPOPEDIDO, P.CD_ITEMSTPED, P.CD_MOVSTPED, P.ST_SOLICITAFATOR, P.ST_IMPOSTOPEDIDO {#10}
FROM PARMFATUR P {#10}
WHERE P.CD_EMPRESA = {IntToStr(sessao.empresa.cd_Empresa)}
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
CAIXAEMBARQUE | referenciada nas queries do layout |
CALCULA_IMPOSTOPEDIDO | referenciada nas queries do layout |
| [[CALCULA_IMPOSTOPEDIDOLPD128]] | referenciada nas queries do layout |
CONDPAGTO | 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 |
ITEMPEDIDO | referenciada nas queries do layout |
ITEMTABPRECO | 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_VENCIMENTOS | referenciada nas queries do layout |
SESSAO | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LPD128/ULPD128.pas - DFM:
source/LPD128/ULPD128.dfm - Package:
source/LPD128/LPD128.dpk