LOR021 — Layout LOR021
Visão Geral
Layout de impressão da família LOR (Ordem de Serviço). Acionado via ExecLayout a partir das telas que imprimem este tipo de documento.
Descrição
Consulta baseada em HABILITA_PESOQTDE, com junção em PESSOA, ENDERECOPESSOA, FORMAPAGTO, MAQUINAORCAMENTO, MUNICIPIO, EMPRESA (+6), filtrada por CD_PESSOA, JO, CD_MUNICIPIO, CD_CONDPAGTO, CD_ITEM, CD_TIPOCALCULO (+4).
Chamada
ExecLayout(Connection, [
// 0 - Nome do Layout
// 1 - Cod Empresa
// 2 - Nr Orcamento
// 3 - Path Servidor
// 4 - Visualiza -> V ou Imprime -> I
]);
SQL Base
Orcamento
SELECT O.CD_EMPRESA, E.NM_EMPRESA, PE.NR_CNPJCPF NR_CNPJCPFEMP, EE.NR_INSCEST NR_INSCESTEMP, 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, PE.DS_SITE DS_SITEEMP, PE.DS_EMAIL DS_EMAILEMP, EE.NR_FONE NR_FONEEMP, EE.NR_FAX NR_FAXEMP, EE.NR_CEP NR_CEPEMP, O.NR_ORCAMENTO, O.TP_ORCAMENTO, O.DT_ORCAMENTO, O.DT_ENTREGA, O.NR_DIASENTREGA, O.CD_PESSOA, P.NM_PESSOA||COALESCE(' - '||P.NM_FANTASIA,'')||' [ '||P.CD_PESSOA||' ]' NM_PESSOA, P.NR_CNPJCPF, EP.NR_CEP, CASE O.TP_PAGTOFRETE WHEN '1' THEN 'CIF' WHEN '2' THEN 'FOB' END TP_PAGTOFRETE, 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, EP.NR_FONE, EP.NR_FAX, P.DS_EMAIL, CASE C.ST_CONDPAGTO WHEN 'D' THEN 'Vencto.: '||FORMATA_DATA(O.DT_VENCIMENTO,'%d/%m/%Y') ELSE C.DS_CONDPAGTO END DS_CONDPAGTO, O.CD_CONDPAGTO, O.DT_VENCIMENTO, O.CD_VENDEDOR, COALESCE(V.NM_FANTASIA,V.NM_PESSOA)||COALESCE(' FONE: '||EV.NR_FONE,'')||' - '||O.CD_VENDEDOR NM_VENDEDOR, COALESCE(V.NM_FANTASIA,V.NM_PESSOA)||' - '||O.CD_VENDEDOR NM_VEND, O.CD_FORMAPAGTO, F.DS_FORMAPAGTO, MP.DS_MUNICIPIO DS_MUNIC, MP.SG_ESTADO, MO.CD_ITEM,MO.DS_MAQUINA ||' - '|| MA.DS_MARCA DS_ITEM, I.SG_UNIDMED, MO.VL_UNITARIO, MO.VL_DESCONTO, MO.VL_TOTAL,REPLACE(REPLACE(MO.DS_ESPECIFICACAO,ASCII_CHAR(13),' '),ASCII_CHAR(10),' ') DS_OBSITEM, MO.VL_TOTAL - COALESCE(MO.VL_DESCONTO,0) VL_LIQUIDO, CASE (
SELECT V_TIPO
FROM HABILITA_PESOQTDE (MO.CD_ITEM)) WHEN 'Q' THEN MO.QT_MAQUINA ELSE MO.PS_MAQUINA END QTDE, MO.QT_MAQUINA, MO.PS_MAQUINA, COALESCE(O.DS_OBSERVACAO,'')||COALESCE(' '||PARM.DS_MSGORCAMENTO,'') DS_OBSERVACAO, PS.NM_PESSOA NM_PRESTSERV, COALESCE(COALESCE(EV.NR_FONE,EV.NR_CELULAR),EV.NR_FAX) NR_FONEVEND, DATEADD(DAY,O.NR_DIASENTREGA,O.DT_ORCAMENTO) DT_VALIDADE,O.DS_CONTATO, O.CD_ENDCOBRANCA, O.CD_ENDENTREGA, EC.DS_ENDERECO||COALESCE(', '||EC.NR_ENDERECO,' ') DS_ENDCOBRANCA, EN.DS_ENDERECO||COALESCE(', '||EN.NR_ENDERECO,' ') DS_ENDENTREGA, O.ST_ORCAMENTO, CAST(MO.VL_UNITARIO - (COALESCE(MO.VL_DESCONTO,0) / (CASE TC.TP_UNIDADE WHEN 'Q' THEN MO.QT_MAQUINA ELSE MO.PS_MAQUINA END)) AS DOM_NUMERIC15_2) VL_LIQUIDOUNITARIO
FROM ORCAMENTO O
LEFT JOIN PESSOA V ON (V.CD_PESSOA = O.CD_VENDEDOR)
LEFT JOIN ENDERECOPESSOA EV ON (EV.CD_PESSOA = V.CD_PESSOA
AND EV.CD_ENDERECO = (
SELECT O_CD_ENDERECO
FROM RETORNA_ENDERECO(V.CD_PESSOA, NULL)))
LEFT JOIN FORMAPAGTO F ON (F.CD_FORMAPAGTO = O.CD_FORMAPAGTO)
LEFT JOIN PESSOA PS ON (PS.CD_PESSOA = O.CD_TERCEIRO)
INNER JOIN MAQUINAORCAMENTO MO ON (MO.NR_ORCAMENTO = O.NR_ORCAMENTO
AND MO.CD_EMPRESA = O.CD_EMPRESA)
INNER JOIN PESSOA P ON (O.CD_PESSOA = P.CD_PESSOA)
INNER JOIN ENDERECOPESSOA EP ON (O.CD_PESSOA = EP.CD_PESSOA
AND O.CD_ENDERECO = EP.CD_ENDERECO)
INNER JOIN MUNICIPIO MP ON (EP.CD_MUNICIPIO = MP.CD_MUNICIPIO)
INNER JOIN EMPRESA E ON (O.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 (O.CD_CONDPAGTO = C.CD_CONDPAGTO)
INNER JOIN ITEM I ON (I.CD_ITEM = MO.CD_ITEM)
INNER JOIN TIPOCALCULO TC ON (TC.CD_TIPOCALCULO = I.CD_TIPOCALCULO)
INNER JOIN PARMFATUR PARM ON (PARM.CD_EMPRESA = O.CD_EMPRESA)
LEFT JOIN MARCA MA ON (MA.CD_MARCA = I.CD_MARCA)
LEFT JOIN ENDERECOPESSOA EC ON (EC.CD_PESSOA = O.CD_PESSOA
AND EC.CD_ENDERECO = O.CD_ENDCOBRANCA)
LEFT JOIN MUNICIPIO MC ON (EC.CD_MUNICIPIO = MC.CD_MUNICIPIO)
LEFT JOIN ENDERECOPESSOA EN ON (EN.CD_PESSOA = O.CD_PESSOA
AND EN.CD_ENDERECO = O.CD_ENDENTREGA)
LEFT JOIN MUNICIPIO MN ON (EN.CD_MUNICIPIO = MN.CD_MUNICIPIO)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORCAMENTO = :NR_ORCAMENTO CD_EMPRESA 1 NR_ORCAMENTO
SELECT N.DT_ORCAMENTO + C.NR_DIAS DT_VENCTO, N.DT_VENCIMENTO, N.DT_ORCAMENTO
FROM ORCAMENTO N
LEFT JOIN CONDPARCELA C ON (C.CD_CONDPAGTO = N.CD_CONDPAGTO)
WHERE N.CD_EMPRESA = :CD_EMPRESA
AND N.NR_ORCAMENTO = :NR_ORCAMENTO CD_EMPRESA NR_ORCAMENTO
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
CONDPAGTO | referenciada nas queries do layout |
CONDPARCELA | referenciada nas queries do layout |
EMPRESA | referenciada nas queries do layout |
ENDERECOPESSOA | referenciada nas queries do layout |
FORMAPAGTO | referenciada nas queries do layout |
HABILITA_PESOQTDE | referenciada nas queries do layout |
ITEM | referenciada nas queries do layout |
MAQUINAORCAMENTO | referenciada nas queries do layout |
MARCA | referenciada nas queries do layout |
MUNICIPIO | referenciada nas queries do layout |
ORCAMENTO | referenciada nas queries do layout |
PARMFATUR | referenciada nas queries do layout |
PESSOA | referenciada nas queries do layout |
RETORNA_ENDERECO | referenciada nas queries do layout |
TIPOCALCULO | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LOR021/ULOR021.pas - DFM:
source/LOR021/ULOR021.dfm - Package:
source/LOR021/LOR021.dpk