CE PLUS - Nota 003287

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Desconto de Recebíveis

Data/Hora da Publicação: 20/03/2007 00:00:00

Data/Hora Última Alteração: 10/03/2010 14:34:31

Descrição da Nota: DESCONTO DE RECEBÍVEIS - EXIT DES002

Sintoma

 

Cliente precisa de exit para fazer um batch input especifico.

 

Solução

 

O ponto de exit foi incluido no programa de desconto de recebiveis.

Versões Tratadas

6.0

Informações Complementares

 

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

Nota Número 03287 Data: 20/03/2007 Hora: 17:29:41

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

 

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

Nota Número              : 03287

Categoria                : Melhoria

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00026

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

Texto Rápido:

DESCONTO DE RECEBÍVEIS - EXIT DES002

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

Palavras Chave:

DESCONTO DE RECEBÍVEIS - EXIT DES002

 

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

Objetos da nota:

REPS /PWS/MZYCB033F01

REPS /PWS/MZYCB033TOP

REPS /PWS/MZYCB033X01

 

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

Modificações efetuadas em REPS /PWS/MZYCB033F01

 

...

    ENDIF.

  ENDLOOP.

ENDFORM.

FORM proc_inclusao.

  DATA: v_cpochv   LIKE /pws/zycbe033-cpochv,

        v_kurrf_bl LIKE /pws/zycet001-kurrf_bl,

        v_dtemb    LIKE /pws/zycet001-dtemb,

        v_desm     LIKE /pws/zycbt089-tx_desm_cli,

        v_desmemb  TYPE c,

        v_gjahr    LIKE bkpf-gjahr,

* >> Início da inclusão: FORM PROC_INCLUSAO

        e_subrc    LIKE sy-subrc,

* << Fim da inclusão

        v_erro     TYPE c.

  DATA: BEGIN OF itab_contas OCCURS 0.

          INCLUDE STRUCTURE /pws/zyglt316.

  DATA: END OF itab_contas.

  PERFORM verifica_data USING itab_zycbt219-dtcredext

                              itab_zycbt219-bukrs

                              itab_zycbt219-nrinvoic

                              'X'.

  IF sy-subrc NE 0.

    EXIT.

...

 

...

    CALL FUNCTION 'MESSAGE_STORE'

         EXPORTING

              arbgb = '/PWS/ZYCBM'

              msgty = 'I'

              msgv1 = itab_zycbt034-descricao

              txtnr = '061'

              zeile = v_zeile.

    v_zeile = v_zeile + 1.

  ENDLOOP.

  IF itab_zycbt034 IS INITIAL.

* >> Início da inclusão: FORM PROC_INCLUSAO

    CLEAR:   itab_zyglt100.

    REFRESH: itab_zyglt100.

    IF itab_zyglt100[] IS INITIAL.

      v_syrepid = sy-repid.

      CALL FUNCTION '/PWS/ZYGL_BUSCA_EXIT_CLIENTE'

           EXPORTING

                i_codmod                = 'E'

                i_func                  = v_syrepid

           TABLES

                itab_zyglt100           = itab_zyglt100

           EXCEPTIONS

                i_codmod_nao_encontrado = 1

                i_func_nao_encontrado   = 2

                i_zexit_nao_encontrado  = 3

                OTHERS                  = 4.

    ENDIF.

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

    IF sy-subrc EQ 0.

      IF NOT itab_zyglt100-zexit_ativa IS INITIAL.

        PERFORM (itab_zyglt100-formulario)

                IN PROGRAM (itab_zyglt100-programa)

                USING      ok_code

                CHANGING   e_subrc.

        IF e_subrc NE 0.

          EXIT.

        ENDIF.

      ENDIF.

    ELSE.

* << Fim da inclusão

    CALL FUNCTION '/PWS/ZYCB_TRANSACAO_F_02H'

         EXPORTING

              v_modo          = v_modo_bi

         TABLES

              t_dados         = itab_zycbe033

              t_campo         = itab_zycbt034

              t_zycbt032      = itab_zycbt032

              t_zycbt036      = itab_zycbt036

         EXCEPTIONS

              campo_em_branco = 1

              periodo_fechado = 2

              OTHERS          = 3.

* >> Início da inclusão: FORM PROC_INCLUSAO

    ENDIF.

* << Fim da inclusão

    IF sy-subrc = 0.

      READ TABLE itab_zycbt032 WITH KEY tcode  = 'F-02'

                                        tabela = '/PWS/ZYCBT219'

                                        cpochv = itab_zycbe033-cpochv

                                        tpmsg  = 'S'.

      IF sy-subrc EQ 0.

        itab_zycbt219-belnr = itab_zycbt032-belnr.

        LOOP AT itab_zycbt030

                        WHERE nrinvoic = itab_zycbt219-nrinvoic AND

                              gsberf   = itab_zycbt219-gsberf   AND

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB033TOP

 

