Pular para o conteúdo principal

LOP001 — Layout LOP001

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 ORDEMPRODUCAO, com junção em ITEMORDEMPROD, EMPRESA, ITEM, TAREFAITEM, PRODUCAO, RETORNA_LINHAS (+1), filtrada por CD_EMPRESA, NR_ORDEMPRODUCAO, TP_DESPESA, DT_, O, JO (+4).

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​

Producao #1​

SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_ORDEMPRODUCAO, O.CD_ITEM, I.DS_ITEM, M.SG_UNIDMED, O.QT_PRODUZIDA, O.DT_INICIOPRODUCAO, O.DT_FIMPRODUCAO, O.TP_ORDEMPRODUCAO, IO.CD_MATERIAPRIMA, M.DS_ITEM DS_MATERIAPRIMA, IO.QT_ITEMPRODUCAO, IO.TP_DESPESA
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 M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORDEMPRODUCAO = :NR_ORDEMPRODUCAO
AND IO.TP_DESPESA = 'M' CD_EMPRESA 1 NR_ORDEMPRODUCAO
SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_ORDEMPRODUCAO, O.CD_ITEM, I.DS_ITEM, M.SG_UNIDMED, O.QT_PRODUZIDA, O.DT_INICIOPRODUCAO, O.DT_FIMPRODUCAO, O.TP_ORDEMPRODUCAO, IO.CD_MATERIAPRIMA, M.DS_ITEM DS_MATERIAPRIMA, IO.QT_ITEMPRODUCAO, IO.TP_DESPESA
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 M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORDEMPRODUCAO = :NR_ORDEMPRODUCAO
AND IO.TP_DESPESA = 'M' CD_EMPRESA 1 NR_ORDEMPRODUCAO
SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_ORDEMPRODUCAO, O.CD_ITEM, I.DS_ITEM, M.SG_UNIDMED, O.QT_PRODUZIDA, O.DT_INICIOPRODUCAO, O.DT_FIMPRODUCAO, O.TP_ORDEMPRODUCAO, IO.CD_MATERIAPRIMA, M.DS_ITEM DS_MATERIAPRIMA, IO.QT_ITEMPRODUCAO, IO.TP_DESPESA
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 M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORDEMPRODUCAO = :NR_ORDEMPRODUCAO
AND IO.TP_DESPESA = 'M' CD_EMPRESA 1 NR_ORDEMPRODUCAO
SELECT T.NR_TAREFA, F.DS_TAREFA
FROM TAREFAPRODUCAO T
INNER JOIN TAREFAITEM F ON (F.NR_TAREFA = T.NR_TAREFA)
WHERE T.CD_EMPRESA = :CD_EMPRPROD
AND T.CD_ITEM = :CD_ITEM
AND T.TP_PRODUCAO = :TP_PRODUCAO
AND T.NR_VERSAO = :NR_VERSAO
ORDER BY T.NR_TAREFA CD_EMPRPROD CD_ITEM TP_PRODUCAO NR_VERSAO
SELECT O.NR_ORDEMPRODUCAO, O.CD_ITEM, P.NR_AMOSTRA, L.O_NR_LINHA NR_LINHA
FROM ORDEMPRODUCAO O
INNER JOIN PRODUCAO P ON (P.CD_EMPRESA = O.CD_EMPRPROD
AND P.CD_ITEM = O.CD_ITEM
AND P.NR_VERSAO = O.NR_VERSAO
AND P.TP_PRODUCAO = O.TP_PRODUCAO
AND P.NR_AMOSTRA > 0)
LEFT JOIN RETORNA_LINHAS(CAST(O.QT_PRODUZIDA / P.QT_MINPRODUCAO AS INTEGER) * P.NR_AMOSTRA) L ON (1 = 1)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORDEMPRODUCAO = :NR_ORDEMPRODUCAO CD_EMPRESA NR_ORDEMPRODUCAO
SELECT O.NR_ORDEMPRODUCAO, O.CD_ITEM, O.NR_LOTE, L.DT_VALIDADE, L.DT_FABRICACAO, L.NR_ATESTADO
FROM ORDEMPRODUCAOLOTE O
INNER JOIN LOTESEMENTE L ON (L.CD_EMPRESA = O.CD_EMPRLOTE
AND L.NR_LOTE = O.NR_LOTE)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORDEMPRODUCAO = :NR_ORDEMPRODUCAO CD_EMPRESA NR_ORDEMPRODUCAO

