01. DADOS GERAIS

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


02. DESCRIÇÃO

Ponto UPC para realizar de forma específica a geração de carga para documentos devolução de Picking.

03. LOCALIZAÇÃO

Não se aplica.

04. PARÂMETROS

A tabela temporária de documentos WMS (wm-docto)

05. RETORNO

Ponto do evento valida-doctos-devol indica se o processo foi realizado de forma específica.

06. VERSÕES

12.1.31 ou superiores

08. EXEMPLO

/****************************************************************************************************************
**  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 h-bosc050 AS HANDLE    NO-UNDO.
DEFINE VARIABLE htt1                  AS HANDLE NO-UNDO.
DEFINE VARIABLE hQTTWmDocto           AS HANDLE NO-UNDO.
DEFINE VARIABLE hBTTWmDocto           AS HANDLE NO-UNDO.
DEFINE VARIABLE h-idCarga             AS HANDLE    NO-UNDO.
DEFINE NEW GLOBAL SHARED VARIABLE h-ttwm-docto  AS WIDGET-HANDLE  NO-UNDO.

IF p-ind-event = "validaDoctosDevolucao" THEN DO:

   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.

       DO WHILE NOT(hQTTWmDocto:QUERY-OFF-END):

           ASSIGN h-idCarga = hBTTWmDocto:BUFFER-FIELD('id-carga').

           IF  NOT VALID-HANDLE (h-bosc050) THEN
               RUN scbo/bosc050.p PERSISTENT SET h-bosc050.
    
           RUN geraSeqCarga IN h-bosc050 (OUTPUT de-serial).
    
           CREATE wm-carga.
           ASSIGN wm-carga.cod-estabel    = string(hBTTWmDocto:buffer-field("cod-estabel"):buffer-value)
                  wm-carga.cod-local      = string(hBTTWmDocto:buffer-field("cod-local"):buffer-value)
                  wm-carga.dt-geracao     = TODAY
                  wm-carga.hr-geracao     = TIME
                  wm-carga.id-carga       = de-serial
                  wm-carga.ind-enviado-mp = 1 /* transferido (Multiplanta) */
               .
    
           ASSIGN h-idCarga:BUFFER-VALUE = wm-carga.id-carga.
    
           {method/svc/autentic/autentic.i &vUserName="wm-carga.cod-usuario"}
           VALIDATE wm-carga.

           create tt-epc.
           assign tt-epc.cod-event     = "valida-doctos-devol"
                  tt-epc.cod-parameter = "valida-doctos-devol"
                  tt-epc.val-parameter = string(YES).
    
           IF  VALID-HANDLE (h-bosc050) THEN DO:
               DELETE PROCEDURE h-bosc050.
               ASSIGN h-bosc050 = ?.
           END.
           hQTTWmDocto:GET-NEXT.
       END.
       hQTTWmDocto:QUERY-CLOSE.
   END.
END.

RETURN "OK":U.