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
| Tabela | Uso |
|---|---|
CONDPAGTO | referenciada nas queries do layout |
EMPRESA | referenciada nas queries do layout |
ENDERECOPESSOA | referenciada nas queries do layout |
EQUIPAMENTOOBJETO | referenciada nas queries do layout |
FORMAPAGTO | referenciada nas queries do layout |
ITEM | referenciada nas queries do layout |
MUNICIPIO | referenciada nas queries do layout |
ORDEMSERVLOCACAO | referenciada nas queries do layout |
OSLOCITEM | referenciada nas queries do layout |
OSLOCITEMFUNC | referenciada nas queries do layout |
OSLOCSERVICO | referenciada nas queries do layout |
PARMFATUR | referenciada nas queries do layout |
PESSOA | referenciada nas queries do layout |
RETORNA_DADOSCADASTRAIS | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LOS028/ULOS028.pas - DFM:
source/LOS028/ULOS028.dfm - Package:
source/LOS028/LOS028.dpk