Producao #2​

SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, O.CD_EMPRPROD, O.CD_ITEM, O.TP_PRODUCAO, O.NR_VERSAO, S.CD_SABOR, S.DS_SABOR||' - '||S.CD_SABOR DS_SABOR, CAST(O.NR_ORDEMORIG AS VARCHAR(10))||' '||RI.DS_ITEM||' - '||RI.CD_ITEM DS_ORIGEM, R.QT_PRODUZIDA QT_ORIGEM, MIN(O.DT_INICIOPRODUCAO) DT_INICIOPRODUCAO, IO.CD_MATERIAPRIMA, CAST(IO.CD_MATERIAPRIMA AS VARCHAR(10))||' - '||M.DS_ITEM DS_MATERIAPRIMA, M.SG_UNIDMED, M.SG_UNIDALT, SUM((IO.QT_ITEMPRODUCAO * SP.PC_SABOR) / 100) QT_ITEMPRODUCAO, SUM(CASE WHEN COALESCE(M.PS_LIQUIDO,0) <= 0 THEN NULL ELSE CAST((IO.QT_ITEMPRODUCAO * SP.PC_SABOR) / 100 AS NUMERIC(15,5)) / M.PS_LIQUIDO END) QTDE
FROM ORDEMPRODUCAO O
LEFT JOIN ORDEMPRODUCAO R ON (R.CD_EMPRESA = O.CD_EMPRORIG
AND R.NR_ORDEMPRODUCAO = O.NR_ORDEMORIG)
LEFT JOIN ITEM RI ON (RI.CD_ITEM = R.CD_ITEM)
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 (I.CD_ITEM = O.CD_ITEM)
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA)
LEFT JOIN ITEMPRODUCAO IP ON (IP.CD_EMPRESA = O.CD_EMPRPROD
AND IP.CD_ITEM = O.CD_ITEM
AND IP.TP_PRODUCAO = O.TP_PRODUCAO
AND IP.NR_VERSAO = O.NR_VERSAO
AND IP.CD_MATERIAPRIMA = IO.CD_MATERIAPRIMA)
LEFT JOIN SABORPRODUCAO SP ON (SP.CD_EMPRESA = O.CD_EMPRPROD
AND SP.CD_ITEM = O.CD_ITEM
AND SP.TP_PRODUCAO = O.TP_PRODUCAO
AND SP.NR_VERSAO = O.NR_VERSAO
AND SP.CD_MATERIAPRIMA = IO.CD_MATERIAPRIMA)
LEFT JOIN SABOR S ON (S.CD_SABOR = SP.CD_SABOR)
WHERE O.CD_EMPRLOTEPROD = {Resultado}

tabMP​

SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, CAST(O.NR_ORDEMORIG AS VARCHAR(10))||' '||RI.DS_ITEM||' - '||RI.CD_ITEM DS_ORIGEM, R.QT_PRODUZIDA QT_ORIGEM, MIN(O.DT_INICIOPRODUCAO) DT_INICIOPRODUCAO, IO.CD_MATERIAPRIMA, CAST(IO.CD_MATERIAPRIMA AS VARCHAR(10))||' - '||M.DS_ITEM DS_MATERIAPRIMA, M.SG_UNIDMED, M.SG_UNIDALT, SUM(IO.QT_ITEMPRODUCAO) QT_ITEMPRODUCAO, SUM(CASE WHEN COALESCE(M.PS_LIQUIDO,0) <= 0 THEN NULL ELSE CAST(IO.QT_ITEMPRODUCAO AS NUMERIC(15,5)) / M.PS_LIQUIDO END) QTDE
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 (I.CD_ITEM = O.CD_ITEM)
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA)
LEFT JOIN ITEMPRODUCAO IP ON (IP.CD_EMPRESA = O.CD_EMPRPROD
AND IP.CD_ITEM = O.CD_ITEM
AND IP.TP_PRODUCAO = O.TP_PRODUCAO
AND IP.NR_VERSAO = O.NR_VERSAO
AND IP.CD_MATERIAPRIMA = IO.CD_MATERIAPRIMA)
LEFT JOIN ORDEMPRODUCAO R ON (R.CD_EMPRESA = O.CD_EMPRORIG
AND R.NR_ORDEMPRODUCAO = O.NR_ORDEMORIG)
LEFT JOIN ITEM RI ON (RI.CD_ITEM = R.CD_ITEM)
WHERE O.CD_EMPRLOTEPROD = {Resultado}

