CE PLUS - Nota 004364

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Rotina de Pagamento

Data/Hora da Publicação: 07/08/2007 00:00:00

Data/Hora Última Alteração: 18/02/2011 13:56:30

Descrição da Nota: SAÍDA DE PAGAMENTO - ORDEM DE PAGAMENTO - DATA EFETIVA

Sintoma

Ao efetuar a saída de pagamento com ordem de pagamento, na F-30 não esta mapeando o campo VALUT após

o duplo clique e o mesmo é obrigatório, parando a contabilização.

 

 

Solução

Verificar corretamente se o lançamento é total da ordem ou parcial e mapear o campo valut com o

valor válido quando for por ordem.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

MAPEAMENTO DO CAMPO BSEG-VALUT NO BATCH INPUT DA DEVOLUÇÃO

VINCULAÇÃO COM LIQ. AUTOMÁTICA - ESTORNO DP - ZFBDT

Informações Complementares

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

Nota Número 04364 Data: 07/08/2007 Hora: 17:02:21

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

 

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

Nota Número              : 04364

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00002

Agrupamento              : 00007

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

Referência às notas relacionadas:

Número - Ordem - Versão - Pacote - Descrição Breve

 

01959  - 00001 - 6.0    - 00024  - MAPEAMENTO DO CAMPO BSEG-VALUT NO BATCH INPUT DA DEVOLUÇÃO

02237  - 00002 - 6.0    - 00025  - VINCULAÇÃO COM LIQ. AUTOMÁTICA - ESTORNO DP - ZFBDT

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

SAÍDA DE PAGAMENTO - ORDEM DE PAGAMENTO - DATA EFETIVA

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

Palavras Chave:

SAÍDA DE PAGAMENTO ORDEM DE PAGAMENTO DATA EFETIVA

VALUT DESMEMBRAMENTO CONTA CORRENTE ME F-30

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

Objetos da nota:

FUNC /PWS/ZYCB_TRANSACAO_F_30_P

REPS /PWS/MZYCB115F02

 

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

Modificações efetuadas em FUNC /PWS/ZYCB_TRANSACAO_F_30_P

 

...

    WRITE: t_dados-bukrs   TO v_bukrs,

           t_dados-bldat   TO v_bldat,

           t_dados-budat   TO v_budat,

           t_dados-zfbdt   TO v_zfbdt,

           t_dados-kursf   TO v_kursf,

           t_dados-zfbdt   TO v_zfbdt2,

           t_dados-zbd1t   TO v_zbd1t.

    IF NOT t_dados-d_valut = '00000000' AND

       NOT t_dados-d_valut = '        '.

      WRITE: t_dados-d_valut TO v_valut.

* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P

    ELSEIF NOT t_dados-c_valut IS INITIAL AND

           NOT v_op            IS INITIAL.

      WRITE: t_dados-c_valut TO v_valut.

* << Fim da inclusão

    ENDIF.

    SELECT SINGLE periv FROM t001

                 INTO v_periv

                 WHERE bukrs EQ v_bukrs.

    CALL FUNCTION 'DETERMINE_PERIOD'

         EXPORTING

              date                = t_dados-budat

              version             = v_periv

         IMPORTING

              period              = v_monat

...

 

...

          IF NOT t_dados-brnch IS INITIAL.

            PERFORM bdc_field USING:

                    'BSEG-BUPLA' t_dados-brnch.

          ENDIF.

          IF NOT v_zuonr IS INITIAL.

            PERFORM bdc_field USING 'BSEG-ZUONR' v_zuonr.

          ENDIF.

          IF NOT t_dados-d_sgtxt IS INITIAL.

            PERFORM bdc_field USING 'BSEG-SGTXT' t_dados-d_sgtxt.

          ENDIF.

* >> Início da exclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P

          IF NOT t_dados-d_valut IS INITIAL.

* << Fim da exclusão

* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P

          IF NOT t_dados-d_valut IS INITIAL

             OR ( NOT t_dados-c_valut IS INITIAL AND

                  NOT v_op            IS INITIAL ).

