LOP021 — Layout LOP021
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 RETORNA_SALDOESTOQUE, com junção em ITEMORDEMPROD, EMPRESA, ITEM, SECAO, ITEMRECEITA, filtrada por CD_EMPRESA, NR_ORDEMPRODUCAO, TP_DESPESA.
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.CD_ITEM||' - '||I.DS_ITEM 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, O.DS_OBSERVACAO, S.CD_SECAO, COALESCE(S.DS_SECAO,'SEM SEÇÃO')DS_SECAO, (
SELECT O_QT_SALDO
FROM RETORNA_SALDOESTOQUE(O.CD_EMPRESA, IO.CD_MATERIAPRIMA, IO.CD_TIPOLOCAL, IO.CD_LOCAL, NULL))O_QT_SALDO, (
SELECT O_VL_CUSTO
FROM RETORNA_SALDOESTOQUE(O.CD_EMPRESA, IO.CD_MATERIAPRIMA, IO.CD_TIPOLOCAL, IO.CD_LOCAL, NULL))VL_CUSTOUNIT, (
SELECT O_VL_CUSTO
FROM RETORNA_SALDOESTOQUE(O.CD_EMPRESA, IO.CD_MATERIAPRIMA, IO.CD_TIPOLOCAL, IO.CD_LOCAL, NULL)) * IO.QT_ITEMPRODUCAO VL_TOTAL, IR.NR_REGISTRO, I.DS_NATUREZAFISICA, I.NR_UMMAX, I.NR_P205, I.NR_COT, I.NR_K2O, I.NR_TOTAL, I.NR_PH, I.NR_CTC, I.NR_CO, I.NR_CTC_C, I.NR_CRA, IR.DS_MANEJO, IR.DS_RECOMENDACAO
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 SECAO S ON (S.CD_SECAO = M.CD_SECAO)
LEFT JOIN ITEMRECEITA IR ON (IR.CD_ITEM = I.CD_ITEM)
WHERE O.CD_EMPRESA = :CD_EMPRESA
AND O.NR_ORDEMPRODUCAO = :NR_ORDEMPRODUCAO
AND IO.TP_DESPESA = 'M' CD_EMPRESA 1 NR_ORDEMPRODUCAO
Producao #2
SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_ORDEMPRODUCAO, {#10} O.CD_ITEM, I.CD_ITEM||' - '||I.DS_ITEM DS_ITEM, M.SG_UNIDMED, O.QT_PRODUZIDA, {#10} O.DT_INICIOPRODUCAO, O.DT_FIMPRODUCAO, O.TP_ORDEMPRODUCAO, {#10} IO.CD_MATERIAPRIMA, M.DS_ITEM DS_MATERIAPRIMA, {#10} IO.QT_ITEMPRODUCAO, IO.TP_DESPESA, O.DS_OBSERVACAO, S.CD_SECAO, COALESCE(S.DS_SECAO,'SEM SEÇÃO')DS_SECAO, {#10} RS.O_QT_SALDO, MOV.VL_CUSTO VL_CUSTOUNIT, (MOV.VL_CUSTO * IO.qt_itemproducao) VL_TOTAL, {#10} MAX(IR.NR_REGISTRO) NR_REGISTRO, MAX(IR.DS_MANEJO) DS_MANEJO, MAX(IR.DS_RECOMENDACAO) DS_RECOMENDACAO, {#10} I.DS_NATUREZAFISICA, I.NR_UMMAX, I.NR_P205, I.NR_COT, I.NR_K2O, I.NR_TOTAL, I.NR_PH, {#10} I.NR_CTC, I.NR_CO, I.NR_CTC_C, I.NR_CRA, {#10} (
SELECT LIST(LS.NR_DOCUMENTO, ', ') {#10}
FROM MOVESTOQUE MV {#10}
INNER JOIN LOTESEMENTE LS ON (LS.CD_EMPRESA = MV.CD_EMPRLOTE {#10}
AND LS.NR_LOTE = MV.NR_LOTE {#10}
AND LS.CD_ITEM = MV.CD_ITEM) {#10}
WHERE MV.CD_EMPRORDEMPROD = O.CD_EMPRESA {#10}
AND MV.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO {#10}
AND MV.CD_ITEM = O.CD_ITEM {#10}
AND MV.ST_CANCELAMENTO = 'N' {#10}
AND MV.QT_ESTOQUE > 0) NR_LOTES {#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}
AND IO.TP_DESPESA = 'M') {#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA) {#10}
INNER JOIN ITEM I ON (O.CD_ITEM = I.CD_ITEM) {#10}
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA) {#10}
LEFT JOIN MOVESTOQUE MOV ON (MOV.CD_EMPRORDEMPROD = O.CD_EMPRESA {#10}
AND MOV.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO {#10}
AND MOV.CD_ITEM = IO.CD_MATERIAPRIMA) {#10}
LEFT JOIN secao s ON (S.cd_secao = M.cd_secao){#10}
LEFT JOIN ITEMRECEITA IR ON (IR.CD_ITEM = I.CD_ITEM){#10}
LEFT JOIN RETORNA_SALDOESTOQUE(O.CD_EMPRESA, IO.CD_MATERIAPRIMA, IO.CD_TIPOLOCAL, IO.CD_LOCAL, NULL) RS ON (1=1) {#10}
WHERE O.CD_EMPRESA = {iParametros}
Text
SELECT O.CD_EMPRESA, E.NM_EMPRESA, O.NR_ORDEMPRODUCAO, {#10} O.CD_ITEM, I.CD_ITEM||' - '||I.DS_ITEM DS_ITEM, M.SG_UNIDMED, O.QT_PRODUZIDA, {#10} O.DT_INICIOPRODUCAO, O.DT_FIMPRODUCAO, O.TP_ORDEMPRODUCAO, {#10} IO.CD_MATERIAPRIMA, M.DS_ITEM DS_MATERIAPRIMA, {#10} IO.QT_ITEMPRODUCAO, IO.TP_DESPESA, O.DS_OBSERVACAO, S.CD_SECAO, COALESCE(S.DS_SECAO,'SEM SEÇÃO')DS_SECAO, {#10} RS.O_QT_SALDO, MOV.VL_CUSTO VL_CUSTOUNIT, (MOV.VL_CUSTO * IO.qt_itemproducao) VL_TOTAL, {#10} MAX(IR.NR_REGISTRO) NR_REGISTRO, MAX(IR.DS_MANEJO) DS_MANEJO, MAX(IR.DS_RECOMENDACAO) DS_RECOMENDACAO, {#10} I.DS_NATUREZAFISICA, I.NR_UMMAX, I.NR_P205, I.NR_COT, I.NR_K2O, I.NR_TOTAL, I.NR_PH, {#10} I.NR_CTC, I.NR_CO, I.NR_CTC_C, I.NR_CRA, {#10} (
SELECT LIST(LS.NR_DOCUMENTO, ', ') {#10}
FROM MOVESTOQUE MV {#10}
INNER JOIN LOTESEMENTE LS ON (LS.CD_EMPRESA = MV.CD_EMPRLOTE {#10}
AND LS.NR_LOTE = MV.NR_LOTE {#10}
AND LS.CD_ITEM = MV.CD_ITEM) {#10}
WHERE MV.CD_EMPRORDEMPROD = O.CD_EMPRESA {#10}
AND MV.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO {#10}
AND MV.CD_ITEM = O.CD_ITEM {#10}
AND MV.ST_CANCELAMENTO = 'N' {#10}
AND MV.QT_ESTOQUE > 0) NR_LOTES {#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}
AND IO.TP_DESPESA = 'M') {#10}
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA) {#10}
INNER JOIN ITEM I ON (O.CD_ITEM = I.CD_ITEM) {#10}
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA) {#10}
LEFT JOIN MOVESTOQUE MOV ON (MOV.CD_EMPRORDEMPROD = O.CD_EMPRESA {#10}
AND MOV.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO {#10}
AND MOV.CD_ITEM = IO.CD_MATERIAPRIMA) {#10}
LEFT JOIN secao s ON (S.cd_secao = M.cd_secao){#10}
LEFT JOIN ITEMRECEITA IR ON (IR.CD_ITEM = I.CD_ITEM){#10}
LEFT JOIN RETORNA_SALDOESTOQUE(O.CD_EMPRESA, IO.CD_MATERIAPRIMA, IO.CD_TIPOLOCAL, IO.CD_LOCAL, NULL) RS ON (1=1) {#10}
WHERE O.CD_EMPRESA = {iParametros[1]}
AND O.NR_ORDEMPRODUCAO = {iParametros[2] + #10}
GROUP BY O.NR_ORDEMPRODUCAO, M.CD_SECAO, IO.QT_ITEMPRODUCAO, {#10} CD_EMPRESA, NM_EMPRESA, NR_ORDEMPRODUCAO, CD_ITEM, DS_ITEM, SG_UNIDMED, {#10} QT_PRODUZIDA, DT_INICIOPRODUCAO, DT_FIMPRODUCAO, TP_ORDEMPRODUCAO, CD_MATERIAPRIMA, {#10} DS_MATERIAPRIMA, QT_ITEMPRODUCAO, TP_DESPESA, DS_OBSERVACAO, CD_SECAO, DS_SECAO, {#10} O_QT_SALDO, VL_CUSTOUNIT, VL_TOTAL, DS_NATUREZAFISICA, NR_UMMAX, NR_P205, NR_COT, {#10} NR_K2O, NR_TOTAL, NR_PH, NR_CTC, NR_CO, NR_CTC_C, NR_CRA, NR_LOTES {#10}
ORDER BY O.NR_ORDEMPRODUCAO, M.CD_SECAO, IO.QT_ITEMPRODUCAO, {#10}CD_EMPRESA, NM_EMPRESA, NR_ORDEMPRODUCAO, CD_ITEM, DS_ITEM, SG_UNIDMED, {#10}QT_PRODUZIDA, DT_INICIOPRODUCAO, DT_FIMPRODUCAO, TP_ORDEMPRODUCAO, CD_MATERIAPRIMA, {#10}DS_MATERIAPRIMA, QT_ITEMPRODUCAO, TP_DESPESA, DS_OBSERVACAO, CD_SECAO, DS_SECAO, {#10}O_QT_SALDO, VL_CUSTOUNIT, VL_TOTAL, DS_NATUREZAFISICA, NR_UMMAX, NR_P205, NR_COT, {#10}NR_K2O, NR_TOTAL, NR_PH, NR_CTC, NR_CO, NR_CTC_C, NR_CRA, NR_LOTES
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
EMPRESA | referenciada nas queries do layout |
ITEM | referenciada nas queries do layout |
ITEMORDEMPROD | referenciada nas queries do layout |
ITEMRECEITA | referenciada nas queries do layout |
LOTESEMENTE | referenciada nas queries do layout |
MOVESTOQUE | referenciada nas queries do layout |
ORDEMPRODUCAO | referenciada nas queries do layout |
RETORNA_SALDOESTOQUE | referenciada nas queries do layout |
SECAO | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LOP021/ULOP021.pas - DFM:
source/LOP021/ULOP021.dfm - Package:
source/LOP021/LOP021.dpk