CE PLUS - Nota 000454

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Vinculação

Data/Hora da Publicação: 15/12/2005 00:00:00

Data/Hora Última Alteração: 18/02/2011 14:48:49

Descrição da Nota: TRATAMENTO DE SBU PELA EXIT VNC011

Sintoma

Criar uma chamada de EXIT para a vinculação de Câmbio Exportação, somente quando o programa efetuar

a gravação do registro na tabela /pws/zycbt005. Esta necessidade ocorreu para controlar os registros

de SBU, que estão sem consistência entre as tabelas /pws/zycbt514 (tabela especifica)  e

/pws/zycbt005 (produto).

 

 

Solução

Inserido o ponto de exit (VNC011) para executar o programa específico quando for inserido ou

eliminado registros da tabela /PWS/ZYCBT005.

 

Versões Tratadas

6.0

Informações Complementares

----------------------------------------------------------------------------------------------------

Nota Número 00454 Data: 15/12/2005 Hora: 09:02:49

----------------------------------------------------------------------------------------------------

 

----------------------------------------------------------------------------------------------------

Nota Número              : 00454

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00022

Agrupamento              : 00093

----------------------------------------------------------------------------------------------------

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

----------------------------------------------------------------------------------------------------

TRATAMENTO DE SBU PELA EXIT VNC011

----------------------------------------------------------------------------------------------------

Palavras Chave:

EXIT SBU VNC011

 

----------------------------------------------------------------------------------------------------

Objetos da nota:

REPS /PWS/MZYCB009F03

 

----------------------------------------------------------------------------------------------------

Modificações efetuadas em REPS /PWS/MZYCB009F03

 

Contexto: FORM grava_tabelas.

 

  DATA: v_nrparc(3) TYPE n.

  DATA: BEGIN OF itab_zycbt005_salva OCCURS 0.

          INCLUDE STRUCTURE /pws/zycbt005.

  DATA: END OF itab_zycbt005_salva.

  DATA: BEGIN OF itab_zycbt017_salva OCCURS 0.

          INCLUDE STRUCTURE /pws/zycbt017.

  DATA: END OF itab_zycbt017_salva.

 

  CLEAR v_excep.        "Chamado 193223 - AnaB - 19/10/2004

  CLEAR v_erro_estorno. "212219 - Luciana - 09/02/2005

 

...

 

 

  CLEAR v_ind_mudanca.

  CLEAR v_ind_delecao. "Restaura indicador de deleção - 246898-22/07/05

 

* >> Início da Inclusão

* Ch. 276505 - 14.12.2005 - Início

  PERFORM verifica_gravacao.

* Ch. 276505 - 14.12.2005 - Fim

* << Fim da Inclusão

 

  PERFORM carrega_itab_zycbt005.

  PERFORM carrega_itab_zycbt017.

 

* Atualiza tabelas internas auxiliares

  CLEAR:

    itab_zycbt005_aux, itab_zycbt005_ant, itab_zycbt005_excluidas.

  REFRESH:

    itab_zycbt005_aux, itab_zycbt005_ant, itab_zycbt005_excluidas.

 

  MOVE itab_zycbt005[] TO itab_zycbt005_aux[].

  MOVE itab_zycbt005[] TO itab_zycbt005_ant[].

 

  CLEAR ok_code.

 

* Se a tabela itab_transport não estiver vazia, significa que a

* vinculação foi chamada através da reserva de cambiais, então

* retorna diretamente à reserva não permitindo que a vinculação

* gere uma nova tela para uma nova vinculação (como no default).

  IF NOT itab_transport[] IS INITIAL.

    LEAVE PROGRAM.

  ENDIF.

 

  CLEAR v_erro_estorno. "212219 - Luciana - 09/02/2005

 

ENDFORM.                               " GRAVA_TABELAS

 

*------------------------------------------------------------------------

 

* >> Início da Inclusão

*&---------------------------------------------------------------------*

*&      Form  verifica_gravacao

*&---------------------------------------------------------------------*

*       Verifica gravação dos registros nas tabelas transparentes

*----------------------------------------------------------------------*

FORM verifica_gravacao.

 

* Verifica se o registro foi incluído na /PWS/ZYCBT005

  SELECT *

         FROM /pws/zycbt005

         UP TO 1 ROWS

         WHERE nrseqc   EQ itab_zycbt005-nrseqc AND

               dtvincul EQ /pws/zycbe005-dtvincul.

  ENDSELECT.

 

  IF   sy-subrc        EQ 0 OR                    "Inclusão / Alteração

     ( itab_zycbt005[] NE itab_zycbt005_ant[] AND "Exclusão

       NOT itab_zycbt005_ant[] IS INITIAL ).

    READ TABLE itab_zyglt100 WITH KEY zexit = 'VNC011' BINARY SEARCH.

    IF sy-subrc EQ 0 AND NOT itab_zyglt100-zexit_ativa IS INITIAL.

*   Verifica se a Exit está ativa.

      PERFORM (itab_zyglt100-formulario)

              IN PROGRAM (itab_zyglt100-programa).

    ENDIF.

  ENDIF.

 

ENDFORM.                    " verifica_gravacao

* << Fim da Inclusão

* << Fim da Inclusão