LOP020 — Layout LOP020
Visão Geral
Layout de impressão da família LOP (Ordem de Serviço). Acionado via ExecLayout a partir das telas que imprimem este tipo de documento.
Descrição
Consulta baseada em ITEMORDEMPROD, com junção em EMPRESA, ITEM, FICHAPRODUCAO, PRODUCAO, RETORNA_LINHAS, TIPOCALCULO (+6), filtrada por CD_EMPRESA, NR_ORDEMPRODUCAO, O, JO, CD_ITEM, CD_MATERIAPRIMA (+8).
Chamada
ExecLayout(Connection, [
// 0 - Nome do Layout
// 1 - Cod Empresa
// 2 - Nr Ordem Producao
// 3 - Path Servidor
// 4 - Visualiza -> V ou Imprime -> I
]);
SQL Base
tabOrdem
SELECT DISTINCT O.NR_ORDEMPRODUCAO ,O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO,I.PS_LIQUIDO QTCONVERSAO, I.SG_UNIDMED, I.SG_UNIDALT, I.CD_ITEM||' - '||I.DS_ITEM ITEMPRODUZIDO, I.FORMULACAO, COALESCE(I.NR_CO||'%', '0%') NR_CO, COALESCE(I.NR_CTC||'m.mol/kg', '0 m.mol/kg') NR_CTC, COALESCE(I.NR_TOTAL||'%', '0%') NR_TOTAL, I.NR_P205||'%' NR_P205, I.NR_K2O||'%'NR_K2O, I.NR_UMMAX||'%' NR_UMMAX,O.QT_PRODUZIDA * COALESCE(I.PS_EMBALAGEM,1) QTTOTAL,I.DS_NATUREZAFISICA, I.DS_GRANULOMETRIA,O.DT_INICIOPRODUCAO DTEMISSAO, O.DT_FIMPRODUCAO DTPRODUCAO, MP.DS_ITEM INSUMOS, IO.QT_ITEMPRODUCAO PESOEMKGSTOTLOTE, O.DT_FIMPRODUCAO DTPREVISTA, -- COVERSÕES AO PESO DE BASE DE PRODUÇÃO QTCONVERSAO ((COALESCE(CAST(IO.QT_ITEMPRODUCAO AS DOM_NUMERIC15_2),0) * COALESCE(CAST(P.QT_MINPRODUCAO AS DOM_NUMERIC15_2),0))/COALESCE(CAST(O.QT_PRODUZIDA AS DOM_NUMERIC15_2),0))PESOEMKGS, RL.O_NR_LINHA, -- CONVERSÃO DA QUANTIDADE PRODUZIDA PARA A UNIDADE ALTERNATIVA CAST(O.QT_PRODUZIDA AS DOM_NUMERIC15_2)*CAST(I.PS_LIQUIDO AS DOM_NUMERIC15_2) QUTCONVERTIDA, O.QT_PRODUZIDA, -- CONVERSÃO DE PORCENTAGENS ((CAST(IO.QT_ITEMPRODUCAO AS DOM_NUMERIC15_2)*100)/CAST((
SELECT SUM(IOS.QT_ITEMPRODUCAO)
FROM ITEMORDEMPROD IOS
WHERE IOS.CD_EMPRESA = O.CD_EMPRESA
AND IOS.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO) AS DOM_NUMERIC15_2))PORCENTAGEM, PE.DT_ENTREGA, PC.NM_PESSOA, RLP.O_DS_LOTE -------------------------------------------------------------------------------------------------
FROM ORDEMPRODUCAO O
INNER JOIN ITEMORDEMPROD IO ON (O.CD_EMPRESA = IO.CD_EMPRESA
AND O.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO)
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA)
INNER JOIN ITEM I ON (O.CD_ITEM = I.CD_ITEM)
INNER JOIN ITEM MP ON(MP.CD_ITEM = IO.CD_MATERIAPRIMA)
LEFT JOIN FICHAPRODUCAO FP ON(FP.CD_MATERIAPRIMA = I.CD_ITEM)
LEFT JOIN PRODUCAO P ON(P.CD_EMPRESA = O.CD_EMPRESA
AND P.CD_ITEM = O.CD_ITEM
AND P.TP_PRODUCAO = O.TP_PRODUCAO
AND P.NR_VERSAO = O.NR_VERSAO)
LEFT JOIN RETORNA_LINHAS(2)RL ON 1=1
LEFT JOIN TIPOCALCULO TC ON(TC.CD_TIPOCALCULO = I.CD_TIPOCALCULO)
LEFT JOIN ORDEMPRODUCAOPEDIDO OP ON (OP.CD_EMPRESA = O.CD_EMPRESA
AND OP.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO)
LEFT JOIN PEDIDO PE ON (PE.CD_EMPRESA = OP.CD_EMPRPED
AND PE.NR_PEDIDO = OP.NR_PEDIDO
AND PE.TP_PEDIDO = OP.TP_PEDIDO)
LEFT JOIN PESSOA PC ON(PC.CD_PESSOA = PE.CD_PESSOA) /*
LEFT JOIN ORDEMPRODUCAOLOTE OPL ON (OPL.CD_EMPRESA = O.CD_EMPRESA
AND OPL.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO)
LEFT JOIN LOTESEMENTE LS ON (LS.CD_EMPRESA = O.CD_EMPRESA
AND LS.NR_LOTE = OPL.NR_LOTE)*/
LEFT JOIN RETORNA_LOTEORDEMPROD(O.CD_EMPRESA, O.NR_ORDEMPRODUCAO) RLP ON (1=1)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORDEMPRODUCAO = :NR_ORDEMPRODUCAO
GROUP BY RL.O_NR_LINHA, O.NR_ORDEMPRODUCAO ,O.CD_EMPRESA, E.NM_EMPRESA, O.NR_ORDEMPRODUCAO,I.PS_LIQUIDO,I.PS_EMBALAGEM, I.SG_UNIDMED,I.SG_UNIDALT, I.CD_ITEM||' - '||I.DS_ITEM , I.FORMULACAO, COALESCE(I.NR_CO||'%', '0%') , COALESCE(I.NR_CTC||'m.mol/kg', '0 m.mol/kg') , COALESCE(I.NR_TOTAL||'%', '0%') , I.NR_P205||'%' , I.NR_K2O||'%', I.NR_UMMAX||'%' ,O.QT_PRODUZIDA ,I.DS_NATUREZAFISICA, I.DS_GRANULOMETRIA,O.DT_INICIOPRODUCAO , O.DT_FIMPRODUCAO , MP.DS_ITEM, IO.QT_ITEMPRODUCAO , O.DT_FIMPRODUCAO , ((COALESCE(CAST(IO.QT_ITEMPRODUCAO AS DOM_NUMERIC15_2),0) * COALESCE(CAST(P.QT_MINPRODUCAO AS DOM_NUMERIC15_2),0))/COALESCE(CAST(O.QT_PRODUZIDA AS DOM_NUMERIC15_2),0)), O.NR_LOTEPRODUCAO, CAST(O.QT_PRODUZIDA AS DOM_NUMERIC15_2)*CAST(I.PS_LIQUIDO AS DOM_NUMERIC15_2) , O.QT_PRODUZIDA, ((CAST(IO.QT_ITEMPRODUCAO AS DOM_NUMERIC15_2)*100)/CAST(O.QT_PRODUZIDA AS DOM_NUMERIC15_2)), PE.DT_ENTREGA, PC.NM_PESSOA, RLP.O_DS_LOTE CD_EMPRESA NR_ORDEMPRODUCAO
SELECT FIRST 1 O.NR_ORDEMPRODUCAO ,O.CD_EMPRESA, E.NM_EMPRESA, O.NR_ORDEMPRODUCAO,I.PS_LIQUIDO QTCONVERSAO,i.SG_UNIDMED, I.SG_UNIDALT, I.CD_ITEM||' - '||I.DS_ITEM ITEMPRODUZIDO, I.FORMULACAO, COALESCE(I.NR_CO||'%', '0%') NR_CO, COALESCE(I.NR_CTC||'m.mol/kg', '0 m.mol/kg') NR_CTC, COALESCE(I.NR_TOTAL||'%', '0%') NR_TOTAL, I.NR_P205||'%' NR_P205, I.NR_K2O||'%'NR_K2O, I.NR_UMMAX||'%' NR_UMMAX,O.QT_PRODUZIDA * COALESCE(I.PS_EMBALAGEM,1) QTTOTAL,I.DS_NATUREZAFISICA, I.DS_GRANULOMETRIA,O.DT_INICIOPRODUCAO DTEMISSAO, O.DT_FIMPRODUCAO DTPRODUCAO, MP.DS_ITEM INSUMOS, IO.QT_ITEMPRODUCAO PESOEMKGSTOTLOTE, O.DT_FIMPRODUCAO DTPREVISTA, -- COVERSÕES AO PESO DE BASE DE PRODUÇÃO ((COALESCE(CAST(IO.QT_ITEMPRODUCAO AS DOM_NUMERIC15_2),0) * COALESCE(CAST(P.QT_MINPRODUCAO AS DOM_NUMERIC15_2),0))/COALESCE(CAST(O.QT_PRODUZIDA AS DOM_NUMERIC15_2),0))PESOEMKGS, -- CONVERSÃO DA QUANTIDADE PRODUZIDA PARA A UNIDADE ALTERNATIVA CAST(O.QT_PRODUZIDA AS DOM_NUMERIC15_2)*CAST(I.PS_LIQUIDO AS DOM_NUMERIC15_2) QUTCONVERTIDA
FROM ORDEMPRODUCAO O
INNER JOIN ITEMORDEMPROD IO ON (O.CD_EMPRESA = IO.CD_EMPRESA
AND O.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO)
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA)
INNER JOIN ITEM I ON (O.CD_ITEM = I.CD_ITEM)
INNER JOIN ITEM MP ON(MP.CD_ITEM = IO.CD_MATERIAPRIMA)
LEFT JOIN FICHAPRODUCAO FP ON(FP.CD_MATERIAPRIMA = I.CD_ITEM)
LEFT JOIN PRODUCAO P ON(P.CD_EMPRESA = O.CD_EMPRESA
AND P.CD_ITEM = O.CD_ITEM
AND P.TP_PRODUCAO = O.TP_PRODUCAO
AND P.NR_VERSAO = O.NR_VERSAO)
LEFT JOIN TIPOCALCULO TC ON(TC.CD_TIPOCALCULO = I.CD_TIPOCALCULO)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORDEMPRODUCAO = :NR_ORDEMPRODUCAO
GROUP BY O.NR_ORDEMPRODUCAO ,O.CD_EMPRESA, E.NM_EMPRESA, O.NR_ORDEMPRODUCAO,I.PS_LIQUIDO, I.SG_UNIDALT, i.SG_UNIDMED, I.CD_ITEM||' - '||I.DS_ITEM , I.FORMULACAO, COALESCE(I.NR_CO||'%', '0%') , COALESCE(I.NR_CTC||'m.mol/kg', '0 m.mol/kg') , COALESCE(I.NR_TOTAL||'%', '0%') , I.NR_P205||'%' , I.NR_K2O||'%', I.NR_UMMAX||'%' ,O.QT_PRODUZIDA ,I.DS_NATUREZAFISICA, I.DS_GRANULOMETRIA,O.DT_INICIOPRODUCAO , O.DT_FIMPRODUCAO , MP.DS_ITEM , IO.QT_ITEMPRODUCAO , O.DT_FIMPRODUCAO , I.PS_EMBALAGEM, ((COALESCE(CAST(IO.QT_ITEMPRODUCAO AS DOM_NUMERIC15_2),0) * COALESCE(CAST(P.QT_MINPRODUCAO AS DOM_NUMERIC15_2),0))/COALESCE(CAST(O.QT_PRODUZIDA AS DOM_NUMERIC15_2),0)), CAST(O.QT_PRODUZIDA AS DOM_NUMERIC15_2)*CAST(I.PS_LIQUIDO AS DOM_NUMERIC15_2), ((CAST(IO.QT_ITEMPRODUCAO AS DOM_NUMERIC15_2)*100)/CAST(O.QT_PRODUZIDA AS DOM_NUMERIC15_2)) CD_EMPRESA NR_ORDEMPRODUCAO
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
EMPRESA | referenciada nas queries do layout |
FICHAPRODUCAO | referenciada nas queries do layout |
ITEM | referenciada nas queries do layout |
ITEMORDEMPROD | referenciada nas queries do layout |
LOTESEMENTE | referenciada nas queries do layout |
ORDEMPRODUCAO | referenciada nas queries do layout |
ORDEMPRODUCAOLOTE | referenciada nas queries do layout |
ORDEMPRODUCAOPEDIDO | referenciada nas queries do layout |
PEDIDO | referenciada nas queries do layout |
PESSOA | referenciada nas queries do layout |
PRODUCAO | referenciada nas queries do layout |
RETORNA_LINHAS | referenciada nas queries do layout |
RETORNA_LOTEORDEMPROD | referenciada nas queries do layout |
TIPOCALCULO | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LOP020/ULOP020.pas - DFM:
source/LOP020/ULOP020.dfm - Package:
source/LOP020/LOP020.dpk