* << Fim da inclusão

            READ TABLE itab_oculto WITH KEY campo = 'BSEG-VALUT'

                                            chave = v_lanc1.

            IF sy-subrc <> 0.

              PERFORM bdc_field USING 'BSEG-VALUT' v_valut.

            ENDIF.

          ENDIF.

          IF v_last EQ 'X'.

            PERFORM bdc_field USING: 'BDC_OKCODE'  '=PA'.

          ELSE.

            PERFORM bdc_field USING: 'RF05A-NEWBS' t_dados-newbs,

...

 

...

               INTO (c_sgtxt,

                     c_zuonr,

                     c_brnch,

                     c_gsber,

                     c_zfbdt,

                     c_zbd1t)

               WHERE bukrs = t_dados-bukrs      AND

                     lifnr = t_dados-d_newko    AND

                  gjahr = v_year             AND

                     belnr = t_dados-belnr.

* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P

      ENDIF.

* << Fim da inclusão

      ENDIF.

* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P

    IF v_op = 'X' AND v_vinc_tot IS INITIAL.

      v_lanc2 = 'D'.

* << Fim da inclusão

    ENDIF.

    IF wa_tbsl-koart EQ 'D'.

      IF NOT v_vinc_tot IS INITIAL.

        CLEAR:   itab_oculto, v_string_credito.

        REFRESH: itab_oculto.

...

 

...

               v_vinc_tot IS INITIAL AND

               v_desc_rec IS INITIAL.

          READ TABLE itab_oculto WITH KEY campo = 'BSEG-BUPLA'

                                                    chave = v_lanc2.

          IF sy-subrc <> 0.

            PERFORM bdc_field USING:

                    'BSEG-BUPLA' c_brnch.

          ENDIF.

        ENDIF.

      ENDIF.

* >> Início da exclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P

      IF NOT t_dados-d_valut IS INITIAL AND

* << Fim da exclusão

* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P

      IF ( NOT t_dados-d_valut IS INITIAL AND

* << Fim da inclusão

         NOT t_dados-d_valut EQ '00000000'

        AND v_vinc_tot IS INITIAL

        AND v_dev IS INITIAL

* >> Início da exclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P

        AND v_linhas LT '002'.

* << Fim da exclusão

* >> Início da inclusão: FUNCTION /PWS/ZYCB_TRANSACAO_F_30_P

           AND v_linhas LT '002' )

         or ( not v_op is initial and v_vinc_tot is initial ).

* << Fim da inclusão

        IF NOT c_valut IS INITIAL .

          READ TABLE itab_oculto WITH KEY campo = 'BSEG-VALUT'

                                          chave = v_lanc2.

          IF sy-subrc <> 0.

            PERFORM define_campo TABLES t_telas

                                 USING  v_programa

                                        v_tela

                                        'BSEG-VALUT'.

            IF v_invisible EQ 0.

              IF v_input EQ 1 OR v_required EQ 1

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB115F02

 

...

                                  itab_zycbe033-kursf.

  PERFORM verify_null_field USING itab_zycbe033-kursf

                                  'KURSF'

                                  text-075.

  IF p_estorno IS INITIAL.

    itab_zycbe033-wrbtr = itab_zycbt232_assoc-vlr_associado.

  ELSE.

    itab_zycbe033-wrbtr = itab_zycbt232_assoc-vlr_associado

                          + itab_zycbt232_assoc-sld_exterior.

  ENDIF.

* >> Início da exclusão: FORM DESMEMBRA_CONTA_CORRENTE_ME

  IF itab_zycbe033-wrbtr EQ itab_zycbt232_assoc-vl_pagto.

* << Fim da exclusão

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

  IF ( itab_zycbt232_assoc-sld_exterior IS INITIAL AND

       p_estorno IS INITIAL ) OR NOT p_estorno IS INITIAL.

* << Fim da inclusão

    v_assoc_tot = 'X'.

  ELSE.

    CLEAR v_assoc_tot.

  ENDIF.

  IF NOT itab_zycbt226-belnr_op2 IS INITIAL.

    itab_zycbe033-belnr    = itab_zycbt226-belnr_op2.

    itab_zycbe033-dtdocto  = itab_zycbt226-dtlancto2.

  ELSE.

    itab_zycbe033-belnr    = itab_zycbt226-belnr_op.

    itab_zycbe033-dtdocto  = itab_zycbt226-dtlancto.

...