...

      werks      LIKE /pws/zycbt017-werks,

      v_belnr    LIKE /pws/zycbt030-belnr,

      s_kwert    LIKE /pws/zycbt030-kwert,

      v_kwert    LIKE /pws/zycbt030-kwert,

      v_kwert2   LIKE /pws/zycbt030-kwert,

      belnr7     LIKE /pws/zycbt030-belnr,

      flag(1)    TYPE c,

      belnr_d    LIKE /pws/zycbt030-belnr,

      status_d(1).

DATA: END OF itab_zycbt030.

* >> Início da inclusão:

DATA:  itab_zycbt013  LIKE /pws/zycbt013 OCCURS 10 WITH HEADER LINE.

* << Fim da inclusão

* >> Início da exclusão:

DATA: itab_zycbt032  LIKE /pws/zycbt032 OCCURS 10 WITH HEADER LINE,

      itab_zycbe033  LIKE /pws/zycbe033 OCCURS 10 WITH HEADER LINE,

      itab_zycbt034  LIKE /pws/zycbt034 OCCURS 10 WITH HEADER LINE,

      itab_zycbt036  LIKE /pws/zycbt036 OCCURS 10 WITH HEADER LINE,

      itab_zycbt013  LIKE /pws/zycbt013 OCCURS 10 WITH HEADER LINE.

* << Fim da exclusão

DATA: BEGIN OF itab_modo OCCURS 0.

        INCLUDE STRUCTURE spopli.

DATA: END OF itab_modo.

DATA: BEGIN OF itab_zyglt321 OCCURS 0.

        INCLUDE STRUCTURE /pws/zyglt321.

DATA: END OF itab_zyglt321.

DATA: itab_zyglt368 LIKE /pws/zyglt368 OCCURS 0 WITH HEADER LINE.

CONSTANTS: c_transacao_c(14) VALUE '/PWS/ZYCB033_C',

           c_transacao_a(14) VALUE '/PWS/ZYCB033_A',

           c_transacao_e(14) VALUE '/PWS/ZYCB033_E'.

CONSTANTS: c_no_modify(1) VALUE 'X'.

CONTROLS: tc_desrec   TYPE TABLEVIEW USING SCREEN '0100'.

DATA:

      v_oper       LIKE icons-text,

      v_status(1)  TYPE c VALUE '1',

      v_vlsltrans  LIKE /pws/zycbt030-vlsltrans,

      v_line_ini   TYPE i VALUE 1,

* >> Início da exclusão:

      v_modo_bi(1) TYPE c,

* << Fim da exclusão

      v_databl     LIKE sy-datum,

      v_zeile(5)   TYPE n,

      v_name1      LIKE kna1-name1,

      v_vlavinc    LIKE /pws/zycbt017-vlavinc,

      v_syrepid    LIKE sy-repid.

SELECTION-SCREEN BEGIN OF SCREEN 0001.

SELECT-OPTIONS: s_nrinv FOR /pws/zycbt219-nrinvoic,

                s_bukrs FOR /pws/zycbt219-bukrs,

                s_gsber FOR /pws/zycbt219-gsberf,

                s_werks FOR /pws/zycbt219-werks,

                s_nparc FOR /pws/zycbt219-nrparcf,

                s_kunnr FOR /pws/zycbt219-kunnr,

                s_dtinc FOR /pws/zycbt219-dtincl.

SELECTION-SCREEN END OF SCREEN 0001.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB033X01

 

...

DATA: BEGIN OF COMMON PART c.

DATA: ok_code LIKE sy-ucomm.

DATA: BEGIN OF itab_zycbt219 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycbt219.

DATA: vlsltrans LIKE /pws/zycbt030-vlsltrans,

      oper(1) TYPE c,

      mark(1) TYPE c,

      v_name1 TYPE kna1-name1,

      vlavinc TYPE /pws/zycbt017-vlavinc.

DATA: END OF itab_zycbt219.

* >> Início da inclusão:

DATA: v_modo_bi(1) TYPE c.

DATA: itab_zycbt032  LIKE /pws/zycbt032 OCCURS 10 WITH HEADER LINE,

      itab_zycbe033  LIKE /pws/zycbe033 OCCURS 10 WITH HEADER LINE,

      itab_zycbt034  LIKE /pws/zycbt034 OCCURS 10 WITH HEADER LINE,

      itab_zycbt036  LIKE /pws/zycbt036 OCCURS 10 WITH HEADER LINE.

* << Fim da inclusão

DATA: END OF COMMON PART.