LOP022 — Layout LOP022
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, ITEMPERFIL, PERFIL, TAREFAITEM (+3), filtrada por CD_EMPRESA, NR_ORDEMPRODUCAO, TP_DESPESA, DT_, O, JO (+5).
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, IPE.CD_PERFIL, PE.DS_PERFIl, O.NR_ORDEMPRODUCAO NR_LOTEPRODUCAO
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)
LEFT JOIN ITEMPERFIL IPE ON (IPE.CD_ITEM = M.CD_ITEM)
LEFT JOIN PERFIL PE ON (PE.CD_PERFIL = IPE.CD_PERFIL)
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, IPE.CD_PERFIL, PE.DS_PERFIl ,O.NR_ORDEMPRODUCAO NR_LOTEPRODUCAO
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)
LEFT JOIN ITEMPERFIL IPE ON (IPE.CD_ITEM = M.CD_ITEM)
LEFT JOIN PERFIL PE ON (PE.CD_PERFIL = IPE.CD_PERFIL)
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, {#10} S.CD_SABOR, S.DS_SABOR||' - '||S.CD_SABOR DS_SABOR, {#10} CAST(O.NR_ORDEMORIG AS VARCHAR(10))||' '||RI.DS_ITEM||' - '||RI.CD_ITEM DS_ORIGEM, R.QT_PRODUZIDA QT_ORIGEM, {#10} MIN(O.DT_INICIOPRODUCAO) DT_INICIOPRODUCAO, {#10} IO.CD_MATERIAPRIMA, CAST(IO.CD_MATERIAPRIMA AS VARCHAR(10))||' - '||M.DS_ITEM DS_MATERIAPRIMA, {#10} M.SG_UNIDMED, M.SG_UNIDALT, SUM((IO.QT_ITEMPRODUCAO * SP.PC_SABOR) / 100) QT_ITEMPRODUCAO, {#10} 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, {#10} IPE.CD_PERFIL, COALESCE(PE.DS_PERFIl,'SEM PERFIL')DS_PERFIl {#10}
FROM ORDEMPRODUCAO O {#10}
LEFT JOIN ORDEMPRODUCAO R ON (R.CD_EMPRESA = O.CD_EMPRORIG {#10}
AND R.NR_ORDEMPRODUCAO = O.NR_ORDEMORIG) {#10}
LEFT JOIN ITEM RI ON (RI.CD_ITEM = R.CD_ITEM) {#10}
INNER JOIN ITEMORDEMPROD IO ON (O.CD_EMPRESA = IO.CD_EMPRESA {#10}
AND O.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO) {#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA) {#10}
INNER JOIN ITEM I ON (I.CD_ITEM = O.CD_ITEM) {#10}
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA) {#10}
LEFT JOIN ITEMPERFIL IPE ON (IPE.CD_ITEM = M.CD_ITEM) {#10}
LEFT JOIN PERFIL PE ON (PE.CD_PERFIL = IPE.CD_PERFIL) {#10}
INNER JOIN ITEMPRODUCAO IP ON (IP.CD_EMPRESA = O.CD_EMPRPROD {#10}
AND IP.CD_ITEM = O.CD_ITEM {#10}
AND IP.TP_PRODUCAO = O.TP_PRODUCAO {#10}
AND IP.NR_VERSAO = O.NR_VERSAO {#10}
AND IP.CD_MATERIAPRIMA = IO.CD_MATERIAPRIMA) {#10}
INNER JOIN SABORPRODUCAO SP ON (SP.CD_EMPRESA = O.CD_EMPRPROD {#10}
AND SP.CD_ITEM = O.CD_ITEM {#10}
AND SP.TP_PRODUCAO = O.TP_PRODUCAO {#10}
AND SP.NR_VERSAO = O.NR_VERSAO {#10}
AND SP.CD_MATERIAPRIMA = IO.CD_MATERIAPRIMA) {#10}
INNER JOIN SABOR S ON (S.CD_SABOR = SP.CD_SABOR) {#10}
WHERE O.CD_EMPRLOTEPROD = {Resultado}
tabMP
SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, {#10} CAST(O.NR_ORDEMORIG AS VARCHAR(10))||' '||RI.DS_ITEM||' - '||RI.CD_ITEM DS_ORIGEM, R.QT_PRODUZIDA QT_ORIGEM, {#10} MIN(O.DT_INICIOPRODUCAO) DT_INICIOPRODUCAO, {#10} IO.CD_MATERIAPRIMA, CAST(IO.CD_MATERIAPRIMA AS VARCHAR(10))||' - '||M.DS_ITEM DS_MATERIAPRIMA, {#10} M.SG_UNIDMED, M.SG_UNIDALT, SUM(IO.QT_ITEMPRODUCAO) QT_ITEMPRODUCAO, {#10} 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, {#10} IPE.CD_PERFIL, COALESCE(PE.DS_PERFIl,'SEM PERFIL')DS_PERFIl {#10}
FROM ORDEMPRODUCAO O {#10}
INNER JOIN ITEMORDEMPROD IO ON (O.CD_EMPRESA = IO.CD_EMPRESA {#10}
AND O.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO) {#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA) {#10}
INNER JOIN ITEM I ON (I.CD_ITEM = O.CD_ITEM) {#10}
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA) {#10}
LEFT JOIN ITEMPERFIL IPE ON (IPE.CD_ITEM = M.CD_ITEM) {#10}
LEFT JOIN PERFIL PE ON (PE.CD_PERFIL = IPE.CD_PERFIL) {#10}
INNER JOIN ITEMPRODUCAO IP ON (IP.CD_EMPRESA = O.CD_EMPRPROD {#10}
AND IP.CD_ITEM = O.CD_ITEM {#10}
AND IP.TP_PRODUCAO = O.TP_PRODUCAO {#10}
AND IP.NR_VERSAO = O.NR_VERSAO {#10}
AND IP.CD_MATERIAPRIMA = IO.CD_MATERIAPRIMA) {#10}
LEFT JOIN ORDEMPRODUCAO R ON (R.CD_EMPRESA = O.CD_EMPRORIG {#10}
AND R.NR_ORDEMPRODUCAO = O.NR_ORDEMORIG) {#10}
LEFT JOIN ITEM RI ON (RI.CD_ITEM = R.CD_ITEM) {#10}
WHERE O.CD_EMPRLOTEPROD = {Resultado}
tabPA
SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, O.DT_INICIOPRODUCAO, {#10} O.CD_EMPRPROD, O.CD_ITEM, O.TP_PRODUCAO, O.NR_VERSAO, O.NR_ORDEMPRODUCAO, {#10} CAST(O.NR_ORDEMORIG AS VARCHAR(10))||' '||RI.DS_ITEM||' - '||RI.CD_ITEM DS_ORIGEM, R.QT_PRODUZIDA QT_ORIGEM, {#10} O.CD_ITEM, CAST(O.CD_ITEM AS VARCHAR(10))||' - '||I.DS_ITEM DS_ITEM, {#10} I.SG_UNIDMED, I.SG_UNIDALT, O.QT_PRODUZIDA QT_PRODUCAO, {#10} CASE WHEN COALESCE(I.PS_LIQUIDO,0) <= 0 THEN NULL ELSE CAST(O.QT_PRODUZIDA AS NUMERIC(15,5)) / I.PS_LIQUIDO END QTDE, {#10} O.DT_FIMPRODUCAO + I.NR_DIASVALIDADE DT_VALIDADE, O.DT_FIMPRODUCAO, {#10} IO.CD_MATERIAPRIMA, CAST(IO.CD_MATERIAPRIMA AS VARCHAR(10))||' - '||M.DS_ITEM DS_MATERIAPRIMA, {#10} M.SG_UNIDMED SG_UNIDMEDMP, M.SG_UNIDALT SG_UNIDALTMP, IO.QT_ITEMPRODUCAO {#10}
FROM ORDEMPRODUCAO O {#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA) {#10}
INNER JOIN ITEM I ON (I.CD_ITEM = O.CD_ITEM) {#10}
INNER JOIN ITEMORDEMPROD IO ON (O.CD_EMPRESA = IO.CD_EMPRESA {#10}
AND O.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO) {#10}
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA) {#10}
LEFT JOIN ORDEMPRODUCAO R ON (R.CD_EMPRESA = O.CD_EMPRORIG {#10}
AND R.NR_ORDEMPRODUCAO = O.NR_ORDEMORIG) {#10}
LEFT JOIN ITEM RI ON (RI.CD_ITEM = R.CD_ITEM) {#10}
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, IPE.CD_PERFIL, COALESCE(PE.DS_PERFIl,'SEM PERFIL')DS_PERFIl {#10}
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)
LEFT JOIN ITEMPERFIL IPE ON (IPE.CD_ITEM = M.CD_ITEM) {#10}
LEFT JOIN PERFIL PE ON (PE.CD_PERFIL = IPE.CD_PERFIL) {#10}
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, {#10} S.CD_SABOR, S.DS_SABOR||' - '||S.CD_SABOR DS_SABOR, {#10} CAST(O.NR_ORDEMORIG AS VARCHAR(10))||' '||RI.DS_ITEM||' - '||RI.CD_ITEM DS_ORIGEM, R.QT_PRODUZIDA QT_ORIGEM, {#10} MIN(O.DT_INICIOPRODUCAO) DT_INICIOPRODUCAO, {#10} IO.CD_MATERIAPRIMA, CAST(IO.CD_MATERIAPRIMA AS VARCHAR(10))||' - '||M.DS_ITEM DS_MATERIAPRIMA, {#10} M.SG_UNIDMED, M.SG_UNIDALT, SUM((IO.QT_ITEMPRODUCAO * SP.PC_SABOR) / 100) QT_ITEMPRODUCAO, {#10} 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, {#10} IPE.CD_PERFIL, COALESCE(PE.DS_PERFIl,'SEM PERFIL')DS_PERFIl {#10}
FROM ORDEMPRODUCAO O {#10}
LEFT JOIN ORDEMPRODUCAO R ON (R.CD_EMPRESA = O.CD_EMPRORIG {#10}
AND R.NR_ORDEMPRODUCAO = O.NR_ORDEMORIG) {#10}
LEFT JOIN ITEM RI ON (RI.CD_ITEM = R.CD_ITEM) {#10}
INNER JOIN ITEMORDEMPROD IO ON (O.CD_EMPRESA = IO.CD_EMPRESA {#10}
AND O.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO) {#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA) {#10}
INNER JOIN ITEM I ON (I.CD_ITEM = O.CD_ITEM) {#10}
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA) {#10}
LEFT JOIN ITEMPERFIL IPE ON (IPE.CD_ITEM = M.CD_ITEM) {#10}
LEFT JOIN PERFIL PE ON (PE.CD_PERFIL = IPE.CD_PERFIL) {#10}
INNER JOIN ITEMPRODUCAO IP ON (IP.CD_EMPRESA = O.CD_EMPRPROD {#10}
AND IP.CD_ITEM = O.CD_ITEM {#10}
AND IP.TP_PRODUCAO = O.TP_PRODUCAO {#10}
AND IP.NR_VERSAO = O.NR_VERSAO {#10}
AND IP.CD_MATERIAPRIMA = IO.CD_MATERIAPRIMA) {#10}
INNER JOIN SABORPRODUCAO SP ON (SP.CD_EMPRESA = O.CD_EMPRPROD {#10}
AND SP.CD_ITEM = O.CD_ITEM {#10}
AND SP.TP_PRODUCAO = O.TP_PRODUCAO {#10}
AND SP.NR_VERSAO = O.NR_VERSAO {#10}
AND SP.CD_MATERIAPRIMA = IO.CD_MATERIAPRIMA) {#10}
INNER JOIN SABOR S ON (S.CD_SABOR = SP.CD_SABOR) {#10}
WHERE O.CD_EMPRLOTEPROD = {Resultado[1] +#10}
AND O.NR_LOTEPRODUCAO = {Resultado[0] +#10}
AND IP.ST_ITEMPRODUCAO = 'S' {#10}
GROUP BY O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, S.CD_SABOR, S.DS_SABOR, {#10} IO.CD_MATERIAPRIMA, M.DS_ITEM, M.SG_UNIDMED, M.SG_UNIDALT, {#10} O.NR_ORDEMORIG, RI.DS_ITEM, RI.CD_ITEM, R.QT_PRODUZIDA, IPE.CD_PERFIL, PE.DS_PERFIl {#10}
ORDER BY IPE.CD_PERFIL, DS_PERFIl, S.CD_SABOR, SUM(IO.QT_ITEMPRODUCAO) DESC
Text #2
SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, {#10} CAST(O.NR_ORDEMORIG AS VARCHAR(10))||' '||RI.DS_ITEM||' - '||RI.CD_ITEM DS_ORIGEM, R.QT_PRODUZIDA QT_ORIGEM, {#10} MIN(O.DT_INICIOPRODUCAO) DT_INICIOPRODUCAO, {#10} IO.CD_MATERIAPRIMA, CAST(IO.CD_MATERIAPRIMA AS VARCHAR(10))||' - '||M.DS_ITEM DS_MATERIAPRIMA, {#10} M.SG_UNIDMED, M.SG_UNIDALT, SUM(IO.QT_ITEMPRODUCAO) QT_ITEMPRODUCAO, {#10} 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, {#10} IPE.CD_PERFIL, COALESCE(PE.DS_PERFIl,'SEM PERFIL')DS_PERFIl {#10}
FROM ORDEMPRODUCAO O {#10}
INNER JOIN ITEMORDEMPROD IO ON (O.CD_EMPRESA = IO.CD_EMPRESA {#10}
AND O.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO) {#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA) {#10}
INNER JOIN ITEM I ON (I.CD_ITEM = O.CD_ITEM) {#10}
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA) {#10}
LEFT JOIN ITEMPERFIL IPE ON (IPE.CD_ITEM = M.CD_ITEM) {#10}
LEFT JOIN PERFIL PE ON (PE.CD_PERFIL = IPE.CD_PERFIL) {#10}
INNER JOIN ITEMPRODUCAO IP ON (IP.CD_EMPRESA = O.CD_EMPRPROD {#10}
AND IP.CD_ITEM = O.CD_ITEM {#10}
AND IP.TP_PRODUCAO = O.TP_PRODUCAO {#10}
AND IP.NR_VERSAO = O.NR_VERSAO {#10}
AND IP.CD_MATERIAPRIMA = IO.CD_MATERIAPRIMA) {#10}
LEFT JOIN ORDEMPRODUCAO R ON (R.CD_EMPRESA = O.CD_EMPRORIG {#10}
AND R.NR_ORDEMPRODUCAO = O.NR_ORDEMORIG) {#10}
LEFT JOIN ITEM RI ON (RI.CD_ITEM = R.CD_ITEM) {#10}
WHERE O.CD_EMPRLOTEPROD = {Resultado[1] +#10}
AND O.NR_LOTEPRODUCAO = {Resultado[0] +#10}
AND O.NR_ORDEMORIG = {Nulo(OrdemIni,}I{) +#10}
AND IP.ST_ITEMPRODUCAO = 'N' {#10}
GROUP BY O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, {#10} IO.CD_MATERIAPRIMA, M.DS_ITEM, M.SG_UNIDMED, M.SG_UNIDALT, {#10} O.NR_ORDEMORIG, RI.DS_ITEM, RI.CD_ITEM, R.QT_PRODUZIDA, IPE.CD_PERFIL, PE.DS_PERFIl {#10}
ORDER BY IPE.CD_PERFIL, DS_PERFIl, SUM(IO.QT_ITEMPRODUCAO) DESC
Text #3
SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, O.DT_INICIOPRODUCAO, {#10} O.CD_EMPRPROD, O.CD_ITEM, O.TP_PRODUCAO, O.NR_VERSAO, O.NR_ORDEMPRODUCAO, {#10} CAST(O.NR_ORDEMORIG AS VARCHAR(10))||' '||RI.DS_ITEM||' - '||RI.CD_ITEM DS_ORIGEM, R.QT_PRODUZIDA QT_ORIGEM, {#10} O.CD_ITEM, CAST(O.CD_ITEM AS VARCHAR(10))||' - '||I.DS_ITEM DS_ITEM, {#10} I.SG_UNIDMED, I.SG_UNIDALT, O.QT_PRODUZIDA QT_PRODUCAO, {#10} CASE WHEN COALESCE(I.PS_LIQUIDO,0) <= 0 THEN NULL ELSE CAST(O.QT_PRODUZIDA AS NUMERIC(15,5)) / I.PS_LIQUIDO END QTDE, {#10} O.DT_FIMPRODUCAO + I.NR_DIASVALIDADE DT_VALIDADE, O.DT_FIMPRODUCAO, {#10} IO.CD_MATERIAPRIMA, CAST(IO.CD_MATERIAPRIMA AS VARCHAR(10))||' - '||M.DS_ITEM DS_MATERIAPRIMA, {#10} M.SG_UNIDMED SG_UNIDMEDMP, M.SG_UNIDALT SG_UNIDALTMP, IO.QT_ITEMPRODUCAO {#10}
FROM ORDEMPRODUCAO O {#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA) {#10}
INNER JOIN ITEM I ON (I.CD_ITEM = O.CD_ITEM) {#10}
INNER JOIN ITEMORDEMPROD IO ON (O.CD_EMPRESA = IO.CD_EMPRESA {#10}
AND O.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO) {#10}
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA) {#10}
LEFT JOIN ORDEMPRODUCAO R ON (R.CD_EMPRESA = O.CD_EMPRORIG {#10}
AND R.NR_ORDEMPRODUCAO = O.NR_ORDEMORIG) {#10}
LEFT JOIN ITEM RI ON (RI.CD_ITEM = R.CD_ITEM) {#10}
WHERE O.CD_EMPRLOTEPROD = {Resultado[1] +#10}
AND O.NR_LOTEPRODUCAO = {Resultado[0] +#10}
AND O.NR_ORDEMORIG = {Nulo(OrdemIni,}I{) +#10}
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, IPE.CD_PERFIL, COALESCE(PE.DS_PERFIl,'SEM PERFIL')DS_PERFIl {#10}
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)
LEFT JOIN ITEMPERFIL IPE ON (IPE.CD_ITEM = M.CD_ITEM) {#10}
LEFT JOIN PERFIL PE ON (PE.CD_PERFIL = IPE.CD_PERFIL) {#10}
WHERE O.CD_EMPRESA = {iParametros[1]}
AND O.NR_ORDEMPRODUCAO = {iParametros[2]}
ORDER BY IPE.CD_PERFIL, DS_PERFIL
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
EMPRESA | referenciada nas queries do layout |
ITEM | referenciada nas queries do layout |
ITEMORDEMPROD | referenciada nas queries do layout |
ITEMPERFIL | referenciada nas queries do layout |
ITEMPRODUCAO | referenciada nas queries do layout |
LOTESEMENTE | referenciada nas queries do layout |
ORDEMPRODUCAO | referenciada nas queries do layout |
ORDEMPRODUCAOLOTE | referenciada nas queries do layout |
PERFIL | referenciada nas queries do layout |
PRODUCAO | referenciada nas queries do layout |
RETORNA_LINHAS | referenciada nas queries do layout |
SABOR | referenciada nas queries do layout |
SABORPRODUCAO | referenciada nas queries do layout |
TAREFAITEM | referenciada nas queries do layout |
TAREFAPRODUCAO | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LOP022/ULOP022.pas - DFM:
source/LOP022/ULOP022.dfm - Package:
source/LOP022/LOP022.dpk