Pular para o conteúdo principal

LOS028 — Layout LOS028

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 ORDEMSERVLOCACAO, com junção em PESSOA, ENDERECOPESSOA, MUNICIPIO, OSLOCSERVICO, ITEM, OSLOCITEM (+7), filtrada por CD_EMPRESA, NR_ORDEMSERVICO.

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.NR_ORDEMSERVICO, O.CD_EMPRESA, O.DT_ORDEMSERVICO, O.CD_PESSOA, P.NM_PESSOA, E.DS_ENDERECO, E.NR_FONE, M.DS_MUNICIPIO, S.CD_ITEM, S.NR_SEQUENCIA, I.DS_ITEM, S.DS_SERVICO, S.QT_HORAS, LPAD(DIVIDENDO(((S.QT_HORAS) * 3600 ),3600),2,'0')||':' ||LPAD((MOD(((S.QT_HORAS) * 3600),3600)/60),2,'0') DS_HORAS, S.VL_HORA, COALESCE(S.VL_TOTHORAS,0) + COALESCE(S.VL_TOTPEDAGIO,0) VL_TOTHORAS , S.VL_TOTPEDAGIO, L.CD_EQUIPAMENTO, EQ.DS_EQUIPAMENTO, L.QT_TOTKM, L.VL_KM, L.VL_TOTKM, F.CD_PESSOA CD_FUNCIONARIO, PF.NM_PESSOA NM_FUNCIONARIO, F.QT_HORASEXTRAS, EP.NM_PESSOA NM_EMPRESA, PA.DS_LOGOTIPO, O.DS_OBSERVACAO, O.VL_ORDEMSERVICO, CON.DS_CONDPAGTO, FO.DS_FORMAPAGTO, RE.DS_ENDCOMPLETO DS_ENDERECOEMPRESA, RE.NR_TELEFONE, O.DT_VENCIMENTO
FROM ORDEMSERVLOCACAO O
INNER JOIN PESSOA P ON (P.CD_PESSOA = O.CD_PESSOA)
LEFT JOIN ENDERECOPESSOA E ON (E.CD_PESSOA = P.CD_PESSOA
AND E.CD_ENDERECO = O.CD_ENDERECOPESSOA)
LEFT JOIN MUNICIPIO M ON (M.CD_MUNICIPIO = E.CD_MUNICIPIO)
INNER JOIN OSLOCSERVICO S ON (S.CD_EMPRESA = O.CD_EMPRESA
AND S.NR_ORDEMSERVICO = O.NR_ORDEMSERVICO)
INNER JOIN ITEM I ON (I.CD_ITEM = S.CD_ITEM)
LEFT JOIN OSLOCITEM L ON (L.CD_EMPRESA = S.CD_EMPRESA
AND L.NR_ORDEMSERVICO = S.NR_ORDEMSERVICO
AND L.NR_SEQUENCIA = S.NR_SEQUENCIA
AND L.CD_ITEM = S.CD_ITEM)
LEFT JOIN EQUIPAMENTOOBJETO EQ ON (EQ.CD_EMPRESA = L.CD_EMPREQUIPAMENTO
AND EQ.CD_EQUIPAMENTO = L.CD_EQUIPAMENTO)
LEFT JOIN OSLOCITEMFUNC F ON (F.CD_EMPRESA = L.CD_EMPRESA
AND F.NR_ORDEMSERVICO = L.NR_ORDEMSERVICO
AND F.NR_SEQUENCIA = L.NR_SEQUENCIA
AND F.CD_ITEM = L.CD_ITEM
AND F.CD_EMPREQUIPAMENTO = L.CD_EMPREQUIPAMENTO
AND F.CD_EQUIPAMENTO = L.CD_EQUIPAMENTO)
LEFT JOIN PESSOA PF ON (PF.CD_PESSOA = F.CD_PESSOA)
INNER JOIN EMPRESA EMP ON (EMP.CD_EMPRESA = O.CD_EMPRESA)
LEFT JOIN RETORNA_DADOSCADASTRAIS(EMP.CD_PESSOA,NULL) RE ON (1 = 1)
INNER JOIN PESSOA EP ON (EP.CD_PESSOA = EMP.CD_PESSOA)
INNER JOIN PARMFATUR PA ON (PA.CD_EMPRESA = O.CD_EMPRESA)
LEFT JOIN CONDPAGTO CON ON (CON.CD_CONDPAGTO = O.CD_CONDPAGTO)
LEFT JOIN FORMAPAGTO FO ON (FO.CD_FORMAPAGTO = O.CD_FORMAPAGTO)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
ORDER BY O.NR_ORDEMSERVICO, S.NR_SEQUENCIA, L.CD_EQUIPAMENTO CD_EMPRESA NR_ORDEMSERVICO

Tabelas Utilizadas​

TabelaUso
CONDPAGTOreferenciada nas queries do layout
EMPRESAreferenciada nas queries do layout
ENDERECOPESSOAreferenciada nas queries do layout
EQUIPAMENTOOBJETOreferenciada nas queries do layout
FORMAPAGTOreferenciada nas queries do layout
ITEMreferenciada nas queries do layout
MUNICIPIOreferenciada nas queries do layout
ORDEMSERVLOCACAOreferenciada nas queries do layout
OSLOCITEMreferenciada nas queries do layout
OSLOCITEMFUNCreferenciada nas queries do layout
OSLOCSERVICOreferenciada nas queries do layout
PARMFATURreferenciada nas queries do layout
PESSOAreferenciada nas queries do layout
RETORNA_DADOSCADASTRAISreferenciada nas queries do layout

Shared Units​

  • jCommon
  • jPesquisa

Fonte​

  • Unit: source/LOS028/ULOS028.pas
  • DFM: source/LOS028/ULOS028.dfm
  • Package: source/LOS028/LOS028.dpk