Pular para o conteúdo principal

LOS032 — Layout LOS032

Visão Geral​

Layout de impressão da família LOS (Ordem de Serviço). Acionado via ExecLayout a partir das telas que imprimem este tipo de documento.

Descrição​

Consulta baseada em ORDEMOTICA, com junção em PESSOA, ITEM, TABPRECO, EMPRESA, PARMFATUR, ENDERECOPESSOA (+4), filtrada por CD_EMPRESA, NR_ORDEM, O, JO, CD_ITEM, CD_TABPRECO (+8).

Chamada​

ExecLayout(Connection, [
// 0 - Nome do Layout
// 1 - Cod Empresa
// 2 - Nr Orcamento
// 3 - Path Servidor
// 4 - Visualiza -> V ou Imprime -> I
// 5 - Máquinas da Ordem de Serviço
// 6 - Abertura ou Fechamento
]);

SQL Base​

tabORDEM​

SELECT O.CD_EMPRESA, O.NR_ORDEM, O.DT_EMISSAO, O.NR_ODESFERICO, O.NR_ODCILINDRICO, O.NR_ODEIXO, O.NR_ODADICAO, O.NR_ODDNP, O.NR_ODALTURA, O.NR_OEESFERICO, O.NR_OECILINDRICO, O.NR_OEEIXO, O.NR_OEADICAO, O.NR_OEDNP, O.NR_OEALTURA, O.NR_ESPESSURA, O.NR_ODDIAMETRO, O.NR_OEDIAMETRO, O.DS_ARMACAO, O.NR_VERTICAL, O.NR_DIAGONAL, PF.NM_PESSOA NM_FORNECEDOR, O.DT_ENTREGA, O.DS_OBSERVACAO, O.VL_DESCONTO
FROM ORDEMOTICA O
LEFT JOIN PESSOA PF ON (PF.CD_PESSOA = O.CD_FORNECEDOR)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORDEM = :NR_ORDEM CD_EMPRESA 1 NR_ORDEM
SELECT O.CD_EMPRESA, O.NR_ORDEM, I.CD_ITEM, I.DS_ITEM, O.NR_ARO, O.NR_PONTE, O.VL_UNITARIO, O.VL_TOTAL, O.QT_ITEM, OD.VL_DESCONTO, OD.VL_LIQUIDO,TP.DS_TABPRECO
FROM ORDEMOTICAITEM O
INNER JOIN ITEM I ON (I.CD_ITEM = O.CD_ITEM)
INNER JOIN ORDEMOTICA OD ON (OD.CD_EMPRESA = O.CD_EMPRESA
AND OD.NR_ORDEM = O.NR_ORDEM)
LEFT JOIN TABPRECO TP ON (TP.CD_TABPRECO = O.CD_TABPRECO)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORDEM = :NR_ORDEM CD_EMPRESA 1 NR_ORDEM
SELECT O.CD_EMPRESA, PE.NM_PESSOA NM_EMPRESA, EN.DS_ENDERECO, EN.NR_ENDERECO, EN.DS_BAIRRO, EN.NR_FONE, MUN.DS_MUNICIPIO||' - '||MUN.SG_ESTADO DS_MUNICIPIO, O.DT_EMISSAO DT_EMISSAO, O.NR_ORDEM, COALESCE(O.VL_TOTAL,0) + COALESCE(O.VL_DESCONTO,0) - COALESCE(O.VL_LENTES,0) VL_OS, O.VL_DESCONTO, O.VL_ENTRADA, PV.NM_PESSOA NM_VENDEDOR, O.VL_TOTAL,O.VL_LIQUIDO - O.VL_ENTRADA VL_SALDO, O.DS_FORMAPAGTO, CP.DS_CONDPAGTO, VL_LIQUIDO,PC.NM_PESSOA NM_CLIENTE, EC.NR_FONE NR_FONEC, EC.DS_ENDERECO DS_ENDERECOC, EC.DS_BAIRRO DS_BAIRROC, EC.NR_ENDERECO NR_ENDERECOC, O.DT_ENTREGA DT_ENTREGA, PF.DS_LOGOTIPO, MU.DS_MUNICIPIO||' - '||MU.SG_ESTADO DS_MUNICIPIOC, M.CD_PESSOA||'-'||M.NM_PESSOA NM_MEDICO, PD.NR_PEDIDO
FROM ORDEMOTICA O
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA)
INNER JOIN PARMFATUR PF ON (PF.CD_EMPRESA = O.CD_EMPRESA)
INNER JOIN PESSOA PE ON (PE.CD_PESSOA = E.CD_PESSOA)
LEFT JOIN ENDERECOPESSOA EN ON (EN.CD_PESSOA = PE.CD_PESSOA
AND EN.CD_ENDERECO = (
SELECT MIN(CD_ENDERECO)
FROM ENDERECOPESSOA
WHERE CD_PESSOA = EN.CD_PESSOA))
LEFT JOIN MUNICIPIO MUN ON (MUN.CD_MUNICIPIO = EN.CD_MUNICIPIO)
INNER JOIN PESSOA PV ON (PV.CD_PESSOA = O.CD_VENDEDOR)
INNER JOIN PESSOA PC ON (PC.CD_PESSOA = O.CD_PESSOA)
LEFT JOIN PEDIDO PD ON (PD.CD_EMPRESA = O.cd_empresa
AND PD.NR_PEDIDO = O.nr_pedido
AND PD.TP_PEDIDO = O.TP_PEDIDO
AND PD.st_pedido <> 'C')
LEFT JOIN PESSOA M ON (M.CD_PESSOA = O.CD_MEDICO)
LEFT JOIN ENDERECOPESSOA EC ON (EC.CD_PESSOA = PC.CD_PESSOA
AND EC.CD_ENDERECO = (
SELECT MIN(CD_ENDERECO)
FROM ENDERECOPESSOA
WHERE CD_PESSOA = EC.CD_PESSOA))
LEFT JOIN MUNICIPIO MU ON (MU.CD_MUNICIPIO = EC.CD_MUNICIPIO)
LEFT JOIN CONDPAGTO CP ON (CP.CD_CONDPAGTO = O.CD_CONDPAGTO)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORDEM = :NR_ORDEM CD_EMPRESA 1 NR_ORDEM
SELECT O.CD_EMPRESA, O.NR_ORDEM, O.CD_ITEM, I.DS_ITEM DS_MATERIAPRIMA
FROM ORDEMOTICAITEM O
INNER JOIN COMPONENTEITEMOTICA CO ON (CO.CD_EMPRESA = O.CD_EMPRESA
AND CO.NR_ORDEM = O.NR_ORDEM
AND CO.CD_ITEM = O.CD_ITEM)
INNER JOIN ITEM I ON (I.CD_ITEM = CO.CD_MATERIAPRIMA)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORDEM = :NR_ORDEM
AND O.CD_ITEM = :CD_ITEM CD_EMPRESA NR_ORDEM CD_ITEM

Tabelas Utilizadas​

TabelaUso
COMPONENTEITEMOTICAreferenciada nas queries do layout
CONDPAGTOreferenciada nas queries do layout
EMPRESAreferenciada nas queries do layout
ENDERECOPESSOAreferenciada nas queries do layout
ITEMreferenciada nas queries do layout
MUNICIPIOreferenciada nas queries do layout
ORDEMOTICAreferenciada nas queries do layout
ORDEMOTICAITEMreferenciada nas queries do layout
PARMFATURreferenciada nas queries do layout
PEDIDOreferenciada nas queries do layout
PESSOAreferenciada nas queries do layout
TABPRECOreferenciada nas queries do layout

Shared Units​

  • jCommon
  • jPesquisa

Fonte​

  • Unit: source/LOS032/ULOS032.pas
  • DFM: source/LOS032/ULOS032.dfm
  • Package: source/LOS032/LOS032.dpk