tabPA​

SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, O.DT_INICIOPRODUCAO, O.CD_EMPRPROD, O.CD_ITEM, O.TP_PRODUCAO, O.NR_VERSAO, O.NR_ORDEMPRODUCAO, CAST(O.NR_ORDEMORIG AS VARCHAR(10))||' '||RI.DS_ITEM||' - '||RI.CD_ITEM DS_ORIGEM, R.QT_PRODUZIDA QT_ORIGEM, O.CD_ITEM, CAST(O.CD_ITEM AS VARCHAR(10))||' - '||I.DS_ITEM DS_ITEM, I.SG_UNIDMED, I.SG_UNIDALT, O.QT_PRODUZIDA QT_PRODUCAO, CASE WHEN COALESCE(I.PS_LIQUIDO,0) <= 0 THEN NULL ELSE CAST(O.QT_PRODUZIDA AS NUMERIC(15,5)) / I.PS_LIQUIDO END QTDE, O.DT_FIMPRODUCAO + I.NR_DIASVALIDADE DT_VALIDADE, O.DT_FIMPRODUCAO, IO.CD_MATERIAPRIMA, CAST(IO.CD_MATERIAPRIMA AS VARCHAR(10))||' - '||M.DS_ITEM DS_MATERIAPRIMA, M.SG_UNIDMED SG_UNIDMEDMP, M.SG_UNIDALT SG_UNIDALTMP, IO.QT_ITEMPRODUCAO
FROM ORDEMPRODUCAO O
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA)
INNER JOIN ITEM I ON (I.CD_ITEM = O.CD_ITEM)
INNER JOIN ITEMORDEMPROD IO ON (O.CD_EMPRESA = IO.CD_EMPRESA
AND O.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO)
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA)
LEFT JOIN ORDEMPRODUCAO R ON (R.CD_EMPRESA = O.CD_EMPRORIG
AND R.NR_ORDEMPRODUCAO = O.NR_ORDEMORIG)
LEFT JOIN ITEM RI ON (RI.CD_ITEM = R.CD_ITEM)
WHERE O.CD_EMPRLOTEPROD = {Resultado}

Producao #3​

SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_ORDEMPRODUCAO, O.CD_EMPRPROD, O.CD_ITEM, O.TP_PRODUCAO, O.NR_VERSAO, O.CD_ITEM, I.DS_ITEM, M.SG_UNIDMED, O.QT_PRODUZIDA, O.DT_INICIOPRODUCAO, O.DT_FIMPRODUCAO, O.TP_ORDEMPRODUCAO, IO.CD_MATERIAPRIMA, M.DS_ITEM DS_MATERIAPRIMA, IO.QT_ITEMPRODUCAO, IO.TP_DESPESA, M.SG_UNIDALT, CASE WHEN COALESCE(M.PS_LIQUIDO,0) <= 0 THEN NULL ELSE CAST(IO.QT_ITEMPRODUCAO AS NUMERIC(15,5)) / M.PS_LIQUIDO END QTDE
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 M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA)
WHERE O.CD_EMPRESA = {iParametros}

Consulta​

SELECT O.NR_LOTEPRODUCAO, O.CD_EMPRLOTEPROD, I.ST_REVENDA, O.NR_ORDEMORIG
FROM ORDEMPRODUCAO O
INNER JOIN ITEM I ON (I.CD_ITEM = O.CD_ITEM)
WHERE O.CD_EMPRESA = {iParametros[1]}
AND O.NR_ORDEMPRODUCAO = {iParametros[2]}

Text #1​

SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, O.CD_EMPRPROD, O.CD_ITEM, O.TP_PRODUCAO, O.NR_VERSAO, S.CD_SABOR, S.DS_SABOR||' - '||S.CD_SABOR DS_SABOR, CAST(O.NR_ORDEMORIG AS VARCHAR(10))||' '||RI.DS_ITEM||' - '||RI.CD_ITEM DS_ORIGEM, R.QT_PRODUZIDA QT_ORIGEM, MIN(O.DT_INICIOPRODUCAO) DT_INICIOPRODUCAO, IO.CD_MATERIAPRIMA, CAST(IO.CD_MATERIAPRIMA AS VARCHAR(10))||' - '||M.DS_ITEM DS_MATERIAPRIMA, M.SG_UNIDMED, M.SG_UNIDALT, SUM((IO.QT_ITEMPRODUCAO * SP.PC_SABOR) / 100) QT_ITEMPRODUCAO, SUM(CASE WHEN COALESCE(M.PS_LIQUIDO,0) <= 0 THEN NULL ELSE CAST((IO.QT_ITEMPRODUCAO * SP.PC_SABOR) / 100 AS NUMERIC(15,5)) / M.PS_LIQUIDO END) QTDE
FROM ORDEMPRODUCAO O
LEFT JOIN ORDEMPRODUCAO R ON (R.CD_EMPRESA = O.CD_EMPRORIG
AND R.NR_ORDEMPRODUCAO = O.NR_ORDEMORIG)
LEFT JOIN ITEM RI ON (RI.CD_ITEM = R.CD_ITEM)
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 (I.CD_ITEM = O.CD_ITEM)
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA)
LEFT JOIN ITEMPRODUCAO IP ON (IP.CD_EMPRESA = O.CD_EMPRPROD
AND IP.CD_ITEM = O.CD_ITEM
AND IP.TP_PRODUCAO = O.TP_PRODUCAO
AND IP.NR_VERSAO = O.NR_VERSAO
AND IP.CD_MATERIAPRIMA = IO.CD_MATERIAPRIMA)
LEFT JOIN SABORPRODUCAO SP ON (SP.CD_EMPRESA = O.CD_EMPRPROD
AND SP.CD_ITEM = O.CD_ITEM
AND SP.TP_PRODUCAO = O.TP_PRODUCAO
AND SP.NR_VERSAO = O.NR_VERSAO
AND SP.CD_MATERIAPRIMA = IO.CD_MATERIAPRIMA)
LEFT JOIN SABOR S ON (S.CD_SABOR = SP.CD_SABOR)
WHERE O.CD_EMPRLOTEPROD = {Resultado[1]}
AND O.NR_LOTEPRODUCAO = {Resultado[0]}
GROUP BY O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, S.CD_SABOR, S.DS_SABOR, O.CD_EMPRPROD, O.CD_ITEM, O.TP_PRODUCAO, O.NR_VERSAO, IO.CD_MATERIAPRIMA, M.DS_ITEM, M.SG_UNIDMED, M.SG_UNIDALT, O.NR_ORDEMORIG, RI.DS_ITEM, RI.CD_ITEM, R.QT_PRODUZIDA
ORDER BY S.CD_SABOR, SUM(IO.QT_ITEMPRODUCAO) DESC

Text #2​

SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, CAST(O.NR_ORDEMORIG AS VARCHAR(10))||' '||RI.DS_ITEM||' - '||RI.CD_ITEM DS_ORIGEM, R.QT_PRODUZIDA QT_ORIGEM, MIN(O.DT_INICIOPRODUCAO) DT_INICIOPRODUCAO, IO.CD_MATERIAPRIMA, CAST(IO.CD_MATERIAPRIMA AS VARCHAR(10))||' - '||M.DS_ITEM DS_MATERIAPRIMA, M.SG_UNIDMED, M.SG_UNIDALT, SUM(IO.QT_ITEMPRODUCAO) QT_ITEMPRODUCAO, SUM(CASE WHEN COALESCE(M.PS_LIQUIDO,0) <= 0 THEN NULL ELSE CAST(IO.QT_ITEMPRODUCAO AS NUMERIC(15,5)) / M.PS_LIQUIDO END) QTDE
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 (I.CD_ITEM = O.CD_ITEM)
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA)
LEFT JOIN ITEMPRODUCAO IP ON (IP.CD_EMPRESA = O.CD_EMPRPROD
AND IP.CD_ITEM = O.CD_ITEM
AND IP.TP_PRODUCAO = O.TP_PRODUCAO
AND IP.NR_VERSAO = O.NR_VERSAO
AND IP.CD_MATERIAPRIMA = IO.CD_MATERIAPRIMA)
LEFT JOIN ORDEMPRODUCAO R ON (R.CD_EMPRESA = O.CD_EMPRORIG
AND R.NR_ORDEMPRODUCAO = O.NR_ORDEMORIG)
LEFT JOIN ITEM RI ON (RI.CD_ITEM = R.CD_ITEM)
WHERE O.CD_EMPRLOTEPROD = {Resultado[1]}
AND O.NR_LOTEPRODUCAO = {Resultado[0]}
GROUP BY O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, IO.CD_MATERIAPRIMA, M.DS_ITEM, M.SG_UNIDMED, M.SG_UNIDALT, O.NR_ORDEMORIG, RI.DS_ITEM, RI.CD_ITEM, R.QT_PRODUZIDA
ORDER BY SUM(IO.QT_ITEMPRODUCAO) DESC

