LOF000 — Layout LOF000
Visão Geral
Layout de impressão da família LOF (Ordem de Serviço). Acionado via ExecLayout a partir das telas que imprimem este tipo de documento.
Descrição
Consulta baseada em VALOR_EXTENSO, com junção em EMPRESA, USUARIO, PESSOA, ENDERECOPESSOA, MUNICIPIO, PESSOAFISICA (+25), filtrada por CD_EMPRESA, NR_ORDEMSERVICO, ST_TERCEIRO, DE_EXT, DE_INT, DD_INT (+37).
Chamada
ExecLayout(Connection, [
// parametros nao documentados no .pas
]);
SQL Base
queryOS #1
SELECT OS.CD_EMPRESA, OS.NR_ORDEMSERVICO, OS.VL_ORDEMSERVICO, FV.O_DS_VALOR, COALESCE(EPE.NR_FONE, COALESCE(EPE.NR_FAX, EPE.NR_CELULAR)) NR_FONEE, EPE.NR_INSCEST NR_INSCESTE, (
SELECT O_VALOR
FROM VALOR_EXTENSO(OS.VL_ORDEMSERVICO))||'.' DS_DUPLICATA, COALESCE(EP.NR_FONE, COALESCE(EP.NR_FAX, EP.NR_CELULAR)) NR_FONE, EP.NR_INSCEST NR_INSCEST, EP.DS_BAIRRO DS_BAIRRO, PF.NR_RG, E.NM_EMPRESA, PE.NM_PESSOA RAZAO, PE.NM_FANTASIA, EPE.DS_ENDERECO||', '||COALESCE(EPE.NR_ENDERECO, '')|| COALESCE(' - '||EPE.DS_BAIRRO, '')||' - '||ME.DS_MUNICIPIO||'-'||ME.SG_ESTADO DS_ENDERECOEMPRESA, EPE.NR_CEP NR_CEPEMPRESA, EPE.NR_FONE NR_FONEEMPRESA, EPE.NR_FAX NR_FAXEMPRESA, PE.NR_CNPJCPF NR_CNPJEMPRESA, EPE.NR_INSCEST NR_IEEMPRESA, (OS.DT_EMISSAO + COALESCE(OS.HR_EMISSAO, CAST('00:00:00' AS TIME))) DT_EMISSAO, OS.DT_EMISSAO DT_DATA, OS.NR_ORDEMSERVICO, CAST(P.CD_PESSOA AS VARCHAR(12))||' - '||P.NM_PESSOA DS_CLIENTE, P.CD_PESSOA, P.NM_PESSOA, OS.CD_VENDEDOR, VEND.NM_PESSOA NM_VENDEDOR, EP.NR_CEP NR_CEPPESSOA, EP.DS_ENDERECO||', '||COALESCE(EP.NR_ENDERECO, '')|| COALESCE(' - '||EP.DS_BAIRRO, '')||' - '||M.DS_MUNICIPIO||'-'||M.SG_ESTADO DS_ENDERECOPESSOA, M.DS_MUNICIPIO||'-'||M.SG_ESTADO DS_MUNICIPIO, EP.NR_CELULAR, EP.NR_FAX, P.NR_CNPJCPF, CASE WHEN CHAR_LENGTH(P.NR_CNPJCPF) > 14 THEN EP.NR_INSCEST ELSE PF.NR_RG END NR_IERG, COALESCE(MV.DS_MARCAVEICULO||'/', '')||COALESCE(MOV.DS_MODELOVEICULO||' ', '')||COALESCE(V.NR_ANO, '') DS_VEICULO, COALESCE(MV.DS_MARCAVEICULO||'/', '')||COALESCE(MOV.DS_MODELOVEICULO||' ', '')||COALESCE(V.NR_ANO, '') DS_VEIC, COALESCE(MOV.DS_MODELOVEICULO, '')DS_MODELO, COALESCE(MV.DS_MARCAVEICULO, '')DS_MARCA, V.NR_PLACA, PLV.DS_PLATAFORMAVEICULO, MVP.DS_MARCAVEICULO||' '||COALESCE(MOP.DS_MODELOVEICULO, '') DS_MODELOPLATAFORMA, OS.DS_OBSERVACAO, U.NM_USUARIO, OS.CD_FORMAPAGTO||' - '||FP.DS_FORMAPAGTO DS_FORMAPAGTO, OS.CD_CONDPAGTO, CP.DS_CONDPAGTO DS_CONDPAGTO_OS, PFI.O_DS_CONDICAO DS_CONDPAGTO, PD.NR_PEDIDO, OS.DS_TECNICA, COPIA_TEXTO(OS.DS_TECNICA, 1, CHAR_LENGTH(OS.DS_TECNICA))||COALESCE(' - '||OS.NR_PLACA,'')||COALESCE(' - '||OS.NR_FROTA,'')||COALESCE(' - '||OS.NR_KILOMETRAGEM,'') DS_OBSERV, CAST(PFI.O_VL_TOTAL AS DOM_NUMERIC15_3) O_VL_TOTAL, CAST(PFI.O_VL_TOTALJURO AS DOM_NUMERIC15_3) O_VL_TOTALJURO, OS.DT_ENTREGA, V.NR_CHASSIS, CV.DS_CORVEICULO, COALESCE(MV.DS_MARCAVEICULO, '')||COALESCE('/'||MOV.DS_MODELOVEICULO, '') DS_MODELOVEICULO, COALESCE(V.NR_ANO,'')||COALESCE('/'||V.NR_ANOMODELO,'') NR_ANOMODELO, PM.DS_LOGOTIPO, 'ORDEM DE SERVIÇO' NM_DOCUMENTO, OS.NR_BOX , PE.DS_EMAIL DS_EMAILEMPRESA , OS.NR_KILOMETRAGEM, OS.HR_EMISSAO, RVV.O_DS_VENDEDORES NM_VARIOSVENDEDORES, V.NR_ANO, V.CD_CORVEICULO, V.NR_FROTA, (
SELECT SUM(VL_TOTAL) VL_TOTORDEM
FROM(
SELECT OSI.VL_TOTAL
FROM ORDEMSERVITEM OSI
WHERE OSI.CD_EMPRESA = :CD_EMPRESA
AND OSI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
AND OSI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,OSI.ST_TERCEIRO)
UNION ALL
SELECT SI.VL_TOTAL
FROM SERVICOITEM SI
WHERE SI.CD_EMPRESA = :CD_EMPRESA
AND SI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
AND SI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,SI.ST_TERCEIRO) ) ), (
SELECT SUM(VL_LIQUIDO) VL_TOTLIQORD
FROM(
SELECT OSI.VL_TOTAL - COALESCE(OSI.VL_DESCONTO,0) VL_LIQUIDO
FROM ORDEMSERVITEM OSI
WHERE OSI.CD_EMPRESA = :CD_EMPRESA
AND OSI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
AND OSI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,OSI.ST_TERCEIRO)
UNION ALL
SELECT SI.VL_TOTAL - COALESCE(SI.VL_DESCONTO, 0) VL_LIQUIDO
FROM SERVICOITEM SI
WHERE SI.CD_EMPRESA = :CD_EMPRESA
AND SI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
AND SI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,SI.ST_TERCEIRO) ) ), (
SELECT SUM(VL_DESCONTO) VL_TOTDESCORD
FROM(
SELECT COALESCE(OSI.VL_DESCONTO, 0) VL_DESCONTO
FROM ORDEMSERVITEM OSI
WHERE OSI.CD_EMPRESA = :CD_EMPRESA
AND OSI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
AND OSI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,OSI.ST_TERCEIRO)
UNION ALL
SELECT COALESCE(SI.VL_DESCONTO, 0) VL_DESCONTO
FROM SERVICOITEM SI
WHERE SI.CD_EMPRESA = :CD_EMPRESA
AND SI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
AND SI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,SI.ST_TERCEIRO) ) ), CAST('S' AS DOM_CHAR1) ST_IMPRIMEOCORRENCIA, OS.DE_EXTINI, OS.DE_INTINI, OS.DD_INTINI, OS.DD_EXTINI, OS.TE_EXTINI, OS.TE_INTINI, OS.TD_INTINI, OS.TD_EXTINI, OS.DE_EXTFIM, OS.DE_INTFIM, OS.DD_INTFIM, OS.DD_EXTFIM, OS.TE_EXTFIM, OS.TE_INTFIM, OS.TD_INTFIM, OS.TD_EXTFIM, OS.DT_EMISSAO + COALESCE(POF.NR_DIASGARANTIA, 0) DT_GARANTIA, OS.NR_KILOMETRAGEM + COALESCE(POF.NR_QUILOMETRAGEM ,0) KM_GARANTIA, OSD.BI_DOCUMENTO BI_ASSINATURA
FROM ORDEMSERVICO OS
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = OS.CD_EMPRESA)
LEFT JOIN USUARIO USU ON (USU.CD_USUARIO = OS.CD_USUARIO)
INNER JOIN PESSOA PE ON (PE.CD_PESSOA = E.CD_PESSOA)
INNER JOIN ENDERECOPESSOA EPE ON (EPE.CD_PESSOA = PE.CD_PESSOA
AND EPE.CD_ENDERECO = 1)
INNER JOIN MUNICIPIO ME ON (ME.CD_MUNICIPIO = EPE.CD_MUNICIPIO)
INNER JOIN PESSOA P ON (P.CD_PESSOA = OS.CD_PESSOA)
LEFT JOIN PESSOAFISICA PF ON (PF.CD_PESSOA = P.CD_PESSOA)
INNER JOIN ENDERECOPESSOA EP ON (EP.CD_PESSOA = P.CD_PESSOA
AND EP.CD_ENDERECO = OS.CD_ENDERECO)
INNER JOIN MUNICIPIO M ON (M.CD_MUNICIPIO = EP.CD_MUNICIPIO)
INNER JOIN PARMFATUR PM ON (PM.CD_EMPRESA = E.CD_EMPRESA)
INNER JOIN PARMOFICINA POF ON (POF.CD_EMPRESA = E.CD_EMPRESA)
LEFT JOIN VEICULO V ON (V.NR_PLACA = OS.NR_PLACA)
LEFT JOIN PESSOA PV ON (PV.CD_PESSOA = V.CD_PESSOA)
LEFT JOIN MARCAVEICULO MV ON (MV.CD_MARCAVEICULO = V.CD_MARCAVEICULO)
LEFT JOIN MODELOVEICULO MOV ON (MOV.CD_MARCAVEICULO = V.CD_MARCAVEICULO
AND MOV.CD_MODELOVEICULO = V.CD_MODELOVEICULO)
LEFT JOIN PLATAFORMAVEICULO PLV ON (PLV.CD_PLATAFORMAVEICULO = OS.CD_PLATAFORMAVEICULO)
LEFT JOIN MARCAVEICULO MVP ON (MVP.CD_MARCAVEICULO = OS.CD_MARCAVEICULO)
LEFT JOIN MODELOVEICULO MOP ON (MOP.CD_MARCAVEICULO = OS.CD_MARCAVEICULO
AND MOP.CD_MODELOVEICULO = OS.CD_MODELOVEICULO)
LEFT JOIN CORVEICULO CV ON (CV.CD_CORVEICULO = V.CD_CORVEICULO)
LEFT JOIN FORMAPAGTO FP ON (FP.CD_FORMAPAGTO = OS.CD_FORMAPAGTO)
LEFT JOIN CONDPAGTO CP ON (CP.CD_CONDPAGTO = OS.CD_CONDPAGTO)
LEFT JOIN PARCELA_FINANCIAMENTO(OS.CD_CONDPAGTO, OS.VL_ORDEMSERVICO, NULLIF(OS.VL_ENTRADA, 0)) PFI ON (0=0)
LEFT JOIN SESSAO ON (SESSAO.NR_CONEXAO = CURRENT_CONNECTION)
LEFT JOIN USUARIO U ON (U.CD_USUARIO = SESSAO.CD_USUARIO)
LEFT JOIN PESSOA VEND ON (VEND.CD_PESSOA = OS.CD_VENDEDOR)
LEFT JOIN PEDIDO PD ON (PD.CD_EMPRORDEM = OS.CD_EMPRESA
AND PD.NR_ORDEMSERVICO = OS.NR_ORDEMSERVICO
AND PD.ST_PEDIDO <> 'C')
LEFT JOIN FORMATA_VALOR(OS.VL_ENTRADA) FV ON (0=0)
LEFT JOIN RETORNA_VARIOSVENDEDORES(OS.CD_EMPRESA, OS.NR_ORDEMSERVICO, NULL, NULL, 'OF') RVV ON (1=1)
LEFT JOIN ORDEMSERVICODOC OSD ON (OSD.NR_SEQUENCIA = 0 --RESERVADO PARA A ASSINATURA DA ORDEM QUANDO VEM DO WEB
AND OSD.CD_EMPRESA = OS.CD_EMPRESA
AND OSD.NR_ORDEMSERVICO = OS.NR_ORDEMSERVICO)
WHERE OS.CD_EMPRESA = :CD_EMPRESA
AND OS.NR_ORDEMSERVICO = :NR_ORDEMSERVICO CD_EMPRESA 1 NR_ORDEMSERVICO 72 ST_TERCEIRO
SELECT CAST((
SELECT COUNT(CD_SERVICO)
FROM ORDEMSERVITEM
WHERE OSI.CD_EMPRESA = CD_EMPRESA
AND OSI.NR_ORDEMSERVICO = NR_ORDEMSERVICO
AND OSI.ST_TERCEIRO = COALESCE(ST_TERCEIRO,OSI.ST_TERCEIRO)) AS INTEGER) QTDE, OSI.CD_SERVICO, COALESCE(OSI.DS_SERVICO, I.DS_ITEM) DS_ITEM, OSI.QT_SERVICO, OSI.VL_UNITARIO, OSI.VL_TOTAL, OSI.VL_TOTAL - COALESCE(OSI.VL_DESCONTO,0) VL_LIQUIDO, COALESCE(OSI.VL_DESCONTO, 0) VL_DESCONTO, OSI.CD_MECANICO, P.NM_PESSOA, COALESCE(M.DS_NATUREZA, '') DS_NATUREZA, I.NR_NCM, IIF(RDC.SG_ESTADO = RDC_E.SG_ESTADO, M.CD_CFOD, M.CD_CFOF) CD_CFO
FROM ORDEMSERVITEM OSI
INNER JOIN ORDEMSERVICO OS ON (OS.CD_EMPRESA = OSI.CD_EMPRESA
AND OS.NR_ORDEMSERVICO = OSI.NR_ORDEMSERVICO)
LEFT JOIN RETORNA_DADOSCADASTRAIS(OS.CD_PESSOA, NULL) RDC ON (1=1)
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = OS.CD_EMPRESA)
LEFT JOIN RETORNA_DADOSCADASTRAIS(E.CD_PESSOA, NULL) RDC_E ON (1=1)
INNER JOIN ITEM I ON (I.CD_ITEM = OSI.CD_SERVICO)
LEFT JOIN PESSOA P ON (P.CD_PESSOA = OSI.CD_MECANICO)
INNER JOIN MOVIMENTACAO M ON (M.CD_MOVIMENTACAO = OSI.CD_MOVIMENTACAO)
WHERE OSI.CD_EMPRESA = :CD_EMPRESA
AND OSI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
AND OSI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,OSI.ST_TERCEIRO) CD_EMPRESA 1 NR_ORDEMSERVICO 72 ST_TERCEIRO
SELECT cast((
SELECT COUNT(CD_ITEM)
FROM SERVICOITEM
WHERE SI.CD_EMPRESA = SERVICOITEM.CD_EMPRESA
AND SI.NR_ORDEMSERVICO = SERVICOITEM.NR_ORDEMSERVICO
AND SI.ST_TERCEIRO = COALESCE(SERVICOITEM.ST_TERCEIRO, SI.ST_TERCEIRO)) AS INTEGER) QTDE, SI.CD_ITEM, COALESCE(SI.DS_ITEM, I.DS_ITEM) DS_ITEM, SI.QT_SERVICOITEM, SI.VL_UNITARIO, SI.VL_TOTAL, COALESCE(SI.VL_DESCONTO, 0) VL_DESCONTO, SI.CD_VENDEDOR, P.NM_PESSOA, M.DS_NATUREZA, SI.VL_TOTAL - COALESCE(SI.VL_DESCONTO, 0) VL_LIQUIDO, SI.QT_SERVICOITEM - COALESCE(SI.QT_IMPRESSA, 0) QT_SERVICONAOIMPRESSO, CASE TC.TP_UNIDADE WHEN 'Q' THEN SI.QT_SERVICOITEM ELSE SI.PS_SERVICOITEM END QT_PECA, I.CD_FORNECEDOR1, I.CD_FORNECEDOR2, CAST(LIST(RLA.DS_TIPOLOCAL ||' - '|| RLA.DS_LOCAL) AS DOM_VARCHAR5000) DS_LOCAL, I.NR_NCM, IIF(RDC.SG_ESTADO = RDC_E.SG_ESTADO, M.CD_CFOD, M.CD_CFOF) CD_CFO
FROM SERVICOITEM SI
INNER JOIN ITEM I ON (I.CD_ITEM = SI.CD_ITEM)
LEFT JOIN PESSOA P ON (P.CD_PESSOA =SI.CD_VENDEDOR)
INNER JOIN MOVIMENTACAO M ON (M.CD_MOVIMENTACAO = SI.CD_MOVIMENTACAO)
INNER JOIN TIPOCALCULO TC ON (TC.CD_TIPOCALCULO = I.CD_TIPOCALCULO)
LEFT JOIN RETORNA_LOCAISARMAZENAGEM(SI.CD_EMPRESA,SI.CD_ITEM,'S') RLA ON (1 = 1)
INNER JOIN ORDEMSERVICO OS ON (OS.CD_EMPRESA = SI.CD_EMPRESA
AND OS.NR_ORDEMSERVICO = SI.NR_ORDEMSERVICO)
LEFT JOIN RETORNA_DADOSCADASTRAIS(OS.CD_PESSOA, NULL) RDC ON (1=1)
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = OS.CD_EMPRESA)
LEFT JOIN RETORNA_DADOSCADASTRAIS(E.CD_PESSOA, NULL) RDC_E ON (1=1)
WHERE SI.CD_EMPRESA = :CD_EMPRESA
AND SI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
AND SI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO, SI.ST_TERCEIRO)
GROUP BY SI.CD_EMPRESA, SI.NR_ORDEMSERVICO, SI.ST_TERCEIRO, SI.CD_ITEM, SI.DS_ITEM, I.DS_ITEM, SI.QT_SERVICOITEM, SI.VL_UNITARIO, SI.VL_TOTAL, SI.CD_VENDEDOR, P.NM_PESSOA, M.DS_NATUREZA, SI.VL_TOTAL, SI.VL_DESCONTO, SI.QT_SERVICOITEM, SI.QT_IMPRESSA, TC.TP_UNIDADE, SI.QT_SERVICOITEM, SI.PS_SERVICOITEM, I.CD_FORNECEDOR1, I.CD_FORNECEDOR2, I.NR_NCM, CD_CFO CD_EMPRESA 1 NR_ORDEMSERVICO 72 ST_TERCEIRO
SELECT O_VL_TOTAL, O_VL_TOTALJURO, VL_TOTAL, VL_TOTALDESCONTO, O_VL_TOTAL + COALESCE(VL_IMPOSTO,0) VL_LIQUIDO, VL_TOTAL - COALESCE(VL_TOTALDESCONTO,0) VL_LIQUIDODESC
FROM (
SELECT CD_CONDPAGTO, VL_ENTRADA, SUM(VL_TOTAL) VL_TOTAL, SUM(VL_DESCONTO) VL_TOTALDESCONTO, SUM(VL_IMPOSTO) VL_IMPOSTO
FROM (
SELECT OS.CD_CONDPAGTO, OS.VL_ENTRADA, COALESCE(SUM(OSI.VL_TOTAL), 0) VL_TOTAL, COALESCE(SUM(OSI.VL_DESCONTO), 0) VL_DESCONTO, SUM(CASE P.ST_IMPOSTOPEDIDO WHEN 'N' THEN 0 ELSE (
SELECT V_VL_TOTAL
FROM CALCULA_IMPOSTOPEDIDO(OSI.CD_EMPRESA, OSI.NR_ORDEMSERVICO, null, OSI.CD_SERVICO, null, OSI.CD_EMPRESA)) END) VL_IMPOSTO
FROM ORDEMSERVICO OS
INNER JOIN ORDEMSERVITEM OSI ON (OSI.CD_EMPRESA = OS.CD_EMPRESA
AND OSI.NR_ORDEMSERVICO = OS.NR_ORDEMSERVICO)
INNER JOIN PARMFATUR P ON (P.CD_EMPRESA = OS.CD_EMPRESA)
WHERE OS.CD_EMPRESA = :CD_EMPRESA
AND OS.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
AND OSI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO, OSI.ST_TERCEIRO)
GROUP BY 1, 2
UNION ALL
SELECT OS.CD_CONDPAGTO, OS.VL_ENTRADA, COALESCE(SUM(SI.VL_TOTAL),0) VL_TOTAL, COALESCE(SUM(SI.VL_DESCONTO), 0) VL_DESCONTO, SUM(CASE P.ST_IMPOSTOPEDIDO WHEN 'N' THEN 0 ELSE (
SELECT V_VL_TOTAL
FROM CALCULA_IMPOSTOPEDIDO(SI.CD_EMPRESA, SI.NR_ORDEMSERVICO, null, SI.CD_ITEM, null, SI.CD_EMPRESA)) END) VL_IMPOSTO
FROM ORDEMSERVICO OS
INNER JOIN SERVICOITEM SI ON (SI.CD_EMPRESA = OS.CD_EMPRESA
AND SI.NR_ORDEMSERVICO = OS.NR_ORDEMSERVICO)
INNER JOIN PARMFATUR P ON (P.CD_EMPRESA = OS.CD_EMPRESA)
WHERE OS.CD_EMPRESA = :CD_EMPRESA
AND OS.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
AND SI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO, SI.ST_TERCEIRO)
GROUP BY 1, 2)
GROUP BY 1, 2 )
LEFT JOIN PARCELA_FINANCIAMENTO(CD_CONDPAGTO, VL_TOTAL - COALESCE(VL_TOTALDESCONTO,0), NULLIF(VL_ENTRADA, 0)) PFI ON (0=0) CD_EMPRESA 1 NR_ORDEMSERVICO 72 ST_TERCEIRO CD_EMPRESA NR_ORDEMSERVICO ST_TERCEIRO
SELECT OSI.CD_SERVICO, COALESCE(OSI.DS_SERVICO, I.DS_ITEM) DS_ITEM, OSI.QT_SERVICO, OSI.VL_UNITARIO, OSI.VL_TOTAL, COALESCE(OSI.VL_DESCONTO, 0) VL_DESCONTO, OSI.CD_MECANICO, OSI.VL_TOTAL - COALESCE(OSI.VL_DESCONTO, 0) VL_LIQUIDO, I.NR_NCM, IIF(RDC.SG_ESTADO = RDC_E.SG_ESTADO, M.CD_CFOD, M.CD_CFOF) CD_CFO
FROM ORDEMSERVITEM OSI
INNER JOIN ITEM I ON (I.CD_ITEM = OSI.CD_SERVICO)
INNER JOIN ORDEMSERVICO OS ON (OS.CD_EMPRESA = OSI.CD_EMPRESA
AND OS.NR_ORDEMSERVICO = OSI.NR_ORDEMSERVICO)
LEFT JOIN RETORNA_DADOSCADASTRAIS(OS.CD_PESSOA, NULL) RDC ON (1=1)
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = OS.CD_EMPRESA)
LEFT JOIN RETORNA_DADOSCADASTRAIS(E.CD_PESSOA, NULL) RDC_E ON (1=1)
LEFT JOIN MOVIMENTACAO M ON(M.CD_MOVIMENTACAO = OSI.CD_MOVIMENTACAO)
WHERE OSI.CD_EMPRESA = :CD_EMPRESA
AND OSI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
AND OSI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,OSI.ST_TERCEIRO)
ORDER BY OSI.CD_SERVICO CD_EMPRESA 1 NR_ORDEMSERVICO 72 ST_TERCEIRO
SELECT V.NR_PARCELA, V.DT_VENCIMENTO, V.VL_DOCUMENTO, F.CD_FORMAPAGTO||' - '||F.DS_FORMAPAGTO DS_FORMAPAGTO, C.CD_CONDPAGTO||' - '||CAST(C.DS_CONDPAGTO AS DOM_VARCHAR240) DS_CONDPAGTO, NR_ORDEMSERVICO||' / '||NR_PARCELA PARCELA, DT_EMISSAO, V.VL_LIQUIDO
FROM VIEW_CONTASORDEMSERVICO(:CD_EMPRESA, :NR_ORDEMSERVICO) V
LEFT JOIN FORMAPAGTO F ON(F.CD_FORMAPAGTO = V.CD_FORMAPAGTO)
LEFT JOIN CONDPAGTO C ON(C.CD_CONDPAGTO = V.CD_CONDPAGTO) CD_EMPRESA 1 NR_ORDEMSERVICO
SELECT SUM(V.VL_DOCUMENTO) VL_DUPLICATA
FROM VIEW_CONTASORDEMSERVICO(:CD_EMPRESA, :NR_ORDEMSERVICO) V
LEFT JOIN FORMAPAGTO F ON(F.CD_FORMAPAGTO = V.CD_FORMAPAGTO)
LEFT JOIN CONDPAGTO C ON(C.CD_CONDPAGTO = V.CD_CONDPAGTO) CD_EMPRESA 1 NR_ORDEMSERVICO
SELECT CAST(0 AS INTEGER) NR_SEQ, COALESCE(n.NR_NOTAFISCAL||'-'||N.CD_SERIE, PD.NR_PEDIDO, OS.NR_ORDEMSERVICO)NR_DOCT, OSI.CD_SERVICO CD_ITEM, COALESCE(OSI.DS_SERVICO,I.DS_ITEM) DS_ITEM, OSI.QT_SERVICO QT_ITEM, OSI.VL_UNITARIO, ( OSI.VL_TOTAL + COALESCE(OSI.VL_DESPESA,0) - COALESCE(OSI.VL_DESCONTO,0) ) VL_TOTAL, OSI.CD_MECANICO, P.NM_PESSOA NM_MECANICO
FROM ORDEMSERVICO OS
INNER JOIN ORDEMSERVITEM OSI ON (OSI.CD_EMPRESA = OS.CD_EMPRESA
AND OSI.NR_ORDEMSERVICO = OS.NR_ORDEMSERVICO)
LEFT JOIN PESSOA P ON (P.CD_PESSOA = OSI.CD_MECANICO)
LEFT JOIN ITEM I ON ( I.CD_ITEM = OSI.CD_SERVICO)
LEFT JOIN PEDIDO PD ON (PD.CD_EMPRORDEM = OS.CD_EMPRESA
AND PD.NR_ORDEMSERVICO = OS.NR_ORDEMSERVICO
AND PD.ST_PEDIDO <> 'C')
LEFT JOIN RETORNA_CHAVENOTA (PD.CD_EMPRESA, PD.NR_PEDIDO, PD.TP_PEDIDO) RCN on (RCN.O_CD_ITEM = I.CD_ITEM)
LEFT JOIN NOTA N ON (N.CD_EMPRESA = RCN.O_CD_EMPRESA
AND N.NR_LANCAMENTO = RCN.O_NR_LANCAMENTO
AND N.CD_SERIE = RCN.O_CD_SERIE
AND N.TP_NOTA = RCN.O_TP_NOTA)
WHERE OS.CD_EMPRESA = :CD_EMPRESA
AND OS.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
AND OSI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO, OSI.ST_TERCEIRO)
UNION ALL
SELECT CAST(0 AS INTEGER) NR_SEQ , COALESCE(n.NR_NOTAFISCAL||'-'||N.CD_SERIE, PD.NR_PEDIDO, OS.NR_ORDEMSERVICO) NR_DOCT, SI.CD_ITEM CD_ITEM, COALESCE(SI.DS_ITEM, I.DS_ITEM) DS_ITEM, SI.QT_SERVICOITEM QT_ITEM, SI.VL_UNITARIO, (SI.VL_TOTAL + COALESCE(SI.VL_DESPESA,0) - COALESCE(SI.VL_DESCONTO,0)) VL_TOTAL, SI.CD_MECANICO, P.NM_PESSOA NM_MECANICO
FROM ORDEMSERVICO OS
INNER JOIN SERVICOITEM SI ON (SI.CD_EMPRESA = OS.CD_EMPRESA
AND SI.NR_ORDEMSERVICO = OS.NR_ORDEMSERVICO)
LEFT JOIN PESSOA P ON (P.CD_PESSOA = SI.CD_MECANICO)
LEFT JOIN ITEM I ON ( I.CD_ITEM = SI.CD_ITEM)
LEFT JOIN PEDIDO PD ON (PD.CD_EMPRORDEM = OS.CD_EMPRESA
AND PD.NR_ORDEMSERVICO = OS.NR_ORDEMSERVICO
AND PD.ST_PEDIDO <> 'C')
LEFT JOIN RETORNA_CHAVENOTA (PD.CD_EMPRESA, PD.NR_PEDIDO, PD.TP_PEDIDO) RCN on (RCN.O_CD_ITEM = I.CD_ITEM)
LEFT JOIN NOTA N ON (N.CD_EMPRESA = RCN.O_CD_EMPRESA
AND N.NR_LANCAMENTO = RCN.O_NR_LANCAMENTO
AND N.CD_SERIE = RCN.O_CD_SERIE
AND N.TP_NOTA = RCN.O_TP_NOTA)
WHERE OS.CD_EMPRESA = :CD_EMPRESA
AND OS.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
AND SI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO, SI.ST_TERCEIRO) CD_EMPRESA 1 NR_ORDEMSERVICO ST_TERCEIRO CD_EMPRESA NR_ORDEMSERVICO ST_TERCEIRO
queryOS #2
SELECT OS.VL_ORDEMSERVICO, FV.O_DS_VALOR, OS.CD_EMPRESA, OS.NR_ORDEMSERVICO, {#10} COALESCE(EPE.NR_FONE, COALESCE(EPE.NR_FAX, EPE.NR_CELULAR)) NR_FONEE, EPE.NR_INSCEST NR_INSCESTE,{#10} (
SELECT O_VALOR
FROM VALOR_EXTENSO(OS.VL_ORDEMSERVICO))||'.' DS_DUPLICATA, {#10} COALESCE(EP.NR_FONE, COALESCE(EP.NR_FAX, EP.NR_CELULAR)) NR_FONE, EP.NR_INSCEST NR_INSCEST, EP.DS_BAIRRO DS_BAIRRO,{#10} PF.NR_RG,{#10} E.NM_EMPRESA, PE.NM_PESSOA RAZAO, PE.NM_FANTASIA, {#10} EPE.DS_ENDERECO||', '||COALESCE(EPE.NR_ENDERECO, '')|| {#10} COALESCE(' - '||EPE.DS_BAIRRO, '')||' - '||ME.DS_MUNICIPIO||'-'||ME.SG_ESTADO DS_ENDERECOEMPRESA,{#10} EPE.NR_CEP NR_CEPEMPRESA, EPE.NR_FONE NR_FONEEMPRESA, EPE.NR_FAX NR_FAXEMPRESA, PE.NR_CNPJCPF NR_CNPJEMPRESA, {#10} EPE.NR_INSCEST NR_IEEMPRESA, (OS.DT_EMISSAO + COALESCE(OS.HR_EMISSAO, CAST('00:00:00' AS TIME))) DT_EMISSAO, OS.DT_EMISSAO DT_DATA, OS.NR_ORDEMSERVICO, CAST(P.CD_PESSOA AS VARCHAR(12))||' - '||P.NM_PESSOA DS_CLIENTE,{#10} P.CD_PESSOA, P.NM_PESSOA, OS.CD_VENDEDOR, VEND.NM_PESSOA NM_VENDEDOR,{#10} EP.NR_CEP NR_CEPPESSOA,{#10} EP.DS_ENDERECO||', '||COALESCE(EP.NR_ENDERECO, '')||{#10} COALESCE(' - '||EP.DS_BAIRRO, '')||' - '||M.DS_MUNICIPIO||'-'||M.SG_ESTADO DS_ENDERECOPESSOA,{#10} M.DS_MUNICIPIO||'-'||M.SG_ESTADO DS_MUNICIPIO,{#10} EP.NR_CELULAR, EP.NR_FAX, P.NR_CNPJCPF,{#10} CASE WHEN CHAR_LENGTH(P.NR_CNPJCPF) > 14 THEN EP.NR_INSCEST ELSE PF.NR_RG END NR_IERG,{#10} COALESCE(MV.DS_MARCAVEICULO||'/', '')||COALESCE(MOV.DS_MODELOVEICULO||' ','')||COALESCE(V.NR_ANO, '') DS_VEICULO,{#10} COALESCE(MV.DS_MARCAVEICULO||'/', '')||COALESCE(MOV.DS_MODELOVEICULO||' ','')||COALESCE(V.NR_ANO, '') DS_VEIC,{#10} COALESCE(MOV.DS_MODELOVEICULO, '')DS_MODELO,{#10} COALESCE(MV.DS_MARCAVEICULO, '')DS_MARCA,{#10} V.NR_PLACA, PLV.DS_PLATAFORMAVEICULO, MVP.DS_MARCAVEICULO||' '||COALESCE(MOP.DS_MODELOVEICULO, '') DS_MODELOPLATAFORMA,{#10} OS.DS_OBSERVACAO, U.NM_USUARIO,{#10} OS.CD_FORMAPAGTO||' - '||FP.DS_FORMAPAGTO DS_FORMAPAGTO,{#10} OS.CD_CONDPAGTO, CP.DS_CONDPAGTO DS_CONDPAGTO_OS,{#10} PFI.O_DS_CONDICAO DS_CONDPAGTO,{#10} PD.NR_PEDIDO, OS.DS_TECNICA,{#10} COPIA_TEXTO(OS.DS_TECNICA, 1, CHAR_LENGTH(OS.DS_TECNICA))||COALESCE(' - '||OS.NR_PLACA,'')||COALESCE(' - '||OS.NR_FROTA,'')||COALESCE(' - '||OS.NR_KILOMETRAGEM,'') DS_OBSERV,{#10} CAST(PFI.O_VL_TOTAL AS DOM_NUMERIC15_3) O_VL_TOTAL, CAST(PFI.O_VL_TOTALJURO AS DOM_NUMERIC15_3) O_VL_TOTALJURO, OS.DT_ENTREGA,{#10} V.NR_CHASSIS, CV.DS_CORVEICULO, COALESCE(MV.DS_MARCAVEICULO, '')||COALESCE('/'||MOV.DS_MODELOVEICULO, '') DS_MODELOVEICULO,{#10} COALESCE(V.NR_ANO,'')||COALESCE('/'||V.NR_ANOMODELO,'') NR_ANOMODELO, PM.DS_LOGOTIPO, 'ORDEM DE SERVIÇO' NM_DOCUMENTO,{#10} OS.NR_BOX , PE.DS_EMAIL DS_EMAILEMPRESA , OS.NR_KILOMETRAGEM, OS.HR_EMISSAO, RVV.O_DS_VENDEDORES NM_VARIOSVENDEDORES, V.NR_ANO, V.CD_CORVEICULO,{#10} V.NR_FROTA,{#10} (
SELECT SUM(VL_TOTAL) VL_TOTORDEM{#10}
FROM({#10}
SELECT OSI.VL_TOTAL{#10}
FROM ORDEMSERVITEM OSI{#10}
WHERE OSI.CD_EMPRESA = :CD_EMPRESA{#10}
AND OSI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO{#10}
AND OSI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,OSI.ST_TERCEIRO){#10}{#10}
UNION ALL{#10}{#10}
SELECT SI.VL_TOTAL{#10}
FROM SERVICOITEM SI{#10}
WHERE SI.CD_EMPRESA = :CD_EMPRESA{#10}
AND SI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO{#10}
AND SI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,SI.ST_TERCEIRO){#10} ){#10} ),{#10} (
SELECT SUM(VL_LIQUIDO) VL_TOTLIQORD{#10}
FROM({#10}
SELECT OSI.VL_TOTAL - COALESCE(OSI.VL_DESCONTO,0) VL_LIQUIDO{#10}
FROM ORDEMSERVITEM OSI{#10}
WHERE OSI.CD_EMPRESA = :CD_EMPRESA{#10}
AND OSI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO{#10}
AND OSI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,OSI.ST_TERCEIRO){#10}{#10}
UNION ALL{#10}{#10}
SELECT SI.VL_TOTAL - COALESCE(SI.VL_DESCONTO, 0) VL_LIQUIDO{#10}
FROM SERVICOITEM SI{#10}
WHERE SI.CD_EMPRESA = :CD_EMPRESA{#10}
AND SI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO{#10}
AND SI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,SI.ST_TERCEIRO){#10} ){#10} ),{#10} (
SELECT SUM(VL_DESCONTO) VL_TOTDESCORD{#10}
FROM({#10}
SELECT COALESCE(OSI.VL_DESCONTO, 0) VL_DESCONTO{#10}
FROM ORDEMSERVITEM OSI {#10}
WHERE OSI.CD_EMPRESA = :CD_EMPRESA{#10}
AND OSI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO{#10}
AND OSI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,OSI.ST_TERCEIRO){#10}{#10}
UNION ALL{#10}{#10}
SELECT COALESCE(SI.VL_DESCONTO, 0) VL_DESCONTO{#10}
FROM SERVICOITEM SI{#10}
WHERE SI.CD_EMPRESA = :CD_EMPRESA{#10}
AND SI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO{#10}
AND SI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,SI.ST_TERCEIRO){#10} ){#10} ), {#10} OS.DE_EXTINI, OS.DE_INTINI, OS.DD_INTINI, OS.DD_EXTINI, {#10} OS.TE_EXTINI, OS.TE_INTINI, OS.TD_INTINI, OS.TD_EXTINI, {#10} OS.DE_EXTFIM, OS.DE_INTFIM, OS.DD_INTFIM, OS.DD_EXTFIM, {#10} OS.TE_EXTFIM, OS.TE_INTFIM, OS.TD_INTFIM, OS.TD_EXTFIM, {#10} OS.DT_EMISSAO + COALESCE(POF.NR_DIASGARANTIA, 0) DT_GARANTIA, {#10} OS.NR_KILOMETRAGEM + COALESCE(POF.NR_QUILOMETRAGEM ,0) KM_GARANTIA, {#10} OSD.BI_DOCUMENTO BI_ASSINATURA {#10 + iCampos + #10}
FROM ORDEMSERVICO OS{#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = OS.CD_EMPRESA){#10}
LEFT JOIN USUARIO USU ON (USU.CD_USUARIO = OS.CD_USUARIO){#10}
INNER JOIN PESSOA PE ON (PE.CD_PESSOA = E.CD_PESSOA){#10}
INNER JOIN ENDERECOPESSOA EPE ON (EPE.CD_PESSOA = PE.CD_PESSOA{#10}
AND EPE.CD_ENDERECO = 1){#10}
INNER JOIN MUNICIPIO ME ON (ME.CD_MUNICIPIO = EPE.CD_MUNICIPIO){#10}{#10}
INNER JOIN PESSOA P ON (P.CD_PESSOA = OS.CD_PESSOA){#10}
LEFT JOIN PESSOAFISICA PF ON (PF.CD_PESSOA = P.CD_PESSOA){#10}
INNER JOIN ENDERECOPESSOA EP ON (EP.CD_PESSOA = P.CD_PESSOA {#10}
AND EP.CD_ENDERECO = OS.CD_ENDERECO){#10}
INNER JOIN MUNICIPIO M ON (M.CD_MUNICIPIO = EP.CD_MUNICIPIO){#10}
INNER JOIN PARMFATUR PM ON (PM.CD_EMPRESA = E.CD_EMPRESA){#10}
INNER JOIN PARMOFICINA POF ON (POF.CD_EMPRESA = E.CD_EMPRESA) {#10#10}
LEFT JOIN VEICULO V ON (V.NR_PLACA = OS.NR_PLACA){#10}
LEFT JOIN PESSOA PV ON (PV.CD_PESSOA = V.CD_PESSOA){#10}
LEFT JOIN MARCAVEICULO MV ON (MV.CD_MARCAVEICULO = V.CD_MARCAVEICULO){#10}
LEFT JOIN MODELOVEICULO MOV ON (MOV.CD_MARCAVEICULO = V.CD_MARCAVEICULO{#10}
AND MOV.CD_MODELOVEICULO = V.CD_MODELOVEICULO){#10}
LEFT JOIN PLATAFORMAVEICULO PLV ON (PLV.CD_PLATAFORMAVEICULO = OS.CD_PLATAFORMAVEICULO){#10}
LEFT JOIN MARCAVEICULO MVP ON (MVP.CD_MARCAVEICULO = OS.CD_MARCAVEICULO){#10}
LEFT JOIN MODELOVEICULO MOP ON (MOP.CD_MARCAVEICULO = OS.CD_MARCAVEICULO{#10}
AND MOP.CD_MODELOVEICULO = OS.CD_MODELOVEICULO){#10}
LEFT JOIN CORVEICULO CV ON (CV.CD_CORVEICULO = V.CD_CORVEICULO){#10}
LEFT JOIN FORMAPAGTO FP ON (FP.CD_FORMAPAGTO = OS.CD_FORMAPAGTO){#10}
LEFT JOIN CONDPAGTO CP ON (CP.CD_CONDPAGTO = OS.CD_CONDPAGTO){#10}
LEFT JOIN PARCELA_FINANCIAMENTO(OS.CD_CONDPAGTO, OS.VL_ORDEMSERVICO, NULLIF(OS.VL_ENTRADA, 0)) PFI ON (0=0){#10}
LEFT JOIN SESSAO ON (SESSAO.NR_CONEXAO = CURRENT_CONNECTION){#10}
LEFT JOIN USUARIO U ON (U.CD_USUARIO = SESSAO.CD_USUARIO){#10}
LEFT JOIN PESSOA VEND ON (VEND.CD_PESSOA = OS.CD_VENDEDOR){#10}
LEFT JOIN PEDIDO PD ON (PD.CD_EMPRORDEM = OS.CD_EMPRESA{#10}
AND PD.NR_ORDEMSERVICO = OS.NR_ORDEMSERVICO{#10}
AND PD.ST_PEDIDO <> 'C'){#10}
LEFT JOIN FORMATA_VALOR(OS.VL_ENTRADA) FV ON (0=0){#10}
LEFT JOIN RETORNA_VARIOSVENDEDORES(OS.CD_EMPRESA, OS.NR_ORDEMSERVICO, NULL, NULL, 'OF') RVV ON (1=1){#10}
LEFT JOIN ORDEMSERVICODOC OSD ON (OSD.NR_SEQUENCIA = 0 {#10}
queryOSI #1
{frmLOF000}
queryOSI #2
{frmLOF000}
querySI #1
{frmLOF000}
querySI #2
{frmLOF000}
queryOSI #3
{StringReplace}
queryOSI #4
{StringReplace}
queryOSIT #1
{StringReplace}
queryOSIT #2
{StringReplace}
querySI #3
{StringReplace}
querySI #4
{StringReplace}
queryTotais #1
{StringReplace}
querySI #5
{sqlCopy}
queryOS #3
{StringReplace}
queryOS #4
{StringReplace}
queryOS #5
{StringReplace}
queryOSI #5
{StringReplace}
queryOSI #6
{StringReplace}
queryOSI #7
{StringReplace}
queryOSIT #3
{StringReplace}
queryOSIT #4
{StringReplace}
queryOSIT #5
{StringReplace}
querySI #6
{StringReplace}
querySI #7
{StringReplace}
querySI #8
{StringReplace}
queryTotais #2
{StringReplace}
queryTotais #3
{StringReplace}
queryTotais #4
{StringReplace}
queryCONTA #1
{StringReplace}
queryCONTA #2
{StringReplace}
queryDUPLICATA #1
{StringReplace}
queryDUPLICATA #2
{StringReplace}
queryServicoPeca #1
{StringReplace}
queryServicoPeca #2
{StringReplace}
queryServicoPeca #3
{StringReplace}
sqlDados
SELECT SI.CD_EMPRESA, SI.NR_ORDEMSERVICO, {#10} SI.CD_ITEM {#10}
FROM SERVICOITEM SI {#10}
WHERE SI.CD_EMPRESA = {iParametros[2] + #10}
AND SI.NR_ORDEMSERVICO = {iParametros[3] + #10}
AND (COALESCE(SI.QT_IMPRESSA, 0) < COALESCE(SI.QT_SERVICOITEM, 0) {#10}
OR COALESCE(SI.PS_IMPRESSA, 0) < COALESCE(SI.PS_SERVICOITEM, 0)) {#10}
ORDER BY SI.CD_ITEM
Consulta #1
SELECT PO.ST_SERVTERCEIROS {#10}
FROM PARMOFICINA PO {#10}
WHERE PO.CD_EMPRESA = {IntToStr(sessao.empresa.cd_Empresa)}
Text
SELECT OS.VL_ORDEMSERVICO, FV.O_DS_VALOR, OS.CD_EMPRESA, OS.NR_ORDEMSERVICO, {#10} COALESCE(EPE.NR_FONE, COALESCE(EPE.NR_FAX, EPE.NR_CELULAR)) NR_FONEE, EPE.NR_INSCEST NR_INSCESTE,{#10} (
SELECT O_VALOR
FROM VALOR_EXTENSO(OS.VL_ORDEMSERVICO))||'.' DS_DUPLICATA, {#10} COALESCE(EP.NR_FONE, COALESCE(EP.NR_FAX, EP.NR_CELULAR)) NR_FONE, EP.NR_INSCEST NR_INSCEST, EP.DS_BAIRRO DS_BAIRRO,{#10} PF.NR_RG,{#10} E.NM_EMPRESA, PE.NM_PESSOA RAZAO, PE.NM_FANTASIA, {#10} EPE.DS_ENDERECO||', '||COALESCE(EPE.NR_ENDERECO, '')|| {#10} COALESCE(' - '||EPE.DS_BAIRRO, '')||' - '||ME.DS_MUNICIPIO||'-'||ME.SG_ESTADO DS_ENDERECOEMPRESA,{#10} EPE.NR_CEP NR_CEPEMPRESA, EPE.NR_FONE NR_FONEEMPRESA, EPE.NR_FAX NR_FAXEMPRESA, PE.NR_CNPJCPF NR_CNPJEMPRESA, {#10} EPE.NR_INSCEST NR_IEEMPRESA, (OS.DT_EMISSAO + COALESCE(OS.HR_EMISSAO, CAST('00:00:00' AS TIME))) DT_EMISSAO, OS.DT_EMISSAO DT_DATA, OS.NR_ORDEMSERVICO, CAST(P.CD_PESSOA AS VARCHAR(12))||' - '||P.NM_PESSOA DS_CLIENTE,{#10} P.CD_PESSOA, P.NM_PESSOA, OS.CD_VENDEDOR, VEND.NM_PESSOA NM_VENDEDOR,{#10} EP.NR_CEP NR_CEPPESSOA,{#10} EP.DS_ENDERECO||', '||COALESCE(EP.NR_ENDERECO, '')||{#10} COALESCE(' - '||EP.DS_BAIRRO, '')||' - '||M.DS_MUNICIPIO||'-'||M.SG_ESTADO DS_ENDERECOPESSOA,{#10} M.DS_MUNICIPIO||'-'||M.SG_ESTADO DS_MUNICIPIO,{#10} EP.NR_CELULAR, EP.NR_FAX, P.NR_CNPJCPF,{#10} CASE WHEN CHAR_LENGTH(P.NR_CNPJCPF) > 14 THEN EP.NR_INSCEST ELSE PF.NR_RG END NR_IERG,{#10} COALESCE(MV.DS_MARCAVEICULO||'/', '')||COALESCE(MOV.DS_MODELOVEICULO||' ','')||COALESCE(V.NR_ANO, '') DS_VEICULO,{#10} COALESCE(MV.DS_MARCAVEICULO||'/', '')||COALESCE(MOV.DS_MODELOVEICULO||' ','')||COALESCE(V.NR_ANO, '') DS_VEIC,{#10} COALESCE(MOV.DS_MODELOVEICULO, '')DS_MODELO,{#10} COALESCE(MV.DS_MARCAVEICULO, '')DS_MARCA,{#10} V.NR_PLACA, PLV.DS_PLATAFORMAVEICULO, MVP.DS_MARCAVEICULO||' '||COALESCE(MOP.DS_MODELOVEICULO, '') DS_MODELOPLATAFORMA,{#10} OS.DS_OBSERVACAO, U.NM_USUARIO,{#10} OS.CD_FORMAPAGTO||' - '||FP.DS_FORMAPAGTO DS_FORMAPAGTO,{#10} OS.CD_CONDPAGTO, CP.DS_CONDPAGTO DS_CONDPAGTO_OS,{#10} PFI.O_DS_CONDICAO DS_CONDPAGTO,{#10} PD.NR_PEDIDO, OS.DS_TECNICA,{#10} COPIA_TEXTO(OS.DS_TECNICA, 1, CHAR_LENGTH(OS.DS_TECNICA))||COALESCE(' - '||OS.NR_PLACA,'')||COALESCE(' - '||OS.NR_FROTA,'')||COALESCE(' - '||OS.NR_KILOMETRAGEM,'') DS_OBSERV,{#10} CAST(PFI.O_VL_TOTAL AS DOM_NUMERIC15_3) O_VL_TOTAL, CAST(PFI.O_VL_TOTALJURO AS DOM_NUMERIC15_3) O_VL_TOTALJURO, OS.DT_ENTREGA,{#10} V.NR_CHASSIS, CV.DS_CORVEICULO, COALESCE(MV.DS_MARCAVEICULO, '')||COALESCE('/'||MOV.DS_MODELOVEICULO, '') DS_MODELOVEICULO,{#10} COALESCE(V.NR_ANO,'')||COALESCE('/'||V.NR_ANOMODELO,'') NR_ANOMODELO, PM.DS_LOGOTIPO, 'ORDEM DE SERVIÇO' NM_DOCUMENTO,{#10} OS.NR_BOX , PE.DS_EMAIL DS_EMAILEMPRESA , OS.NR_KILOMETRAGEM, OS.HR_EMISSAO, RVV.O_DS_VENDEDORES NM_VARIOSVENDEDORES, V.NR_ANO, V.CD_CORVEICULO,{#10} V.NR_FROTA,{#10} (
SELECT SUM(VL_TOTAL) VL_TOTORDEM{#10}
FROM({#10}
SELECT OSI.VL_TOTAL{#10}
FROM ORDEMSERVITEM OSI{#10}
WHERE OSI.CD_EMPRESA = :CD_EMPRESA{#10}
AND OSI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO{#10}
AND OSI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,OSI.ST_TERCEIRO){#10}{#10}
UNION ALL{#10}{#10}
SELECT SI.VL_TOTAL{#10}
FROM SERVICOITEM SI{#10}
WHERE SI.CD_EMPRESA = :CD_EMPRESA{#10}
AND SI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO{#10}
AND SI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,SI.ST_TERCEIRO){#10} ){#10} ),{#10} (
SELECT SUM(VL_LIQUIDO) VL_TOTLIQORD{#10}
FROM({#10}
SELECT OSI.VL_TOTAL - COALESCE(OSI.VL_DESCONTO,0) VL_LIQUIDO{#10}
FROM ORDEMSERVITEM OSI{#10}
WHERE OSI.CD_EMPRESA = :CD_EMPRESA{#10}
AND OSI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO{#10}
AND OSI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,OSI.ST_TERCEIRO){#10}{#10}
UNION ALL{#10}{#10}
SELECT SI.VL_TOTAL - COALESCE(SI.VL_DESCONTO, 0) VL_LIQUIDO{#10}
FROM SERVICOITEM SI{#10}
WHERE SI.CD_EMPRESA = :CD_EMPRESA{#10}
AND SI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO{#10}
AND SI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,SI.ST_TERCEIRO){#10} ){#10} ),{#10} (
SELECT SUM(VL_DESCONTO) VL_TOTDESCORD{#10}
FROM({#10}
SELECT COALESCE(OSI.VL_DESCONTO, 0) VL_DESCONTO{#10}
FROM ORDEMSERVITEM OSI {#10}
WHERE OSI.CD_EMPRESA = :CD_EMPRESA{#10}
AND OSI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO{#10}
AND OSI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,OSI.ST_TERCEIRO){#10}{#10}
UNION ALL{#10}{#10}
SELECT COALESCE(SI.VL_DESCONTO, 0) VL_DESCONTO{#10}
FROM SERVICOITEM SI{#10}
WHERE SI.CD_EMPRESA = :CD_EMPRESA{#10}
AND SI.NR_ORDEMSERVICO = :NR_ORDEMSERVICO{#10}
AND SI.ST_TERCEIRO = COALESCE(:ST_TERCEIRO,SI.ST_TERCEIRO){#10} ){#10} ), {#10} OS.DE_EXTINI, OS.DE_INTINI, OS.DD_INTINI, OS.DD_EXTINI, {#10} OS.TE_EXTINI, OS.TE_INTINI, OS.TD_INTINI, OS.TD_EXTINI, {#10} OS.DE_EXTFIM, OS.DE_INTFIM, OS.DD_INTFIM, OS.DD_EXTFIM, {#10} OS.TE_EXTFIM, OS.TE_INTFIM, OS.TD_INTFIM, OS.TD_EXTFIM, {#10} OS.DT_EMISSAO + COALESCE(POF.NR_DIASGARANTIA, 0) DT_GARANTIA, {#10} OS.NR_KILOMETRAGEM + COALESCE(POF.NR_QUILOMETRAGEM ,0) KM_GARANTIA, {#10} OSD.BI_DOCUMENTO BI_ASSINATURA {#10 + iCampos + #10}
FROM ORDEMSERVICO OS{#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = OS.CD_EMPRESA){#10}
LEFT JOIN USUARIO USU ON (USU.CD_USUARIO = OS.CD_USUARIO){#10}
INNER JOIN PESSOA PE ON (PE.CD_PESSOA = E.CD_PESSOA){#10}
INNER JOIN ENDERECOPESSOA EPE ON (EPE.CD_PESSOA = PE.CD_PESSOA{#10}
AND EPE.CD_ENDERECO = 1){#10}
INNER JOIN MUNICIPIO ME ON (ME.CD_MUNICIPIO = EPE.CD_MUNICIPIO){#10}{#10}
INNER JOIN PESSOA P ON (P.CD_PESSOA = OS.CD_PESSOA){#10}
LEFT JOIN PESSOAFISICA PF ON (PF.CD_PESSOA = P.CD_PESSOA){#10}
INNER JOIN ENDERECOPESSOA EP ON (EP.CD_PESSOA = P.CD_PESSOA {#10}
AND EP.CD_ENDERECO = OS.CD_ENDERECO){#10}
INNER JOIN MUNICIPIO M ON (M.CD_MUNICIPIO = EP.CD_MUNICIPIO){#10}
INNER JOIN PARMFATUR PM ON (PM.CD_EMPRESA = E.CD_EMPRESA){#10}
INNER JOIN PARMOFICINA POF ON (POF.CD_EMPRESA = E.CD_EMPRESA) {#10#10}
LEFT JOIN VEICULO V ON (V.NR_PLACA = OS.NR_PLACA){#10}
LEFT JOIN PESSOA PV ON (PV.CD_PESSOA = V.CD_PESSOA){#10}
LEFT JOIN MARCAVEICULO MV ON (MV.CD_MARCAVEICULO = V.CD_MARCAVEICULO){#10}
LEFT JOIN MODELOVEICULO MOV ON (MOV.CD_MARCAVEICULO = V.CD_MARCAVEICULO{#10}
AND MOV.CD_MODELOVEICULO = V.CD_MODELOVEICULO){#10}
LEFT JOIN PLATAFORMAVEICULO PLV ON (PLV.CD_PLATAFORMAVEICULO = OS.CD_PLATAFORMAVEICULO){#10}
LEFT JOIN MARCAVEICULO MVP ON (MVP.CD_MARCAVEICULO = OS.CD_MARCAVEICULO){#10}
LEFT JOIN MODELOVEICULO MOP ON (MOP.CD_MARCAVEICULO = OS.CD_MARCAVEICULO{#10}
AND MOP.CD_MODELOVEICULO = OS.CD_MODELOVEICULO){#10}
LEFT JOIN CORVEICULO CV ON (CV.CD_CORVEICULO = V.CD_CORVEICULO){#10}
LEFT JOIN FORMAPAGTO FP ON (FP.CD_FORMAPAGTO = OS.CD_FORMAPAGTO){#10}
LEFT JOIN CONDPAGTO CP ON (CP.CD_CONDPAGTO = OS.CD_CONDPAGTO){#10}
LEFT JOIN PARCELA_FINANCIAMENTO(OS.CD_CONDPAGTO, OS.VL_ORDEMSERVICO, NULLIF(OS.VL_ENTRADA, 0)) PFI ON (0=0){#10}
LEFT JOIN SESSAO ON (SESSAO.NR_CONEXAO = CURRENT_CONNECTION){#10}
LEFT JOIN USUARIO U ON (U.CD_USUARIO = SESSAO.CD_USUARIO){#10}
LEFT JOIN PESSOA VEND ON (VEND.CD_PESSOA = OS.CD_VENDEDOR){#10}
LEFT JOIN PEDIDO PD ON (PD.CD_EMPRORDEM = OS.CD_EMPRESA{#10}
AND PD.NR_ORDEMSERVICO = OS.NR_ORDEMSERVICO{#10}
AND PD.ST_PEDIDO <> 'C'){#10}
LEFT JOIN FORMATA_VALOR(OS.VL_ENTRADA) FV ON (0=0){#10}
LEFT JOIN RETORNA_VARIOSVENDEDORES(OS.CD_EMPRESA, OS.NR_ORDEMSERVICO, NULL, NULL, 'OF') RVV ON (1=1){#10}
LEFT JOIN ORDEMSERVICODOC OSD ON (OSD.NR_SEQUENCIA = 0 {#10 +//RESERVADO PARA A ASSINATURA DA ORDEM QUANDO VEM DO WEB}
AND OSD.CD_EMPRESA = OS.CD_EMPRESA {#10}
AND OSD.NR_ORDEMSERVICO = OS.NR_ORDEMSERVICO) {#10}
WHERE OS.CD_EMPRESA = :CD_EMPRESA {#10}
AND OS.NR_ORDEMSERVICO = :NR_ORDEMSERVICO
Consulta #2
SELECT SI.NR_ORDEMSERVICO {#10}
FROM SERVICOITEM SI {#10}
WHERE SI.CD_EMPRESA = {iParametros[2] + #10}
AND (COALESCE(SI.QT_IMPRESSA, 0) < COALESCE(SI.QT_SERVICOITEM, 0) {#10}
OR COALESCE(SI.PS_IMPRESSA, 0) < COALESCE(SI.PS_SERVICOITEM, 0)) {#10}
AND SI.NR_ORDEMSERVICO = {iParametros[3]}
Consulta #3
UPDATE SERVICOITEM SI
SET SI.ST_IMPRESSAO = 'S', {#10} SI.QT_IMPRESSA = SI.QT_SERVICOITEM, {#10} SI.PS_IMPRESSA = SI.PS_SERVICOITEM {#10}
WHERE SI.CD_EMPRESA = {iParametros[2] + #10}
AND SI.NR_ORDEMSERVICO = {iParametros[3] + #10}
AND SI.CD_ITEM = {Nulo(tabDados.FieldByName(}CD_ITEM{).AsString,}I{)}
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
CALCULA_IMPOSTOPEDIDO | referenciada nas queries do layout |
CONDPAGTO | referenciada nas queries do layout |
CORVEICULO | referenciada nas queries do layout |
EMPRESA | referenciada nas queries do layout |
ENDERECOPESSOA | referenciada nas queries do layout |
FORMAPAGTO | referenciada nas queries do layout |
FORMATA_VALOR | referenciada nas queries do layout |
ITEM | referenciada nas queries do layout |
MARCAVEICULO | referenciada nas queries do layout |
MODELOVEICULO | referenciada nas queries do layout |
MOVIMENTACAO | referenciada nas queries do layout |
MUNICIPIO | referenciada nas queries do layout |
NOTA | referenciada nas queries do layout |
ORDEMSERVICO | referenciada nas queries do layout |
ORDEMSERVICODOC | referenciada nas queries do layout |
ORDEMSERVITEM | referenciada nas queries do layout |
PARCELA_FINANCIAMENTO | referenciada nas queries do layout |
PARMFATUR | referenciada nas queries do layout |
PARMOFICINA | referenciada nas queries do layout |
PEDIDO | referenciada nas queries do layout |
PESSOA | referenciada nas queries do layout |
PESSOAFISICA | referenciada nas queries do layout |
PLATAFORMAVEICULO | referenciada nas queries do layout |
RETORNA_CHAVENOTA | referenciada nas queries do layout |
RETORNA_DADOSCADASTRAIS | referenciada nas queries do layout |
RETORNA_LOCAISARMAZENAGEM | referenciada nas queries do layout |
RETORNA_VARIOSVENDEDORES | referenciada nas queries do layout |
SERVICOITEM | referenciada nas queries do layout |
SESSAO | referenciada nas queries do layout |
TIPOCALCULO | referenciada nas queries do layout |
USUARIO | referenciada nas queries do layout |
VALOR_EXTENSO | referenciada nas queries do layout |
VEICULO | referenciada nas queries do layout |
VIEW_CONTASORDEMSERVICO | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LOF000/ULOF000.pas - DFM:
source/LOF000/ULOF000.dfm - Package:
source/LOF000/LOF000.dpk