LOP006 — Layout LOP006
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, RETORNA_TEMPOPRODUCAO, filtrada por CD_EMPRESA, NR_ORDEMPRODUCAO, TP_DESPESA, IO, JO, CD_ITEM.
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 IO.CD_MATERIAPRIMA, M.DS_ITEM DS_MATERIAPRIMA, IO.QT_ITEMPRODUCAO, M.SG_UNIDMED, TMP.O_NR_TEMPORECORDE NR_RECORDE, TMP.O_NR_TEMPOESTIMADO NR_ESTIMADO
FROM ITEMORDEMPROD IO
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA)
LEFT JOIN RETORNA_TEMPOPRODUCAO(IO.CD_EMPRESA, :CD_ITEM, :QT_PRODUZIDA, IO.CD_MATERIAPRIMA, M.CD_SECAO) TMP ON (1 = 1)
WHERE IO.CD_EMPRESA = :CD_EMPRESA
AND IO.NR_ORDEMPRODUCAO = :NR_ORDEMPRODUCAO
AND IO.TP_DESPESA = 'O'
ORDER BY CASE IO.CD_MATERIAPRIMA WHEN 982 THEN 1 WHEN 937 THEN 2 WHEN 983 THEN 3 WHEN 971 THEN 4 WHEN 984 THEN 5 WHEN 972 THEN 6 WHEN 985 THEN 7 WHEN 974 THEN 8 WHEN 979 THEN 9 WHEN 986 THEN 10 WHEN 976 THEN 11 WHEN 978 THEN 12 WHEN 987 THEN 13 WHEN 980 THEN 14 WHEN 977 THEN 15 WHEN 981 THEN 16 ELSE 99 END CD_ITEM QT_PRODUZIDA CD_EMPRESA 1 NR_ORDEMPRODUCAO
SELECT IO.CD_MATERIAPRIMA, M.DS_ITEM DS_MATERIAPRIMA, IO.QT_ITEMPRODUCAO, M.SG_UNIDMED
FROM ITEMORDEMPROD IO
INNER JOIN ITEM M ON (M.CD_ITEM = IO.CD_MATERIAPRIMA)
WHERE IO.CD_EMPRESA = :CD_EMPRESA
AND IO.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, O.CD_EMPRPROD, O.CD_ITEM, O.TP_PRODUCAO, O.NR_VERSAO, O.CD_ITEM, I.DS_ITEM, I.SG_UNIDMED, O.QT_PRODUZIDA, O.DT_INICIOPRODUCAO, O.DT_FIMPRODUCAO, O.TP_ORDEMPRODUCAO, I.QT_COMPRIMENTO, I.QT_LARGURA, I.QT_ALTURA, P.NR_PEDIDO, P.DT_PEDIDO, P.DT_ENTREGA, S.NM_PESSOA, O.NR_LOTEPRODUCAO, COALESCE(R.ds_municipio,'')||' - '||COALESCE(R.sg_estado,'') DS_MUNICIPIO
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)
LEFT JOIN ORDEMPRODUCAOPEDIDO D ON (D.CD_EMPRESA = O.CD_EMPRESA
AND D.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO)
LEFT JOIN PEDIDO P ON (P.CD_EMPRESA = D.CD_EMPRPED
AND P.NR_PEDIDO = D.NR_PEDIDO
AND P.TP_PEDIDO = D.TP_PEDIDO)
LEFT JOIN PESSOA S ON (S.CD_PESSOA = P.CD_PESSOA)
LEFT JOIN retorna_dadoscadastrais(P.cd_pessoa,NULL) R ON(1 = 1)
Producao #3
{frmLOP006}
Producao #4
{frmLOP006}
Text
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, I.SG_UNIDMED, O.QT_PRODUZIDA, O.DT_INICIOPRODUCAO, O.DT_FIMPRODUCAO, O.TP_ORDEMPRODUCAO, I.QT_COMPRIMENTO, I.QT_LARGURA, I.QT_ALTURA, P.NR_PEDIDO, P.DT_PEDIDO, P.DT_ENTREGA, S.NM_PESSOA, O.NR_LOTEPRODUCAO, COALESCE(R.ds_municipio,'')||' - '||COALESCE(R.sg_estado,'') DS_MUNICIPIO
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)
LEFT JOIN ORDEMPRODUCAOPEDIDO D ON (D.CD_EMPRESA = O.CD_EMPRESA
AND D.NR_ORDEMPRODUCAO = O.NR_ORDEMPRODUCAO)
LEFT JOIN PEDIDO P ON (P.CD_EMPRESA = D.CD_EMPRPED
AND P.NR_PEDIDO = D.NR_PEDIDO
AND P.TP_PEDIDO = D.TP_PEDIDO)
LEFT JOIN PESSOA S ON (S.CD_PESSOA = P.CD_PESSOA)
LEFT JOIN retorna_dadoscadastrais(P.cd_pessoa,NULL) R ON(1 = 1)
Consulta
SELECT NR_LOTEPRODUCAO, CD_EMPRLOTEPROD
FROM ORDEMPRODUCAO
WHERE CD_EMPRESA = {iParametros[1]}
AND NR_ORDEMPRODUCAO = {iParametros[2]}
Tabelas Utilizadas
| Tabela | Uso |
|---|---|
EMPRESA | referenciada nas queries do layout |
ITEM | referenciada nas queries do layout |
ITEMORDEMPROD | referenciada nas queries do layout |
ORDEMPRODUCAO | referenciada nas queries do layout |
ORDEMPRODUCAOPEDIDO | referenciada nas queries do layout |
PEDIDO | referenciada nas queries do layout |
PESSOA | referenciada nas queries do layout |
RETORNA_DADOSCADASTRAIS | referenciada nas queries do layout |
RETORNA_TEMPOPRODUCAO | referenciada nas queries do layout |
Shared Units
- jCommon
- jPesquisa
Fonte
- Unit:
source/LOP006/ULOP006.pas - DFM:
source/LOP006/ULOP006.dfm - Package:
source/LOP006/LOP006.dpk