Pular para o conteúdo principal

LOP018 — Layout LOP018

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 EMPRESA, ITEM, MARCA, GRUPO, SUBGRUPO, SECAO (+6), filtrada por CD_EMPRLOTEPROD, NR_LOTEPRODUCAO.

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, MIN(O.NR_ORDEMPRODUCAO) NR_ORDEMPRODUCAO, O.NR_LOTEPRODUCAO, MIN(O.DT_INICIOPRODUCAO) DT_INICIOPRODUCAO, SUM(O.QT_PRODUZIDA)QT_PRODUZIDA, I.CD_MARCA||' - '||MARCA.DS_MARCA DS_MARCA, I.CD_GRUPO||' - '||GRUPO.DS_GRUPO DS_GRUPO, COALESCE(I.CD_SUBGRUPO||' - '||SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo')DS_SUBGRUPO, I.CD_MARCA, I.CD_GRUPO, I.CD_SUBGRUPO, I.CD_SECAO||' - '||SECAO.DS_SECAO DS_SECAO
FROM ORDEMPRODUCAO O
INNER JOIN EMPRESA E ON (E.CD_EMPRESA = O.CD_EMPRESA)
INNER JOIN ITEM I ON (O.CD_ITEM = I.CD_ITEM)
INNER JOIN MARCA ON (MARCA.CD_MARCA = I.CD_MARCA)
INNER JOIN GRUPO ON (GRUPO.CD_GRUPO = I.CD_GRUPO)
LEFT JOIN SUBGRUPO ON (SUBGRUPO.CD_SUBGRUPO = I.CD_SUBGRUPO)
LEFT JOIN SECAO ON (SECAO.CD_SECAO = I.CD_SECAO)
WHERE O.CD_EMPRLOTEPROD = 6
AND O.NR_LOTEPRODUCAO = 18
GROUP BY O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, I.CD_MARCA, MARCA.DS_MARCA, I.CD_GRUPO, GRUPO.DS_GRUPO, I.CD_SUBGRUPO, SUBGRUPO.DS_SUBGRUPO, I.CD_MARCA, I.CD_GRUPO, I.CD_SUBGRUPO, I.CD_SECAO||' - '||SECAO.DS_SECAO
ORDER BY I.CD_MARCA, I.CD_GRUPO, I.CD_SUBGRUPO
SELECT L.DS_LINHA||' '||C.DS_COLUNA DS_LINHA, N.QT_GRADE
FROM ORDEMPRODUCAOGRADE N
INNER JOIN LINHAGRADE L ON (L.CD_GRADE = N.CD_GRADE
AND L.NR_LINHA = N.NR_LINHA)
INNER JOIN COLUNAGRADE C ON (C.CD_GRADE = N.CD_GRADE
AND C.NR_COLUNA = N.NR_COLUNA)
INNER JOIN ITEM I ON (I.CD_ITEM = N.CD_ITEM)
INNER JOIN MARCA ON (MARCA.CD_MARCA = I.CD_MARCA)
INNER JOIN GRUPO ON (GRUPO.CD_GRUPO = I.CD_GRUPO)
LEFT JOIN SUBGRUPO ON (SUBGRUPO.CD_SUBGRUPO = I.CD_SUBGRUPO)
INNER JOIN SECAO ON (SECAO.CD_SECAO = I.CD_SECAO)
WHERE N.CD_EMPRESA = :CD_EMPRESA
AND N.NR_ORDEMPRODUCAO = :NR_ORDEMPRODUCAO
AND N.CD_ITEM = :CD_ITEM
AND I.CD_GRUPO = :CD_GRUPO
AND COALESCE(I.CD_SUBGRUPO,-1) = COALESCE(:CD_SUBGRUPO,-1)
ORDER BY L.NR_ORDEM, L.NR_LINHA, C.NR_ORDEM, C.NR_COLUNA CD_EMPRESA 1 NR_ORDEMPRODUCAO CD_ITEM CD_GRUPO CD_SUBGRUPO
SELECT P.NR_PEDIDO, S.CD_PESSOA||' - '||S.NM_PESSOA||COALESCE(' - '||S.NM_FANTASIA,'') NM_PESSOA, SE.DS_ENDERECO||COALESCE(', '||SE.NR_ENDERECO,'')||COALESCE(' '||SE.DS_BAIRRO,'') DS_ENDERECO, SM.DS_MUNICIPIO||' - '||SM.SG_ESTADO DS_MUNICIPIO, P.DS_OBSERVACAO, COALESCE(SE.NR_FONE, SE.NR_FAX) NR_FONE, P.DT_ENTREGA, P.NR_PEDIDOFOR
FROM ORDEMPRODUCAOPEDIDO OP
INNER JOIN PEDIDO P ON (P.CD_EMPRESA = OP.CD_EMPRPED
AND P.TP_PEDIDO = OP.TP_PEDIDO
AND P.NR_PEDIDO = OP.NR_PEDIDO)
INNER JOIN PESSOA S ON (S.CD_PESSOA = P.CD_PESSOA)
INNER JOIN ENDERECOPESSOA SE ON (SE.CD_PESSOA = P.CD_PESSOA
AND SE.CD_ENDERECO = P.CD_ENDERECO)
INNER JOIN MUNICIPIO SM ON (SM.CD_MUNICIPIO = SE.CD_MUNICIPIO)
WHERE OP.CD_EMPRESA = :CD_EMPRESA
AND OP.NR_ORDEMPRODUCAO = :NR_ORDEMPRODUCAO CD_EMPRESA 1 NR_ORDEMPRODUCAO

Producao #2​

SELECT O.CD_EMPRESA, E.NM_EMPRESA, Min(O.NR_ORDEMPRODUCAO) NR_ORDEMPRODUCAO, {#10} O.NR_LOTEPRODUCAO,O.DT_INICIOPRODUCAO DT_INICIOPRODUCAO, {#10} SUM(O.QT_PRODUZIDA)QT_PRODUZIDA, {#10} I.CD_GRUPO||' - '||GRUPO.DS_GRUPO DS_GRUPO, {#10} COALESCE(I.CD_SUBGRUPO||' - '||SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo')DS_SUBGRUPO, {#10} I.CD_MARCA, I.CD_GRUPO, I.CD_SUBGRUPO, I.CD_SECAO, {#10} COALESCE(I.CD_SECAO||' - '||SECAO.DS_SECAO, 'Sem Seção') DS_SECAO {#10}
FROM ORDEMPRODUCAO O {#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 MARCA ON (MARCA.CD_MARCA = I.CD_MARCA) {#10}
INNER JOIN GRUPO ON (GRUPO.CD_GRUPO = I.CD_GRUPO) {#10}
LEFT JOIN SUBGRUPO ON (SUBGRUPO.CD_SUBGRUPO = I.CD_SUBGRUPO) {#10}
INNER JOIN SECAO ON (SECAO.CD_SECAO = I.CD_SECAO) {#10+ iWhere +#10}
GROUP BY O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, O.DT_INICIOPRODUCAO,{#10} I.CD_MARCA, I.CD_GRUPO, GRUPO.DS_GRUPO, {#10} I.CD_SUBGRUPO, SUBGRUPO.DS_SUBGRUPO, I.CD_MARCA, I.CD_GRUPO, I.CD_SUBGRUPO, {#10} I.CD_SECAO, COALESCE(I.CD_SECAO||' - '||SECAO.DS_SECAO, 'Sem Seção'), {#10} COALESCE(SECAO.DS_SECAO, 'Sem Seção'), GRUPO.DS_GRUPO, COALESCE(SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo'){#10}
ORDER BY COALESCE(SECAO.DS_SECAO, 'Sem Seção'), GRUPO.DS_GRUPO, COALESCE(SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo')

tabGrade #1​

SELECT L.DS_LINHA||' '||C.DS_COLUNA DS_LINHA, SUM(N.QT_GRADE) QT_GRADE {#10}
FROM ORDEMPRODUCAO O {#10}
INNER JOIN ORDEMPRODUCAOGRADE N ON (N.CD_EMPRESA = O.CD_EMPRESA {#10}
AND N.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO) {#10}
INNER JOIN ITEM I ON (I.CD_ITEM = N.CD_ITEM {#10}
AND I.CD_GRADE = N.CD_GRADE) {#10}
INNER JOIN LINHAGRADE L ON (L.CD_GRADE = N.CD_GRADE {#10}
AND L.NR_LINHA = N.NR_LINHA) {#10}
INNER JOIN COLUNAGRADE C ON (C.CD_GRADE = N.CD_GRADE {#10}
AND C.NR_COLUNA = N.NR_COLUNA) {#10+ iWhere +#10}
AND I.CD_GRUPO = :CD_GRUPO {#10}
AND COALESCE(I.CD_SUBGRUPO,-1) = COALESCE(:CD_SUBGRUPO,-1) {#10}
AND I.CD_SECAO = :CD_SECAO {#10}
GROUP BY L.DS_LINHA||' '||C.DS_COLUNA {#10}
ORDER BY L.DS_LINHA||' '||C.DS_COLUNA

Producao #3​

SELECT O.CD_EMPRESA, E.NM_EMPRESA, MIN(O.NR_ORDEMPRODUCAO) NR_ORDEMPRODUCAO, {#10} O.NR_LOTEPRODUCAO, MIN(O.DT_INICIOPRODUCAO) DT_INICIOPRODUCAO, {#10} SUM(O.QT_PRODUZIDA)QT_PRODUZIDA, {#10} I.CD_GRUPO||' - '||GRUPO.DS_GRUPO DS_GRUPO, {#10} COALESCE(I.CD_SUBGRUPO||' - '||SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo')DS_SUBGRUPO, {#10} I.CD_MARCA, I.CD_GRUPO, I.CD_SUBGRUPO, -1 CD_SECAO {#10}
FROM ORDEMPRODUCAO O {#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 MARCA ON (MARCA.CD_MARCA = I.CD_MARCA) {#10}
INNER JOIN GRUPO ON (GRUPO.CD_GRUPO = I.CD_GRUPO) {#10}
LEFT JOIN SUBGRUPO ON (SUBGRUPO.CD_SUBGRUPO = I.CD_SUBGRUPO) {#10}
LEFT JOIN SECAO ON (SECAO.CD_SECAO = I.CD_SECAO) {#10+ iWhere +#10}
GROUP BY O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, {#10} I.CD_MARCA, MARCA.DS_MARCA, I.CD_GRUPO, GRUPO.DS_GRUPO, {#10} I.CD_SUBGRUPO, SUBGRUPO.DS_SUBGRUPO, I.CD_MARCA, I.CD_GRUPO, I.CD_SUBGRUPO, {#10} COALESCE(SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo') {#10}
ORDER BY GRUPO.DS_GRUPO, COALESCE(SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo')

tabGrade #2​

SELECT L.DS_LINHA||' '||C.DS_COLUNA DS_LINHA, SUM(N.QT_GRADE) QT_GRADE {#10}
FROM ORDEMPRODUCAO O {#10}
INNER JOIN ORDEMPRODUCAOGRADE N ON (N.CD_EMPRESA = O.CD_EMPRESA {#10}
AND N.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO) {#10}
INNER JOIN ITEM I ON (I.CD_ITEM = N.CD_ITEM {#10}
AND I.CD_GRADE = N.CD_GRADE) {#10}
INNER JOIN LINHAGRADE L ON (L.CD_GRADE = N.CD_GRADE {#10}
AND L.NR_LINHA = N.NR_LINHA) {#10}
INNER JOIN COLUNAGRADE C ON (C.CD_GRADE = N.CD_GRADE {#10}
AND C.NR_COLUNA = N.NR_COLUNA) {#10+ iWhere +#10}
AND I.CD_GRUPO = :CD_GRUPO {#10}
AND COALESCE(I.CD_SUBGRUPO,-1) = COALESCE(:CD_SUBGRUPO,-1) {#10}
AND -1 = COALESCE(:CD_SECAO, -1) {#10}
GROUP BY I.CD_GRUPO, I.CD_SUBGRUPO, L.DS_LINHA||' '||C.DS_COLUNA {#10}
ORDER BY I.CD_GRUPO, I.CD_SUBGRUPO, L.DS_LINHA||' '||C.DS_COLUNA

Producao #4​

SELECT -1 NR_ORDEMPRODUCAO, -1 CD_ITEM, O.CD_EMPRESA, E.NM_EMPRESA, O.CD_EMPRPROD, O.TP_PRODUCAO, M.SG_UNIDMED, {#10} IO.CD_MATERIAPRIMA, M.DS_ITEM DS_MATERIAPRIMA, {#10} M.CD_MARCA||' - '||MARCA.DS_MARCA DS_MARCA, {#10} M.CD_GRUPO||' - '||GRUPO.DS_GRUPO DS_GRUPO, {#10} COALESCE(M.CD_SECAO||' - '||SECAO.DS_SECAO,'Sem Seção') DS_SECAO, {#10} COALESCE(M.CD_SUBGRUPO||' - '||SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo')DS_SUBGRUPO, {#10} SUM(IO.QT_ITEMPRODUCAO) QT_ITEMPRODUCAO, {#10} RSE.O_QT_SALDO QT_ESTOQUE, {#10} RSE.O_QT_SALDO - SUM(IO.QT_ITEMPRODUCAO) QT_SALDO {#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 M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA) {#10}
INNER JOIN MARCA ON (MARCA.CD_MARCA = M.CD_MARCA) {#10}
INNER JOIN GRUPO ON (GRUPO.CD_GRUPO = M.CD_GRUPO) {#10}
LEFT JOIN SUBGRUPO ON (SUBGRUPO.CD_SUBGRUPO = M.CD_SUBGRUPO) {#10}
LEFT JOIN SECAO ON (SECAO.CD_SECAO = M.CD_SECAO) {#10}
LEFT JOIN PRODUCAO PROD ON (PROD.CD_EMPRESA = O.CD_EMPRPROD {#10}
AND PROD.CD_ITEM = O.CD_ITEM {#10}
AND PROD.TP_PRODUCAO = O.TP_PRODUCAO {#10}
AND PROD.NR_VERSAO = O.NR_VERSAO) {#10}/*
LEFT JOIN ORDEMPRODUCAOPEDIDO OP ON (OP.CD_EMPRESA = O.CD_EMPRESA {#10}
AND OP.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO) {#10}
LEFT JOIN MOVESTOQUE MV ON (MV.CD_EMPRORDEMPROD = IO.CD_EMPRESA {#10}
AND MV.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO {#10}
AND MV.CD_ITEM = IO.CD_MATERIAPRIMA {#10}
AND MV.ST_CANCELAMENTO = 'N' {#10}
AND MV.QT_ESTOQUE = IO.QT_ITEMPRODUCAO) {#10}
LEFT JOIN ORDEMPRODUCAOGRADE OPG ON (OPG.CD_EMPRESA = IO.CD_EMPRESA {#10}
AND OPG.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO {#10}
AND OPG.CD_ITEM = IO.CD_MATERIAPRIMA {#10}
AND OPG.CD_GRADE = MV.CD_GRADE {#10}
AND OPG.NR_LINHA = MV.NR_LINHA {#10}
AND OPG.NR_COLUNA = MV.NR_COLUNA ) {#10}
LEFT JOIN ITEMPEDIDO IP ON (IP.CD_EMPRESA = OP.CD_EMPRPED {#10}
AND IP.NR_PEDIDO = OP.NR_PEDIDO {#10}
AND IP.TP_PEDIDO = OP.TP_PEDIDO {#10}
AND IP.CD_ITEM = OP.CD_ITEM) */{#10}
LEFT JOIN RETORNA_SALDOESTOQUE(O.CD_EMPRESA, IO.CD_MATERIAPRIMA, IO.CD_TIPOLOCAL, IO.CD_LOCAL, NULL) RSE ON (1=1) {#10+ iWhere +#10}
AND IO.TP_DESPESA = 'M' {#10}
GROUP BY O.CD_EMPRESA, E.NM_EMPRESA, O.CD_EMPRPROD, O.TP_PRODUCAO, M.SG_UNIDMED, {#10} IO.CD_MATERIAPRIMA, M.DS_ITEM, M.CD_MARCA, MARCA.DS_MARCA, M.CD_GRUPO, GRUPO.DS_GRUPO, {#10} M.CD_SUBGRUPO, SUBGRUPO.DS_SUBGRUPO, RSE.O_QT_SALDO, COALESCE(M.CD_SECAO||' - '||SECAO.DS_SECAO, 'Sem Seção') {#10}
ORDER BY M.CD_MARCA, M.CD_GRUPO, M.CD_SUBGRUPO, IO.CD_MATERIAPRIMA

tabGrade #3​

{sqlGrade}

Consulta​

SELECT NR_LOTEPRODUCAO, CD_EMPRLOTEPROD
FROM ORDEMPRODUCAO
WHERE CD_EMPRESA = {iParametros[1]}
AND NR_ORDEMPRODUCAO = {iParametros[2]}

Text #1​

SELECT O.CD_EMPRESA, E.NM_EMPRESA, Min(O.NR_ORDEMPRODUCAO) NR_ORDEMPRODUCAO, {#10} O.NR_LOTEPRODUCAO,O.DT_INICIOPRODUCAO DT_INICIOPRODUCAO, {#10} SUM(O.QT_PRODUZIDA)QT_PRODUZIDA, {#10} I.CD_GRUPO||' - '||GRUPO.DS_GRUPO DS_GRUPO, {#10} COALESCE(I.CD_SUBGRUPO||' - '||SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo')DS_SUBGRUPO, {#10} I.CD_MARCA, I.CD_GRUPO, I.CD_SUBGRUPO, I.CD_SECAO, {#10} COALESCE(I.CD_SECAO||' - '||SECAO.DS_SECAO, 'Sem Seção') DS_SECAO {#10}
FROM ORDEMPRODUCAO O {#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 MARCA ON (MARCA.CD_MARCA = I.CD_MARCA) {#10}
INNER JOIN GRUPO ON (GRUPO.CD_GRUPO = I.CD_GRUPO) {#10}
LEFT JOIN SUBGRUPO ON (SUBGRUPO.CD_SUBGRUPO = I.CD_SUBGRUPO) {#10}
INNER JOIN SECAO ON (SECAO.CD_SECAO = I.CD_SECAO) {#10+ iWhere +#10}
GROUP BY O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, O.DT_INICIOPRODUCAO,{#10} I.CD_MARCA, I.CD_GRUPO, GRUPO.DS_GRUPO, {#10} I.CD_SUBGRUPO, SUBGRUPO.DS_SUBGRUPO, I.CD_MARCA, I.CD_GRUPO, I.CD_SUBGRUPO, {#10} I.CD_SECAO, COALESCE(I.CD_SECAO||' - '||SECAO.DS_SECAO, 'Sem Seção'), {#10} COALESCE(SECAO.DS_SECAO, 'Sem Seção'), GRUPO.DS_GRUPO, COALESCE(SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo'){#10}
ORDER BY COALESCE(SECAO.DS_SECAO, 'Sem Seção'), GRUPO.DS_GRUPO, COALESCE(SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo')

Text #2​

SELECT L.DS_LINHA||' '||C.DS_COLUNA DS_LINHA, SUM(N.QT_GRADE) QT_GRADE {#10}
FROM ORDEMPRODUCAO O {#10}
INNER JOIN ORDEMPRODUCAOGRADE N ON (N.CD_EMPRESA = O.CD_EMPRESA {#10}
AND N.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO) {#10}
INNER JOIN ITEM I ON (I.CD_ITEM = N.CD_ITEM {#10}
AND I.CD_GRADE = N.CD_GRADE) {#10}
INNER JOIN LINHAGRADE L ON (L.CD_GRADE = N.CD_GRADE {#10}
AND L.NR_LINHA = N.NR_LINHA) {#10}
INNER JOIN COLUNAGRADE C ON (C.CD_GRADE = N.CD_GRADE {#10}
AND C.NR_COLUNA = N.NR_COLUNA) {#10+ iWhere +#10}
AND I.CD_GRUPO = :CD_GRUPO {#10}
AND COALESCE(I.CD_SUBGRUPO,-1) = COALESCE(:CD_SUBGRUPO,-1) {#10}
AND I.CD_SECAO = :CD_SECAO {#10}
GROUP BY L.DS_LINHA||' '||C.DS_COLUNA {#10}
ORDER BY L.DS_LINHA||' '||C.DS_COLUNA

Text #3​

SELECT O.CD_EMPRESA, E.NM_EMPRESA, MIN(O.NR_ORDEMPRODUCAO) NR_ORDEMPRODUCAO, {#10} O.NR_LOTEPRODUCAO, MIN(O.DT_INICIOPRODUCAO) DT_INICIOPRODUCAO, {#10} SUM(O.QT_PRODUZIDA)QT_PRODUZIDA, {#10} I.CD_GRUPO||' - '||GRUPO.DS_GRUPO DS_GRUPO, {#10} COALESCE(I.CD_SUBGRUPO||' - '||SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo')DS_SUBGRUPO, {#10} I.CD_MARCA, I.CD_GRUPO, I.CD_SUBGRUPO, -1 CD_SECAO {#10}
FROM ORDEMPRODUCAO O {#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 MARCA ON (MARCA.CD_MARCA = I.CD_MARCA) {#10}
INNER JOIN GRUPO ON (GRUPO.CD_GRUPO = I.CD_GRUPO) {#10}
LEFT JOIN SUBGRUPO ON (SUBGRUPO.CD_SUBGRUPO = I.CD_SUBGRUPO) {#10}
LEFT JOIN SECAO ON (SECAO.CD_SECAO = I.CD_SECAO) {#10+ iWhere +#10}
GROUP BY O.CD_EMPRESA, E.NM_EMPRESA, O.NR_LOTEPRODUCAO, {#10} I.CD_MARCA, MARCA.DS_MARCA, I.CD_GRUPO, GRUPO.DS_GRUPO, {#10} I.CD_SUBGRUPO, SUBGRUPO.DS_SUBGRUPO, I.CD_MARCA, I.CD_GRUPO, I.CD_SUBGRUPO, {#10} COALESCE(SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo') {#10}
ORDER BY GRUPO.DS_GRUPO, COALESCE(SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo')

Text #4​

SELECT L.DS_LINHA||' '||C.DS_COLUNA DS_LINHA, SUM(N.QT_GRADE) QT_GRADE {#10}
FROM ORDEMPRODUCAO O {#10}
INNER JOIN ORDEMPRODUCAOGRADE N ON (N.CD_EMPRESA = O.CD_EMPRESA {#10}
AND N.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO) {#10}
INNER JOIN ITEM I ON (I.CD_ITEM = N.CD_ITEM {#10}
AND I.CD_GRADE = N.CD_GRADE) {#10}
INNER JOIN LINHAGRADE L ON (L.CD_GRADE = N.CD_GRADE {#10}
AND L.NR_LINHA = N.NR_LINHA) {#10}
INNER JOIN COLUNAGRADE C ON (C.CD_GRADE = N.CD_GRADE {#10}
AND C.NR_COLUNA = N.NR_COLUNA) {#10+ iWhere +#10}
AND I.CD_GRUPO = :CD_GRUPO {#10}
AND COALESCE(I.CD_SUBGRUPO,-1) = COALESCE(:CD_SUBGRUPO,-1) {#10}
AND -1 = COALESCE(:CD_SECAO, -1) {#10}
GROUP BY I.CD_GRUPO, I.CD_SUBGRUPO, L.DS_LINHA||' '||C.DS_COLUNA {#10}
ORDER BY I.CD_GRUPO, I.CD_SUBGRUPO, L.DS_LINHA||' '||C.DS_COLUNA

Text #5​

SELECT -1 NR_ORDEMPRODUCAO, -1 CD_ITEM, O.CD_EMPRESA, E.NM_EMPRESA, O.CD_EMPRPROD, O.TP_PRODUCAO, M.SG_UNIDMED, {#10} IO.CD_MATERIAPRIMA, M.DS_ITEM DS_MATERIAPRIMA, {#10} M.CD_MARCA||' - '||MARCA.DS_MARCA DS_MARCA, {#10} M.CD_GRUPO||' - '||GRUPO.DS_GRUPO DS_GRUPO, {#10} COALESCE(M.CD_SECAO||' - '||SECAO.DS_SECAO,'Sem Seção') DS_SECAO, {#10} COALESCE(M.CD_SUBGRUPO||' - '||SUBGRUPO.DS_SUBGRUPO,'Sem SubGrupo')DS_SUBGRUPO, {#10} SUM(IO.QT_ITEMPRODUCAO) QT_ITEMPRODUCAO, {#10} RSE.O_QT_SALDO QT_ESTOQUE, {#10} RSE.O_QT_SALDO - SUM(IO.QT_ITEMPRODUCAO) QT_SALDO {#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 M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA) {#10}
INNER JOIN MARCA ON (MARCA.CD_MARCA = M.CD_MARCA) {#10}
INNER JOIN GRUPO ON (GRUPO.CD_GRUPO = M.CD_GRUPO) {#10}
LEFT JOIN SUBGRUPO ON (SUBGRUPO.CD_SUBGRUPO = M.CD_SUBGRUPO) {#10}
LEFT JOIN SECAO ON (SECAO.CD_SECAO = M.CD_SECAO) {#10}
LEFT JOIN PRODUCAO PROD ON (PROD.CD_EMPRESA = O.CD_EMPRPROD {#10}
AND PROD.CD_ITEM = O.CD_ITEM {#10}
AND PROD.TP_PRODUCAO = O.TP_PRODUCAO {#10}
AND PROD.NR_VERSAO = O.NR_VERSAO) {#10}/*
LEFT JOIN ORDEMPRODUCAOPEDIDO OP ON (OP.CD_EMPRESA = O.CD_EMPRESA {#10}
AND OP.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO) {#10}
LEFT JOIN MOVESTOQUE MV ON (MV.CD_EMPRORDEMPROD = IO.CD_EMPRESA {#10}
AND MV.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO {#10}
AND MV.CD_ITEM = IO.CD_MATERIAPRIMA {#10}
AND MV.ST_CANCELAMENTO = 'N' {#10}
AND MV.QT_ESTOQUE = IO.QT_ITEMPRODUCAO) {#10}
LEFT JOIN ORDEMPRODUCAOGRADE OPG ON (OPG.CD_EMPRESA = IO.CD_EMPRESA {#10}
AND OPG.NR_ORDEMPRODUCAO = IO.NR_ORDEMPRODUCAO {#10}
AND OPG.CD_ITEM = IO.CD_MATERIAPRIMA {#10}
AND OPG.CD_GRADE = MV.CD_GRADE {#10}
AND OPG.NR_LINHA = MV.NR_LINHA {#10}
AND OPG.NR_COLUNA = MV.NR_COLUNA ) {#10}
LEFT JOIN ITEMPEDIDO IP ON (IP.CD_EMPRESA = OP.CD_EMPRPED {#10}
AND IP.NR_PEDIDO = OP.NR_PEDIDO {#10}
AND IP.TP_PEDIDO = OP.TP_PEDIDO {#10}
AND IP.CD_ITEM = OP.CD_ITEM) */{#10}
LEFT JOIN RETORNA_SALDOESTOQUE(O.CD_EMPRESA, IO.CD_MATERIAPRIMA, IO.CD_TIPOLOCAL, IO.CD_LOCAL, NULL) RSE ON (1=1) {#10+ iWhere +#10}
AND IO.TP_DESPESA = 'M' {#10}
GROUP BY O.CD_EMPRESA, E.NM_EMPRESA, O.CD_EMPRPROD, O.TP_PRODUCAO, M.SG_UNIDMED, {#10} IO.CD_MATERIAPRIMA, M.DS_ITEM, M.CD_MARCA, MARCA.DS_MARCA, M.CD_GRUPO, GRUPO.DS_GRUPO, {#10} M.CD_SUBGRUPO, SUBGRUPO.DS_SUBGRUPO, RSE.O_QT_SALDO, COALESCE(M.CD_SECAO||' - '||SECAO.DS_SECAO, 'Sem Seção') {#10}
ORDER BY M.CD_MARCA, M.CD_GRUPO, M.CD_SUBGRUPO, IO.CD_MATERIAPRIMA

Tabelas Utilizadas​

TabelaUso
COLUNAGRADEreferenciada nas queries do layout
EMPRESAreferenciada nas queries do layout
ENDERECOPESSOAreferenciada nas queries do layout
GRUPOreferenciada nas queries do layout
ITEMreferenciada nas queries do layout
ITEMORDEMPRODreferenciada nas queries do layout
ITEMPEDIDOreferenciada nas queries do layout
LINHAGRADEreferenciada nas queries do layout
MARCAreferenciada nas queries do layout
MOVESTOQUEreferenciada nas queries do layout
MUNICIPIOreferenciada nas queries do layout
ORDEMPRODUCAOreferenciada nas queries do layout
ORDEMPRODUCAOGRADEreferenciada nas queries do layout
ORDEMPRODUCAOPEDIDOreferenciada nas queries do layout
PEDIDOreferenciada nas queries do layout
PESSOAreferenciada nas queries do layout
PRODUCAOreferenciada nas queries do layout
RETORNA_SALDOESTOQUEreferenciada nas queries do layout
SECAOreferenciada nas queries do layout
SUBGRUPOreferenciada nas queries do layout

Shared Units​

  • jCommon
  • jPesquisa

Fonte​

  • Unit: source/LOP018/ULOP018.pas
  • DFM: source/LOP018/ULOP018.dfm
  • Package: source/LOP018/LOP018.dpk