CE PLUS - Nota 007919

Módulo: CÂMBIO EXPORTAÇÃO

Funcionalidade: Vinculação

Data/Hora da Publicação: 16/01/2009 00:00:00

Data/Hora Última Alteração: 18/02/2011 17:58:14

Descrição da Nota: VINCULAÇÃO - CHAVE DE REFERENCIA INCORRETA - DATA DO DOCUMENTO INCORRETA

Sintoma

Ao efetuar uma vinculação em um ano diferente da captação e da fatura, aparece a mensagem de que o

documento esta compensado(e não esta) e lança chave de referência incorreta no desmembramento do

Acc.

 

 

Solução

Aplicar notas precedentes para atualizar o campo /PWS/ZYCBT001-DTVINCUL.

Aplicar código desta nota que confere se o campo /PWS/ZYCBT074-DTCONT é o último, ou seja, do último

documento gerado, assim busca a chave de referência corretamente.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

VINCULAÇÃO LIQUIDAÇÃO - ESTORNO EM PERÍODO FECHADO

VINCULAÇÃO - GRAVAR DATA VINCULAÇÃO NA TABELA /PWS/ZYCBT001 - DTVINCUL

VINCULAÇÃO DATA DO DOCUMENTO CONTÁBIL

VINCULAÇÃO CONTRATO DE PRÉ-PAGAMENTO - DATA LANÇAMENTO DIFERENTE

Informações Complementares

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

Nota Número 07919 Data: 16/01/2009 Hora: 13:36:23

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

 

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

Nota Número              : 07919

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00008

Agrupamento              : 00081

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

Referência às notas relacionadas:

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

 

01690  - 00002 - 6.0    - 00024  - VINCULAÇÃO CONTRATO DE PRÉ-PAGAMENTO - DATA LANÇAMENTO DIFERENTE

01730  - 00001 - 6.0    - 00024  - VINCULAÇÃO DATA DO DOCUMENTO CONTÁBIL

05930  - 00003 - 7.0    - 00004  - VINCULAÇÃO LIQUIDAÇÃO - ESTORNO EM PERÍODO FECHADO

06166  - 00004 - 7.0    - 00004  - VINCULAÇÃO - GRAVAR DATA VINCULAÇÃO NA TABELA /PWS/ZYCBT001 - DTV

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

VINCULAÇÃO - CHAVE DE REFERENCIA INCORRETA - DATA DO DOCUMENTO INCORRETA

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

Palavras Chave:

VINCULAÇÃO CHAVE DE REFERENCIA INCORRETA DATA DO DOCUMENTO INCORRETA

/PWS/ZYCBT074-DTCONT /PWS/ZYCBT001-DTVINCUL

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

Objetos da nota:

REPS /PWS/MZYCB009F07

REPS /PWS/MZYCB009F08

 

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

Modificações efetuadas em REPS /PWS/MZYCB009F07

 

...

          v_data = /pws/zycbe001-dtdesem.

        WHEN OTHERS.

          v_data = /pws/zycbe001-dtcred.

      ENDCASE.

      itab_zycbe033-belnr   = /pws/zycbe001-belnr.

      itab_zycbe033-dtdocto = v_data.

    ELSE.

      itab_zycbe033-belnr   = /pws/zycbe001-belnr2.

      SELECT SINGLE * FROM /pws/zycbt074

        WHERE nrseqc = /pws/zycbe001-nrseqc.

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

      IF NOT /pws/zycbt074-dtcont IS INITIAL.

* << Fim da exclusão

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

      IF NOT /pws/zycbt074-dtcont IS INITIAL

        and /pws/zycbt074-dtcont > itab_zycbt005-dtvincul.

* << Fim da inclusão

        itab_zycbe033-dtdocto = /pws/zycbt074-dtcont.

      ELSE.

        itab_zycbe033-dtdocto = itab_zycbt005-dtvincul.

      ENDIF.

    ENDIF.

  ELSE.

    itab_zycbe033-belnr   = itab_zycbt005-belnr.

    itab_zycbe033-dtdocto = itab_zycbt005-dtbelnr.

  ENDIF.

  itab_zycbt036-tcode   = 'F-30'.

...

 

...

          WHEN 'O'.

            v_data = /pws/zycbe001-dtcontr.

          WHEN 'D'.

            v_data = /pws/zycbe001-dtdesem.

          WHEN OTHERS.

            v_data = /pws/zycbe001-dtcred.

        ENDCASE.

        v_belnr_cap   = /pws/zycbe001-belnr.

      ELSE.

        v_belnr_cap   = /pws/zycbe001-belnr2.

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

        IF NOT /pws/zycbt074-dtcont IS INITIAL.

* << Fim da exclusão

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

        IF NOT /pws/zycbt074-dtcont IS INITIAL

        and /pws/zycbt074-dtcont > itab_zycbe033-dtdocto.

* << Fim da inclusão

          itab_zycbe033-dtdocto = /pws/zycbt074-dtcont.

        ENDIF.

      ENDIF.

    ELSE.

      v_belnr_cap   = wa_zycbt005-belnr.

    ENDIF.

  ENDIF.

  LOOP AT itab_zycbt030 WHERE nrinvoic = wa_zycbt005-nrinvoic AND

                              gsberf   = wa_zycbt005-gsberf   AND

                              nrparcf  = wa_zycbt005-nrparcf.

...

 