Text #3​

SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, O.DT_INICIOPRODUCAO, O.CD_EMPRPROD, O.CD_ITEM, O.TP_PRODUCAO, O.NR_VERSAO, O.NR_ORDEMPRODUCAO, CAST(O.NR_ORDEMORIG AS VARCHAR(10))||' '||RI.DS_ITEM||' - '||RI.CD_ITEM DS_ORIGEM, R.QT_PRODUZIDA QT_ORIGEM, O.CD_ITEM, CAST(O.CD_ITEM AS VARCHAR(10))||' - '||I.DS_ITEM DS_ITEM, I.SG_UNIDMED, I.SG_UNIDALT, O.QT_PRODUZIDA QT_PRODUCAO, CASE WHEN COALESCE(I.PS_LIQUIDO,0) <= 0 THEN NULL ELSE CAST(O.QT_PRODUZIDA AS NUMERIC(15,5)) / I.PS_LIQUIDO END QTDE, O.DT_FIMPRODUCAO + I.NR_DIASVALIDADE DT_VALIDADE, O.DT_FIMPRODUCAO, IO.CD_MATERIAPRIMA, CAST(IO.CD_MATERIAPRIMA AS VARCHAR(10))||' - '||M.DS_ITEM DS_MATERIAPRIMA, M.SG_UNIDMED SG_UNIDMEDMP, M.SG_UNIDALT SG_UNIDALTMP, IO.QT_ITEMPRODUCAO
FROM ORDEMPRODUCAO O
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA)
INNER JOIN ITEM I ON (I.CD_ITEM = O.CD_ITEM)
INNER JOIN ITEMORDEMPROD IO ON (O.CD_EMPRESA = IO.CD_EMPRESA
AND O.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO)
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA)
LEFT JOIN ORDEMPRODUCAO R ON (R.CD_EMPRESA = O.CD_EMPRORIG
AND R.NR_ORDEMPRODUCAO = O.NR_ORDEMORIG)
LEFT JOIN ITEM RI ON (RI.CD_ITEM = R.CD_ITEM)
WHERE O.CD_EMPRLOTEPROD = {Resultado[1]}
AND O.NR_LOTEPRODUCAO = {Resultado[0]}
ORDER BY O.CD_ITEM, IO.QT_ITEMPRODUCAO DESC

Text #4​

SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_ORDEMPRODUCAO, O.CD_EMPRPROD, O.CD_ITEM, O.TP_PRODUCAO, O.NR_VERSAO, O.CD_ITEM, I.DS_ITEM, M.SG_UNIDMED, O.QT_PRODUZIDA, O.DT_INICIOPRODUCAO, O.DT_FIMPRODUCAO, O.TP_ORDEMPRODUCAO, IO.CD_MATERIAPRIMA, M.DS_ITEM DS_MATERIAPRIMA, IO.QT_ITEMPRODUCAO, IO.TP_DESPESA, M.SG_UNIDALT, CASE WHEN COALESCE(M.PS_LIQUIDO,0) <= 0 THEN NULL ELSE CAST(IO.QT_ITEMPRODUCAO AS NUMERIC(15,5)) / M.PS_LIQUIDO END QTDE
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 M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA)
WHERE O.CD_EMPRESA = {iParametros[1]}
AND O.NR_ORDEMPRODUCAO = {iParametros[2]}

Tabelas Utilizadas​

TabelaUso
EMPRESAreferenciada nas queries do layout
ITEMreferenciada nas queries do layout
ITEMORDEMPRODreferenciada nas queries do layout
ITEMPRODUCAOreferenciada nas queries do layout
LOTESEMENTEreferenciada nas queries do layout
ORDEMPRODUCAOreferenciada nas queries do layout
ORDEMPRODUCAOLOTEreferenciada nas queries do layout
PRODUCAOreferenciada nas queries do layout
RETORNA_LINHASreferenciada nas queries do layout
SABORreferenciada nas queries do layout
SABORPRODUCAOreferenciada nas queries do layout
TAREFAITEMreferenciada nas queries do layout
TAREFAPRODUCAOreferenciada nas queries do layout

Shared Units​

  • jCommon
  • jPesquisa

Fonte​

  • Unit: source/LOP001/ULOP001.pas
  • DFM: source/LOP001/ULOP001.dfm
  • Package: source/LOP001/LOP001.dpk