Árvore de páginas

Descrição

Este ponto epc Envia Código da Transação e Informações do Documento de Entrada criado pelo SIGAGFE.


Ponto de Entrada - afterEfetivaDoc

Descrição:

Envia Código da Transação e Informações do Documento de entrada.

Localização:

Depois da efetivação do documento de frete no recebimento Datasul.

Eventos:

afterEfetivaDoc

Programa Fonte:

cdp/cdf433.i22

Função:

CD0433 - Monitor de Integração SIGAGFE X Datasul

CD0433RP - Integração RPW SIGAGFE X Datasul

CDF433 - Integração batch SIGAGFE X Datasul

Parâmetro:
NomeTipoDescriçãoObrigatório
cTranActionCaractereDescritivo do Tipo de transaçãoSim
lcGetDataWSCaractereInformações do documentoSim
tt-docum-est.cod-estabelCaractereEstabelecimentoSim
tt-docum-est.nat-operacaoCaractereNatureza de OperaçãoSim

Retorno:

Não se aplica.

 Exemplo:

{include/i-epc200.i}

DEFINE INPUT PARAMETER p-ind-event AS CHARACTER NO-UNDO.
DEFINE INPUT-OUTPUT PARAMETER TABLE FOR tt-epc.

DEFINE VARIABLE cChave AS CHARACTER NO-UNDO.
DEFINE VARIABLE cTranAction AS CHARACTER NO-UNDO.
DEFINE VARIABLE iPosition AS INTEGER NO-UNDO.
DEFINE VARIABLE c-nat-operacao AS CHARACTER NO-UNDO.

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

FIND FIRST tt-epc NO-LOCK
WHERE tt-epc.cod-event = "afterEfetivaDoc":U
AND tt-epc.cod-parameter = "afterEfetivaDoc":U NO-ERROR.
IF NOT AVAIL tt-epc THEN
RETURN "NOK":U.

ASSIGN cChave = ENTRY(2,tt-epc.val-parameter,";")
cTranAction = ENTRY(1,tt-epc.val-parameter,";")
c-nat-operacao = ENTRY(3,tt-epc.val-parameter,";").

IF cTranAction <> "DEL" THEN DO:

DO iPosition = 2 TO NUM-ENTRIES(cChave,"#"):

/***** Documentos de Carga do Documento de Frete - GW4 *****/
IF STRING(ENTRY(1,ENTRY(iPosition,cChave,"#"),"|")) = "GW4":U THEN DO:

IF NOT CAN-FIND (FIRST esp-receb
WHERE esp-receb.cod-emitente = INT(TRIM(STRING(ENTRY(04,cChave,"|"))))
AND esp-receb.serie = TRIM(STRING(ENTRY(05,cChave,"|")))
AND esp-receb.nro-docto = TRIM(STRING(ENTRY(06,cChave,"|")))
AND esp-receb.serie-nf = TRIM(ENTRY(2,ENTRY(iPosition,cChave,"#"),"|"))
AND esp-receb.nr-nota-fis = TRIM(ENTRY(3,ENTRY(iPosition,cChave,"#"),"|"))
AND esp-receb.nat-operacao = c-nat-operacao) THEN DO:

CREATE esp-receb.
ASSIGN esp-receb.cod-estabel = TRIM(STRING(ENTRY(02,cChave,"|"))) /* GW3_FILIAL */
esp-receb.cod-emitente = INT(TRIM(STRING(ENTRY(04,cChave,"|")))) /* GW3_EMISDF */
esp-receb.serie = TRIM(STRING(ENTRY(05,cChave,"|"))) /* GW3_SERDF */
esp-receb.nro-docto = TRIM(STRING(ENTRY(06,cChave,"|"))) /* GW3_NRDF */
esp-receb.nr-nota-fis = TRIM(ENTRY(2,ENTRY(iPosition,cChave,"#"),"|")) /* GW4_NRDC */
esp-receb.serie-nf = TRIM(ENTRY(3,ENTRY(iPosition,cChave,"#"),"|")) /*GW4_SERDC*/
esp-receb.nat-operacao = c-nat-operacao
.
END.
END.
END.
END.
END.

RETURN "OK":U.