Pular para o conteúdo principal

LLT004 — Layout LLT004

Visão Geral​

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

Descrição​

Consulta baseada em CLASSIFICACAOLAUDO, com junção em ITEMPEDIDOPNEU, ORDEMPRODUCAORECAP, PEDIDOPNEU, PNEU, DESENHOPNEU, SERVICOPNEU (+13), filtrada por ID_LAUDOTECNICO, ST_ANALISELAUDO, ST_IMPRIMEACERTO, NRV, NRDOTMICHEL, CD_PESSOA (+12).

Chamada​

ExecLayout(Connection, [
// 0 - Nome do Layout
// 1 - Cod Empresa
// 2 - id laudo
// 3 - Path Servidor
// 4 - Visualiza -> V ou Imprime -> I
// 5 - Nr Ordem Produção
// 6 - Imprime a observação
// 7 - Imprime o acerto comercial
]);

SQL Base​

tabPedidoPneu #1​

SELECT DISTINCT E.NM_EMPRESA, L.DT_LAUDO, L.DT_REGISTRO, L.NR_LAUDO ID, L.NR_LAUDO, PC.NM_PESSOA, I.IDPNEU,MEDP.DSMEDIDAPNEU, MODP.DSMODELO, MARP.DSMARCA , COALESCE(L.NR_SERIE, PN.NRSERIE) NRSERIE, COALESCE(PN.NRFOGO, L.NR_FOGO) NRFOGO, COALESCE(L.NR_DOT, PN.NRDOT) NRDOT, O.ID NR_ORDEMPRODUCAO, CL.DSMOTIVO, COALESCE(ML.DSCAUSA, CL.DSCAUSA) DSCAUSA, COALESCE(ML.DSRECOMENDACOES, CL.DSRECOMENDACOES) DSRECOMENDACOES, CL.DSIMAGEM, CL.DSEXTENSAO, CL.DSIMAGEM2, CL.DSEXTENSAO2, CAST(:ST_IMPRIMEOBS AS DOM_CHAR1) ST_IMPRIMEOBS, CAST(:ST_IMPRIMEACERTO AS DOM_CHAR1) ST_IMPRIMEACERTO, CAST((
SELECT (SUM(C.PC_CLASSIFICACAO) * L.VL_SERVICO) / 100
FROM CLASSIFICACAOLAUDO C
WHERE C.ID_LAUDOTECNICO = L.ID) AS DOM_NUMERIC15_3) VL_REPOSICAO, L.DS_OBSERVACAO, CAST((
SELECT SUM(C.PC_CLASSIFICACAO)
FROM CLASSIFICACAOLAUDO C
WHERE C.ID_LAUDOTECNICO = L.ID) AS DOM_NUMERIC15_3) PC_REPOSICAO, CAST((
SELECT (SUM(C.PC_CLASSIFICACAO) * L.VL_SERVICO) / 100
FROM CLASSIFICACAOLAUDO C
WHERE C.ID_LAUDOTECNICO = L.ID) AS DOM_NUMERIC15_3) VL_REPOSICAO, FORMAT_MESSAGE(CAST( CASE WHEN L.ST_ANALISELAUDO = 'S' THEN 'PROCEDENTE' WHEN (L.ST_ANALISELAUDO = 'N')
AND (:ST_IMPRIMEACERTO = 'S') THEN 'ACERTO COMERCIAL' ELSE 'NÃO PROCEDENTE' END AS DOM_VARCHAR60)) DS_STATUS, COALESCE(N.NR_NOTAFOR, N.NR_NOTAFISCAL) NR_NOTAFISCAL, RD.DS_MUNICIPIO, D.DSDESENHO, FORMAT_MESSAGE(CASE L.TP_REFORMA WHEN 'R' THEN 'RECAPAGEM' WHEN 'C' THEN 'CONSERTO' WHEN 'H' THEN 'RECAUCHUTAGEM' WHEN 'M' THEN 'REMODELAGEM' END) DS_TPREFORMA , COALESCE(L.NR_SERIE, PN.NRSERIE) NRSERIEPNEU, L.NR_SERIE NRSERIELAUDO, PNO.NRSERIE NRSERIEORIGEM, COALESCE(L.IDREFORMADORA, PR.IDREFORMADORA, '')||COALESCE(L.NRVINHETARECAPAGEM, OPR.NRVINHETARECAPAGEM) NRDOTMICHELIN, L.ID IDLAUDO, L.NR_RECAPE, L.QT_PROFUNDIDADE, IPL.IDPEDIDOPNEU, PPG.IDPEDIDOMOVEL, V.CD_VENDEDOR, (
SELECT P.NM_PESSOA
FROM PESSOA P
WHERE P.CD_PESSOA = V.CD_VENDEDOR) NM_VENDEDOR
FROM LAUDOTECNICOPNEURECAP L
LEFT JOIN ITEMPEDIDOPNEU I ON (I.ID = L.IDITEMPEDIDOPNEUORIGEM)
LEFT JOIN ITEMPEDIDOPNEU IO ON (IO.ID = L.IDITEMPEDIDOPNEUGARANTIA)
LEFT JOIN ORDEMPRODUCAORECAP O ON (O.IDITEMPEDIDOPNEU = IO.ID)
LEFT JOIN ITEMPEDIDOPNEU IPL ON (IPL.ID = COALESCE(L.IDITEMPEDIDOPNEUGARANTIA,L.IDITEMPEDIDOPNEUORIGEM))
LEFT JOIN PEDIDOPNEU PPG ON (PPG.ID = IPL.IDPEDIDOPNEU)
LEFT JOIN PNEU PNO ON (PNO.ID = IO.IDPNEU)
LEFT JOIN DESENHOPNEU D ON (D.ID = COALESCE(L.CD_DESENHO, I.IDDESENHOPNEU))
LEFT JOIN SERVICOPNEU SP ON (SP.ID = I.IDSERVICOPNEU)
LEFT JOIN PEDIDOPNEU P ON ( P.ID = I.IDPEDIDOPNEU)
LEFT JOIN EMPRESA E ON (E.CD_EMPRESA = :IDEMPRESA)
LEFT JOIN PARAMRECAP PR ON(PR.IDEMPRESA = E.CD_EMPRESA)
LEFT JOIN PESSOA PE ON (PE.CD_PESSOA = E.CD_PESSOA)
LEFT JOIN PESSOA PC ON (PC.CD_PESSOA = COALESCE(L.CD_PESSOA, P.IDPESSOA))
LEFT JOIN RETORNA_DADOSCADASTRAIS(PC.CD_PESSOA,NULL) RD ON (1 = 1)
LEFT JOIN PNEU PN ON (PN.ID = I.IDPNEU)
LEFT JOIN MODELOPNEU MODP ON (MODP.ID = COALESCE(L.CD_MODELO, PN.IDMODELOPNEU))
LEFT JOIN MARCAPNEU MARP ON (MARP.ID = COALESCE(L.CD_MARCA, MODP.IDMARCAPNEU))
LEFT JOIN MEDIDAPNEU MEDP ON (MEDP.ID = COALESCE(L.CD_MEDIDA, SP.IDMEDIDAPNEU))
LEFT JOIN MOTIVOLAUDO ML ON (ML.IDLAUDOTECNICO = L.ID)
LEFT JOIN MOTIVOPNEU CL ON (CL.ID = ML.ID_MOTIVO)
LEFT JOIN PLUGORDRECAPPEDIDO PLUGP ON (PLUGP.IDORDEMPRODUCAORECAP = O.ID)
LEFT JOIN RETORNA_CHAVENOTA(PLUGP.CD_EMPRESA, PLUGP.NR_PEDIDO, PLUGP.TP_PEDIDO) RC ON (1 = 1)
LEFT JOIN ORDEMPRODUCAORECAP OPR ON(OPR.IDITEMPEDIDOPNEU = L.IDITEMPEDIDOPNEUORIGEM)
LEFT JOIN NOTA N ON (N.CD_EMPRESA = RC.O_CD_EMPRESA
AND N.NR_LANCAMENTO = RC.O_NR_LANCAMENTO
AND N.TP_NOTA = RC.O_TP_NOTA
AND N.CD_SERIE = RC.O_CD_SERIE)
LEFT JOIN VENDEDOR V ON V.CD_VENDEDOR = L.CD_VENDEDOR
WHERE L.ID in (:ID) ST_IMPRIMEACERTO IDEMPRESA
SELECT IL.DS_IMAGEM, IL.DS_IMAGEMEXTENSAO, IL.DS_NOMEIMAGEM
FROM IMAGEMLAUDO IL
WHERE IL.IDLAUDO = :IDLAUDO IDLAUDO

