CE PLUS - Nota 007821

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Liquidação de Fatura

Data/Hora da Publicação: 22/12/2008 00:00:00

Data/Hora Última Alteração: 22/02/2011 12:43:01

Descrição da Nota: LIQUIDAÇÃO - DESMEMBRAMENTO LIQUIDAÇÃO EM ANDAMENTO PARCIAL-ZFBDT/ZTERM

Sintoma

Ao liquidar uma fatura onde a mesma tem liquidação em andamento parcial, na partida residual não

esta atualizando os campos ZFBDT e ZTERM de acordo com o documento que esta sendo compensado.

 

 

Solução

Analisar se a liquidação em andamento é parcial para mapear os campos ZFBDT e ZTERM, de acordo com o

documento que esta sendo compensado.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

VINCULAÇÃO - FECHAR TODOS OS CAMPOS APÓS QUALQUER CONTABILIZAÇÃO.

VINCULAÇÃO COM LIQ. AUTOMÁTICA - DOWN PAYMENT - ZFBDT - F-30

DESENVOLVIMENTO ADICIONAL COMPLETO - ORDEM DE PAGAMENTO

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

Informações Complementares

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

Nota Número 07821 Data: 22/12/2008 Hora: 12:46:46

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

 

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

Nota Número              : 07821

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00008

Agrupamento              : 00078

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

Referência às notas relacionadas:

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

 

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

02259  - 00002 - 6.0    - 00025  - VINCULAÇÃO COM LIQ. AUTOMÁTICA - DOWN PAYMENT - ZFBDT - F-30

03270  - 00003 - 6.0    - 00026  - DESENVOLVIMENTO ADICIONAL COMPLETO - ORDEM DE PAGAMENTO

04118  - 00004 - 7.0    - 00002  - VINCULAÇÃO - FECHAR TODOS OS CAMPOS APÓS QUALQUER CONTABILIZAÇÃO.

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

LIQUIDAÇÃO - DESMEMBRAMENTO LIQUIDAÇÃO EM ANDAMENTO PARCIAL-ZFBDT/ZTERM

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

Palavras Chave:

LIQUIDAÇÃO DESMEMBRAMENTO LIQUIDAÇÃO EM ANDAMENTO PARCIAL ZFBDT ZTERM

PARTIDA RESIDUAL

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

Objetos da nota:

FUNC /PWS/ZYCB_TRANSACAO_F_30_P

REPS /PWS/MZYCB004F02

 

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

Modificações efetuadas em FUNC /PWS/ZYCB_TRANSACAO_F_30_P

 

...

              FROM t074u

              WHERE koart EQ 'D' AND

                    umskz EQ v_umskz.

            IF v_umsks NE 'A'.

              v_zfbdt_tela = 'X'.

            ENDIF.

          ELSE.

            v_zfbdt_tela = 'X'.

          ENDIF.

        ENDIF.

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

      ELSE.

        v_zfbdt_tela = 'X'.

* << Fim da inclusão

      ENDIF.

      READ TABLE itab_oculto

        WITH KEY campo = 'BSEG-ZFBDT' chave = v_lanc1

        TRANSPORTING NO FIELDS.

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

      IF ( ( sy-subrc <> 0

             and v_zfbdt_tela EQ 'X' )

           OR ( v_zfbdt_tela EQ 'X'

                AND NOT sy-subrc = 0 ) )

           AND v_linhas LT '002'.

* << Fim da exclusão

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

      IF v_zfbdt_tela EQ 'X' AND sy-subrc NE 0 AND

         ( v_linhas LT '002' OR

           ( v_linhas EQ '002' AND v_vinc_tot IS INITIAL ) ).

