| Produto: | TOTVS Logística WMS |
|---|---|
| Linha de Produto: | Linha Datasul |
| Segmento: | Logística |
| Módulo: | MWM - Warehouse Management System |
| Função: | WM9000 |
| País: | Brasil |
| Ticket: | 11727206 |
| Requisito/Story/Issue (informe o requisito relacionado) : | FSWSES-2277 |
Ponto UPC na criação da tabela temporária com os itens do documento (wm-docto-itens).
Não se aplica.
1) A tabela temporária com os itens do documento (wm-docto-itens).
2) A tabela temporária de documentos WMS (wm-docto).
3) Rowid da tabela etiqueta (wm-etiqueta).
4) Rowid da tabela de itens do pedido (wm-docto-itens-ped)
5) Quantidade do item
6) Quantidade do peso
Ponto do evento criacao-ttwm-docto-itens indica se o processo foi realizado de forma específica.
12.1.31 ou superiores
/****************************************************************************************************************
** Cliente.....: Borrachas Vipal
** Programa....: wm9000-upc.p
****************************************************************************************************************/
{include/i-epc200.i1} /*Defini»’o da temp-table tt-epc*/
DEFINE INPUT PARAMETER p-ind-event AS CHARACTER NO-UNDO.
DEFINE INPUT-OUTPUT PARAMETER TABLE FOR tt-epc.
DEFINE VARIABLE htt1 AS HANDLE NO-UNDO.
DEFINE VARIABLE h-ttwm-docto-itens AS HANDLE NO-UNDO.
DEFINE VARIABLE hQTTWmDocto AS HANDLE NO-UNDO.
DEFINE VARIABLE hBTTWmDocto AS HANDLE NO-UNDO.
DEFINE VARIABLE de-qde-item AS DECIMAL NO-UNDO.
DEFINE VARIABLE de-qde-peso AS DECIMAL NO-UNDO.
DEFINE VARIABLE r-wm-etiqueta AS ROWID NO-UNDO.
DEFINE VARIABLE r-wm-docto-itens-ped AS ROWID NO-UNDO.
DEFINE VARIABLE l-encontrou AS LOGICAL NO-UNDO.
DEFINE VARIABLE c-cod-estabel AS CHARACTER NO-UNDO.
DEFINE VARIABLE c-cod-local AS CHARACTER NO-UNDO.
DEFINE VARIABLE de-id-docto AS DECIMAL NO-UNDO.
DEFINE VARIABLE h-idDocto AS WIDGET-HANDLE NO-UNDO.
DEFINE VARIABLE h-codEstabel AS WIDGET-HANDLE NO-UNDO.
DEFINE VARIABLE h-codLocal AS WIDGET-HANDLE NO-UNDO.
IF p-ind-event = "criacao-ttwm-docto-itens" THEN DO:
FIND FIRST tt-epc
WHERE tt-epc.cod-event = p-ind-event
AND tt-epc.cod-parameter = "rowid-wm-etiqueta" NO-ERROR.
IF AVAIL tt-epc THEN DO:
ASSIGN r-wm-etiqueta = to-rowid(tt-epc.val-parameter).
END.
FIND FIRST wm-etiqueta NO-LOCK
WHERE ROWID(wm-etiqueta) = r-wm-etiqueta NO-ERROR.
IF NOT AVAIL wm-etiqueta THEN
RETURN "NOK":U.
FIND FIRST tt-epc
WHERE tt-epc.cod-event = p-ind-event
AND tt-epc.cod-parameter = "rowid-wm-docto-itens-ped" NO-ERROR.
IF AVAIL tt-epc THEN DO:
ASSIGN r-wm-docto-itens-ped = to-rowid(tt-epc.val-parameter).
END.
FIND FIRST wm-docto-itens-ped NO-LOCK
WHERE ROWID(wm-docto-itens-ped) = r-wm-docto-itens-ped NO-ERROR.
IF NOT AVAIL wm-docto-itens-ped THEN
RETURN "NOK":U.
FIND FIRST tt-epc
WHERE tt-epc.cod-event = p-ind-event
AND tt-epc.cod-parameter = "valores-tt-wm-etiqueta" NO-ERROR.
IF AVAIL tt-epc THEN DO:
ASSIGN de-qde-item = DECIMAL(ENTRY(1,tt-epc.val-parameter,"|"))
de-qde-peso = DECIMAL(ENTRY(1,tt-epc.val-parameter,"|")).
END.
FIND FIRST tt-epc
WHERE tt-epc.cod-event = p-ind-event
AND tt-epc.cod-parameter = "handle-ttWm-docto" NO-ERROR.
IF AVAIL tt-epc THEN DO:
ASSIGN h-ttwm-docto = WIDGET-HANDLE(tt-epc.val-parameter).
ASSIGN htt1 = h-ttwm-docto:DEFAULT-BUFFER-HANDLE.
CREATE BUFFER hBTTWmDocto FOR TABLE htt1 BUFFER-NAME "ttWm-docto".
CREATE QUERY hQTTWmDocto.
hQTTWmDocto:SET-BUFFERS(hBTTWmDocto).
IF VALID-HANDLE(hQTTWmDocto) THEN
ASSIGN hQTTWmDocto:FORWARD-ONLY = YES.
hQTTWmDocto:QUERY-PREPARE("FOR EACH ttWm-docto").
hQTTWmDocto:QUERY-OPEN.
hQTTWmDocto:GET-FIRST.
l-encontrou = NO.
DO WHILE NOT(hQTTWmDocto:QUERY-OFF-END):
ASSIGN h-idDocto = hBTTWmDocto:BUFFER-FIELD("id-docto")
h-codEstabel = hBTTWmDocto:BUFFER-FIELD("cod-estabel")
h-codLocal = hBTTWmDocto:BUFFER-FIELD("cod-local").
ASSIGN c-cod-estabel = h-codEstabel:BUFFER-VALUE
c-cod-local = h-codLocal:BUFFER-VALUE
de-id-docto = h-idDocto:BUFFER-VALUE.
hQTTWmDocto:GET-NEXT.
END.
hQTTWmDocto:QUERY-CLOSE.
END.
END.
RETURN "OK":U.
|