| Produto: | TOTVS Logística WMS |
|---|---|
| Linha de Produto: | Linha Datasul |
| Segmento: | Logística |
| Módulo: | SCBO |
| Função: | BOSC118 |
| País: | Brasil |
| Ticket: | 11377470 |
| Requisito/Story/Issue (informe o requisito relacionado) : | FSWSES-2807 |
Ponto UPC para identificar necessidade de execução de regra específica para cliente Compactor.
Não se aplica.
Não se aplica.
Ponto de evento BeforeValidaEnderecoInventario sinaliza necessidade de lógica específica.
12.1.32 ou superiores
{include/i-prgvrs.i BOSC118-UPC 2.00.00.001 } /*** 010001 ***/
{include/i-epc200.i bosc118} /** Defini»’o tt-EPC **/
DEFINE INPUT PARAM p-ind-event AS CHARACTER NO-UNDO.
DEFINE INPUT-OUTPUT PARAM TABLE FOR tt-epc.
DEFINE VARIABLE c-rowid-wm-inventario-endereco AS CHAR NO-UNDO.
IF p-ind-event = "BeforeValidaEnderecoInventario" THEN DO:
FOR FIRST tt-epc
WHERE tt-epc.cod-event = p-ind-event
AND tt-epc.cod-parameter = "rowid-wm-inventario-endereco":
ASSIGN c-rowid-wm-inventario-endereco = tt-epc.val-parameter.
END.
CREATE tt-epc.
ASSIGN tt-epc.cod-event = p-ind-event
tt-epc.cod-parameter = "retorno".
FOR EACH wm-inventario-endereco
WHERE ROWID(wm-inventario-endereco) = TO-ROWID(c-rowid-wm-inventario-endereco):
FIND FIRST wm-box OF wm-inventario-endereco NO-LOCK NO-ERROR.
IF AVAIL wm-box THEN DO:
//caso o endereço esteja bloqueado na tabela específica e com a flag de transferir saldo marcada -> desconsidera este endereço no inventário
FIND LAST wm-endereco-bloq-esp NO-LOCK
WHERE wm-endereco-bloq-esp.cod-estabel = wm-box.cod-estabel
AND wm-endereco-bloq-esp.cod-local = wm-box.cod-local
AND wm-endereco-bloq-esp.id-box = wm-box.id-box NO-ERROR.
IF AVAIL wm-endereco-bloq-esp THEN DO:
IF wm-endereco-bloq-esp.situacao = "1" THEN DO: //endereço bloqueado
IF CAN-FIND (FIRST wm-motivo-esp NO-LOCK
WHERE wm-motivo-esp.cod-motivo = wm-endereco-bloq-esp.cod-motivo
AND wm-motivo-esp.trans-saldo = YES) THEN DO:
ASSIGN tt-epc.val-parameter = "NOK". //ignora esse endereço para o inventário
END.
END.
END.
END.
END.
END. |