...

    READ TABLE itab_zycbt017

      WITH KEY nrinvoic = wa_zycbt005-nrinvoic

               gsberf   = wa_zycbt005-gsberf

               nrparcf  = wa_zycbt005-nrparcf.

    itab_partidas-agkon   = itab_zycbt017-kunag.

    itab_partidas-agkoa   = 'D'.

    itab_partidas-agums   = space.

    itab_partidas-bukrs   = wa_zycbt005-bukrs.

    itab_partidas-shkzg   = 'H'.

    itab_partidas-v_sinal = '+'.

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

    IF NOT /pws/zycbt074-dtcont IS INITIAL.

* << Fim da exclusão

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

    IF NOT /pws/zycbt074-dtcont IS INITIAL

       and /pws/zycbt074-dtcont > /pws/zycbe006-dtpagto.

* << Fim da inclusão

      itab_partidas-dtdocto = /pws/zycbt074-dtcont.

    ELSE.

      itab_partidas-dtdocto = /pws/zycbe006-dtpagto.

    ENDIF.

    CONCATENATE 'Des.'

                wa_zycbt005-nrinvoic

                wa_zycbt005-nrparcf

                INTO itab_partidas-d_zuonr

                SEPARATED BY space.

    itab_partidas-v_sinal = '-'.

...

 

...

        CLEAR itab_contabil-vbeln.

        itab_contabil-gsberf   = wa_zycbt005-gsberf.

        itab_contabil-docto    = itab_zycbt032-belnr.

        itab_contabil-msg      = text-295.

        CLEAR /pws/zycbt084.

        /pws/zycbt084-dtpagext  = /pws/zycbe006-dtpagext.

        PERFORM grava_t084 USING itab_zycbt032-belnr.

        READ TABLE itab_zycbt074 WITH KEY nrseqc = wa_zycbt005-nrseqc.

        IF sy-subrc EQ 0.

          IF itab_zycbt074-dtcont IS INITIAL OR

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

             itab_zycbt074-dtcont EQ '00000000'.

* << Fim da exclusão

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

             itab_zycbt074-dtcont EQ '00000000'

             or /pws/zycbt074-dtcont < /pws/zycbe006-dtpagto.

* << Fim da inclusão

            itab_contabil-dtdocto  = /pws/zycbe006-dtpagto.

          ELSE.

            itab_contabil-dtdocto  = itab_zycbt074-dtcont.

          ENDIF.

        ENDIF.

        itab_contabil-bukrs    = wa_zycbt005-bukrs.

        APPEND itab_contabil.

        v_subrc = 0.

      ELSE.

        LOOP AT itab_zycbt032 WHERE tcode  = 'F-30'

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCB009F08

 

...

  DATA: v_soma LIKE /pws/zycbt005-vlvinc,

        v_soma2  LIKE /pws/zycbt005-vlvinc.

  DATA: v_cpochv LIKE /pws/zycbe033-cpochv,

        v_kursf  LIKE /pws/zycbe033-kursf ,

        v_vinc_total,

        v_linha.

  CLEAR v_dtdocto.

  CLEAR v_f30_vinc.

  PERFORM get_parameters_001.

  PERFORM clear_date_batch.

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

  IF /pws/zycbe074-dtcont IS INITIAL.

* << Fim da exclusão

    IF /pws/zycbe001-dtvincul IS INITIAL.

      CASE /pws/zycbe001-fdtlanc.

        WHEN 'D'.

          v_dtdocto = /pws/zycbe001-dtdesem.

        WHEN 'O'.

          v_dtdocto = /pws/zycbe001-dtcontr.

        WHEN OTHERS.

          v_dtdocto = /pws/zycbe001-dtcred.

      ENDCASE.

    ELSE.

      v_dtdocto = /pws/zycbe001-dtvincul.

    ENDIF.

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

  ELSE.

    v_dtdocto = /pws/zycbe074-dtcont.

* << Fim da exclusão

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

  IF NOT /pws/zycbe074-dtcont IS INITIAL AND

     /pws/zycbt074-dtcont > v_dtdocto.

    v_dtdocto = /pws/zycbt074-dtcont.

* << Fim da inclusão

  ENDIF.

  v_prazo = /pws/zycbe001-przcontr.

  CONCATENATE /pws/zycbe001-tpcontr v_prazo

              INTO v_codaux1 SEPARATED BY space.

  IF /pws/zycbe001-tpcontr(1) NE 'D'.

    CALL FUNCTION '/PWS/ZYGL_READ_ACCOUNT_NUMBER'

         EXPORTING

              bukrs           = /pws/zycbe001-bukrs

              ktosl           = 'CPT'

              codaux1         = v_codaux1

...

 

...

  IF itab_zycbt002p-belnr2 IS INITIAL.

    itab_zycbe033-belnr  = itab_zycbt002p-belnr.

    CASE /pws/zycbe001-fdtlanc.

      WHEN 'D'.

        v_dtdocto = /pws/zycbe001-dtdesem.

      WHEN 'O'.

        v_dtdocto = /pws/zycbe001-dtcontr.

      WHEN OTHERS.

        v_dtdocto = /pws/zycbe001-dtcred.

    ENDCASE.

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

    IF NOT /pws/zycbe074-dtcont IS INITIAL.

* << Fim da exclusão

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

    IF NOT /pws/zycbe074-dtcont IS INITIAL

       and /pws/zycbe074-dtcont > v_dtdocto.

* << Fim da inclusão

      itab_zycbe033-dtdocto = /pws/zycbe074-dtcont.

    ELSE.

      itab_zycbe033-dtdocto = v_dtdocto.

    ENDIF.

  ELSE.

    itab_zycbe033-belnr  = itab_zycbt002p-belnr2.

    v_dtdocto = itab_zycbt002p-dtvincul.

  ENDIF.

  REFRESH itab_zyglt321.

  SELECT * FROM /pws/zyglt321

...