tabPedidoPneu #2​

SELECT DISTINCT {#10} E.NM_EMPRESA, L.DT_LAUDO, L.DT_REGISTRO, L.NR_LAUDO ID, L.NR_LAUDO,{#10} PC.CD_PESSOA, PC.NM_PESSOA, PC.CD_PESSOA || ' - ' || PC.NM_PESSOA CD_NM_PESSOA, {#10} I.IDPNEU, MEDP.DSMEDIDAPNEU, MODP.DSMODELO, MARP.DSMARCA,{#10} COALESCE(L.NR_SERIE, PN.NRSERIE) NRSERIE,{#10} COALESCE(PN.NRFOGO, L.NR_FOGO) NRFOGO, COALESCE(L.NR_DOT, PN.NRDOT) NRDOT, O.ID NR_ORDEMPRODUCAO, CL.DSMOTIVO,{#10} COALESCE(ML.DSCAUSA, CL.DSCAUSA) DSCAUSA,{#10} COALESCE(ML.DSRECOMENDACOES, CL.DSRECOMENDACOES) DSRECOMENDACOES,{#10} CL.DSIMAGEM, CL.DSEXTENSAO, CL.DSIMAGEM2, CL.DSEXTENSAO2,{#10} CAST({Nulo}

Text​

SELECT DISTINCT {#10} E.NM_EMPRESA, L.DT_LAUDO, L.DT_REGISTRO, L.NR_LAUDO ID, L.NR_LAUDO,{#10} PC.CD_PESSOA, PC.NM_PESSOA, PC.CD_PESSOA || ' - ' || PC.NM_PESSOA CD_NM_PESSOA, {#10} I.IDPNEU, MEDP.DSMEDIDAPNEU, MODP.DSMODELO, MARP.DSMARCA,{#10} COALESCE(L.NR_SERIE, PN.NRSERIE) NRSERIE,{#10} COALESCE(PN.NRFOGO, L.NR_FOGO) NRFOGO, COALESCE(L.NR_DOT, PN.NRDOT) NRDOT, O.ID NR_ORDEMPRODUCAO, CL.DSMOTIVO,{#10} COALESCE(ML.DSCAUSA, CL.DSCAUSA) DSCAUSA,{#10} COALESCE(ML.DSRECOMENDACOES, CL.DSRECOMENDACOES) DSRECOMENDACOES,{#10} CL.DSIMAGEM, CL.DSEXTENSAO, CL.DSIMAGEM2, CL.DSEXTENSAO2,{#10} CAST({Nulo(iParametros[6],}S{)} AS DOM_CHAR1) ST_IMPRIMEOBS,{#10} CAST({Nulo(iParametros[7],}S{)} AS DOM_CHAR1) ST_IMPRIMEACERTO,{#10} CAST((
SELECT (SUM(C.PC_CLASSIFICACAO) * L.VL_SERVICO) / 100{#10}
FROM CLASSIFICACAOLAUDO C{#10}
WHERE C.ID_LAUDOTECNICO = L.ID) AS DOM_NUMERIC15_3) VL_REPOSICAO, L.DS_OBSERVACAO,{#10} CAST((
SELECT SUM(C.PC_CLASSIFICACAO){#10}
FROM CLASSIFICACAOLAUDO C{#10}
WHERE C.ID_LAUDOTECNICO = L.ID) AS DOM_NUMERIC15_3) PC_REPOSICAO,{#10} CAST((
SELECT (SUM(C.PC_CLASSIFICACAO) * L.VL_SERVICO) / 100{#10}
FROM CLASSIFICACAOLAUDO C{#10}
WHERE C.ID_LAUDOTECNICO = L.ID) AS DOM_NUMERIC15_3) VL_REPOSICAO,{#10#10} FORMAT_MESSAGE(CAST({#10} CASE WHEN L.ST_ANALISELAUDO = 'S' THEN 'PROCEDENTE'{#10} WHEN (L.ST_ANALISELAUDO = 'N')
AND ({Nulo(iParametros[7],}S{)} = 'S') THEN 'ACERTO COMERCIAL'{#10} ELSE 'NÃO PROCEDENTE' END AS DOM_VARCHAR60)) DS_STATUS,{#10#10} COALESCE(N.NR_NOTAFOR, N.NR_NOTAFISCAL) NR_NOTAFISCAL,{#10} RD.DS_MUNICIPIO, D.DSDESENHO,{#10} FORMAT_MESSAGE(CASE L.TP_REFORMA WHEN 'R' THEN 'RECAPAGEM'{#10} WHEN 'C' THEN 'CONSERTO'{#10} WHEN 'H' THEN 'RECAUCHUTAGEM'{#10} WHEN 'M' THEN 'REMODELAGEM' END) DS_TPREFORMA,{#10#10} COALESCE(L.NR_SERIE, PN.NRSERIE) NRSERIEPNEU, L.NR_SERIE NRSERIELAUDO, PNO.NRSERIE NRSERIEORIGEM,{#10} COALESCE(L.IDREFORMADORA, PR.IDREFORMADORA, '')||COALESCE(L.NRVINHETARECAPAGEM, OPR.NRVINHETARECAPAGEM) NRDOTMICHELIN,{#10} L.ID IDLAUDO, L.NR_RECAPE, L.QT_PROFUNDIDADE, IPL.IDPEDIDOPNEU, PPG.IDPEDIDOMOVEL, V.CD_VENDEDOR, {#10} (
SELECT P.NM_PESSOA {#10}
FROM PESSOA P {#10}
WHERE P.CD_PESSOA = V.CD_VENDEDOR) NM_VENDEDOR, PF.DS_LOGOTIPO {#10}
FROM LAUDOTECNICOPNEURECAP L{#10}
LEFT JOIN ITEMPEDIDOPNEU I ON (I.ID = L.IDITEMPEDIDOPNEUORIGEM){#10}
LEFT JOIN ITEMPEDIDOPNEU IO ON (IO.ID = L.IDITEMPEDIDOPNEUGARANTIA){#10}
LEFT JOIN ITEMPEDIDOPNEU IPL ON (IPL.ID = COALESCE(L.IDITEMPEDIDOPNEUGARANTIA, L.IDITEMPEDIDOPNEUORIGEM)){#10}
LEFT JOIN PEDIDOPNEU PPG ON (PPG.ID = IPL.IDPEDIDOPNEU){#10}
LEFT JOIN ORDEMPRODUCAORECAP O ON (O.IDITEMPEDIDOPNEU = IO.ID {#10}
AND O.STORDEM <> 'C') {#10}
LEFT JOIN PNEU PNO ON (PNO.ID = IO.IDPNEU){#10}
LEFT JOIN DESENHOPNEU D ON (D.ID = COALESCE(L.CD_DESENHO, I.IDDESENHOPNEU)){#10}
LEFT JOIN SERVICOPNEU SP ON (SP.ID = I.IDSERVICOPNEU){#10}
LEFT JOIN PEDIDOPNEU P ON (P.ID = I.IDPEDIDOPNEU){#10}
LEFT JOIN EMPRESA E ON (E.CD_EMPRESA = {Nulo(iParametros[1],}I{)}){#10}
INNER JOIN PARMFATUR PF ON (PF.CD_EMPRESA = E.CD_EMPRESA) {#10}
LEFT JOIN PARAMRECAP PR ON(PR.IDEMPRESA = E.CD_EMPRESA){#10}
LEFT JOIN PESSOA PE ON (PE.CD_PESSOA = E.CD_PESSOA){#10}
LEFT JOIN PESSOA PC ON (PC.CD_PESSOA = COALESCE(L.CD_PESSOA, P.IDPESSOA)){#10}
LEFT JOIN RETORNA_DADOSCADASTRAIS(PC.CD_PESSOA, NULL) RD ON (1 = 1){#10}
LEFT JOIN PNEU PN ON (PN.ID = I.IDPNEU){#10}
LEFT JOIN MODELOPNEU MODP ON (MODP.ID = COALESCE(L.CD_MODELO, PN.IDMODELOPNEU)){#10}
LEFT JOIN MARCAPNEU MARP ON (MARP.ID = COALESCE(L.CD_MARCA, MODP.IDMARCAPNEU)){#10}
LEFT JOIN MEDIDAPNEU MEDP ON (MEDP.ID = COALESCE(L.CD_MEDIDA, SP.IDMEDIDAPNEU)){#10}
LEFT JOIN MOTIVOLAUDO ML ON (ML.IDLAUDOTECNICO = L.ID){#10}
LEFT JOIN MOTIVOPNEU CL ON (CL.ID = ML.ID_MOTIVO){#10}
LEFT JOIN PLUGORDRECAPPEDIDO PLUGP ON (PLUGP.IDORDEMPRODUCAORECAP = O.ID){#10}
LEFT JOIN RETORNA_CHAVENOTA(PLUGP.CD_EMPRESA, PLUGP.NR_PEDIDO, PLUGP.TP_PEDIDO) RC ON (1 = 1){#10}
LEFT JOIN ORDEMPRODUCAORECAP OPR ON (OPR.IDITEMPEDIDOPNEU = L.IDITEMPEDIDOPNEUORIGEM {#10}
AND OPR.STORDEM <> 'C') {#10}
LEFT JOIN NOTA N ON (N.CD_EMPRESA = RC.O_CD_EMPRESA{#10}
AND N.NR_LANCAMENTO = RC.O_NR_LANCAMENTO{#10}
AND N.TP_NOTA = RC.O_TP_NOTA{#10}
AND N.CD_SERIE = RC.O_CD_SERIE){#10}
LEFT JOIN VENDEDOR V ON V.CD_VENDEDOR = L.CD_VENDEDOR {#10}
WHERE L.ID IN ({iParametros[2]})

Tabelas Utilizadas​

TabelaUso
CLASSIFICACAOLAUDOreferenciada nas queries do layout
DESENHOPNEUreferenciada nas queries do layout
EMPRESAreferenciada nas queries do layout
IMAGEMLAUDOreferenciada nas queries do layout
ITEMPEDIDOPNEUreferenciada nas queries do layout
LAUDOTECNICOPNEURECAPreferenciada nas queries do layout
MARCAPNEUreferenciada nas queries do layout
MEDIDAPNEUreferenciada nas queries do layout
MODELOPNEUreferenciada nas queries do layout
MOTIVOLAUDOreferenciada nas queries do layout
MOTIVOPNEUreferenciada nas queries do layout
NOTAreferenciada nas queries do layout
ORDEMPRODUCAORECAPreferenciada nas queries do layout
PARAMRECAPreferenciada nas queries do layout
PARMFATURreferenciada nas queries do layout
PEDIDOPNEUreferenciada nas queries do layout
PESSOAreferenciada nas queries do layout
PLUGORDRECAPPEDIDOreferenciada nas queries do layout
PNEUreferenciada nas queries do layout
RETORNA_CHAVENOTAreferenciada nas queries do layout
RETORNA_DADOSCADASTRAISreferenciada nas queries do layout
SERVICOPNEUreferenciada nas queries do layout
VENDEDORreferenciada nas queries do layout

Shared Units​

  • jCommon
  • jPesquisa

Fonte​

  • Unit: source/LLT004/ULLT004.pas
  • DFM: source/LLT004/ULLT004.dfm
  • Package: source/LLT004/LLT004.dpk