* << Fim da inclusão

        PERFORM define_campo TABLES t_telas

                             USING  v_programa

                                    v_tela2

                                    'BSEG-ZFBDT'.

        IF v_invisible EQ 0.

          IF v_input EQ 1 OR v_required EQ 1

             AND NOT v_zfbdt IS INITIAL

             AND NOT v_zfbdt = '00.00.0000'

             AND NOT v_zfbdt = '00/00/0000'.

            IF NOT t_dados-zfbdt IS INITIAL

               AND NOT t_dados-zfbdt = '00.00.0000'

               AND NOT t_dados-zfbdt = '00/00/0000'

               AND NOT t_dados-zfbdt = '00000000'.

              PERFORM bdc_field  USING: 'BSEG-ZFBDT' v_zfbdt.

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

              v_zfbdt2 = '00.00.0000'.

* << Fim da inclusão

            ENDIF.

          ENDIF.

        ENDIF.

      ENDIF.

      IF NOT v_tela2 = '0304'.

        IF v_vinc_tot IS INITIAL AND

           v_dp IS INITIAL.

          IF NOT v_zfbdt2 EQ '00.00.0000'.

            IF v_op IS INITIAL.

              PERFORM define_campo TABLES t_telas

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB004F02

 

...

  itab_zycbt036-tabela  = itab_zycbe033-tabela.

  itab_zycbt036-cpochv  = itab_zycbe033-cpochv.

  itab_zycbt036-residuo = itab_zycbe033-wrbtr.

  APPEND itab_zycbt036.

  itab_doctos-tcode   = itab_zycbe033-tcode.

  itab_doctos-tabela  = itab_zycbe033-tabela.

  itab_doctos-cpochv  = itab_zycbe033-cpochv.

  itab_doctos-belnr   = itab_zycbe033-belnr.

  itab_doctos-dtdocto = itab_zycbe033-dtdocto.

  APPEND itab_doctos.

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

  itab_zycbe033-belnr   = itab_zycbt209-belnr.

  itab_zycbe033-dtdocto = itab_zycbt209-dtcredext.

* << Fim da exclusão

  IF NOT /pws/zycbe005-j_1bbranch IS INITIAL.

    PERFORM verifica_pais_filial USING itab_zycbt006-bukrs

                                       /pws/zycbe005-j_1bbranch.

    itab_zycbe033-brnch = /pws/zycbe005-j_1bbranch.

  ELSE.

    PERFORM local_negocio.

    PERFORM verifica_pais_filial USING itab_zycbt006-bukrs

                                       wa_t001w-j_1bbranch.

    itab_zycbe033-brnch = wa_t001w-j_1bbranch.

  ENDIF.

  itab_zycbe033-werks = /pws/zycbe005-werks.

  PERFORM verifica_prorrogacao.

  PERFORM busca_exit.

  READ TABLE itab_zyglt100 WITH KEY zexit = 'LIQ015'.

  IF sy-subrc EQ 0

     AND NOT itab_zyglt100-zexit_ativa IS INITIAL.

    PERFORM (itab_zyglt100-formulario)

            IN PROGRAM (itab_zyglt100-programa).

  ENDIF.

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

  clear v_vinc_tot.

  IF itab_zycbe033-wrbtr = itab_zycbt209-saldo.

    v_vinc_tot = 'X'.

  ENDIF.

* << Fim da inclusão

  APPEND itab_zycbe033.

  LOOP AT itab_zycbt034.

    MESSAGE i016 WITH itab_zycbt034-descricao.

  ENDLOOP.

  IF itab_zycbt034 IS INITIAL.

    READ TABLE itab_zyglt100 WITH KEY zexit = 'LIQ027'.

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

      PERFORM (itab_zyglt100-formulario)

              IN PROGRAM (itab_zyglt100-programa).

    ELSE.

      CALL FUNCTION '/PWS/ZYCB_TRANSACAO_F_30_P'

           EXPORTING

                v_modo          = v_modo_bi

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

                v_vinc_tot      = 'X'

* << Fim da exclusão

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

                v_vinc_tot      = v_vinc_tot

* << Fim da inclusão

           TABLES

                t_dados         = itab_zycbe033

                t_campo         = itab_zycbt034

                t_zycbt032      = itab_zycbt032

                t_zycbt036      = itab_zycbt036

                t_doctos        = itab_doctos

           EXCEPTIONS

                campo_em_branco = 1

                periodo_fechado = 2

                OTHERS          = 3.

...