CE PLUS - Nota 009467

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DI

Data/Hora da Publicação: 27/11/2009 00:00:00

Data/Hora Última Alteração: 22/02/2011 14:13:08

Descrição da Nota: PROBLEMA NA VARIAÇÃO CAMBIAL NO F6D AO PREENCHER OS DADOS DA ANA

Sintoma

embarque ARM0010I09 problema na variação cambial no f6d ao preencher os dados da ANA e salvar dá

erro

 

 

Solução

Corrigir conversão da moeda.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

VÁRIOS AJUSTES DE TRATAMENTO E VARIAÇÃO DA ANA - DI ARGENTINA

Informações Complementares

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

Nota Número 09467 Data: 27/11/2009 Hora: 09:45:37

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

 

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

Nota Número              : 09467

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 8.0

Pacote                   : 00001

Agrupamento              : 00001

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

Referência às notas relacionadas:

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

 

09072  - 00001 - 8.0    - 00001  - VÁRIOS AJUSTES DE TRATAMENTO E VARIAÇÃO DA ANA - DI ARGENTINA

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

PROBLEMA NA VARIAÇÃO CAMBIAL NO F6D AO PREENCHER OS DADOS DA ANA

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

Palavras Chave:

VARIAÇÃO CAMBIAL - IA - ANA

 

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

Objetos da nota:

FUNC /PWS/ZYCI_RECLASSIFICACAO_IA

REPS /PWS/MZYCI059F01

REPS /PWS/MZYCI059F03

 

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

Modificações efetuadas em FUNC /PWS/ZYCI_RECLASSIFICACAO_IA

 

...

          FROM bsis

          INTO TABLE itab_bsis_aux1

          WHERE bukrs   EQ /pws/zycie085-bukrs

            AND hkont   EQ itab_matuse_aux3-hkont

            AND gjahr   EQ v_gjahr

            AND belnr   EQ itab_zycit006-belnr_p.

        LOOP AT itab_bsis_aux1.

          MOVE: itab_bsis_aux1-hkont TO itab_bsis-hkont,

                itab_bsis_aux1-buzei TO itab_bsis-buzei,

                itab_bsis_aux1-belnr TO itab_bsis-belnr.

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

          IF ( sy-tcode EQ '/PWS/ZYCI059_A' OR

               sy-tcode EQ '/PWS/ZYCI059_C' ) .

            IF /pws/zycbt007-waersa EQ itab_bsis_aux1-waers.

              itab_bsis-dmbtr = itab_bsis-dmbtr + itab_bsis_aux1-wrbtr.

            ELSE.

              itab_bsis-dmbtr = itab_bsis-dmbtr + itab_bsis_aux1-dmbtr.

            ENDIF.

          ELSE.

* << Fim da exclusão

            itab_bsis-dmbtr = itab_bsis-dmbtr + itab_bsis_aux1-dmbtr.

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

          ENDIF.

* << Fim da exclusão

          itab_bsis-wrbtr = itab_bsis-wrbtr + itab_bsis_aux1-wrbtr.

        ENDLOOP.

        IF sy-subrc = 0.

          MOVE itab_zycit006-tpfatura TO itab_bsis-tpfatura.

          APPEND itab_bsis.

          CLEAR itab_bsis.

...

 

...

    ENDIF.

    MOVE: itab_matuse_aux-hkont TO itab_di-hkont,

          t_zycit100-vlseg   TO itab_di-vlseg,

          t_zycit100-vlfre   TO itab_di-vlfre.

    IF ( sy-tcode EQ '/PWS/ZYCI059_A' OR

         sy-tcode EQ '/PWS/ZYCI059_C' ) .

      PERFORM taxa_converte(/pws/sapmzyci059)

             USING /pws/zycbt007-waersa

                   /pws/zycie085-dttax

             CHANGING v_taxa.

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

      itab_di-vlfob = ( t_zycit100-vlfob * v_taxa )

      / t_zycit100-dttaxbem.

* << Fim da exclusão

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

      DATA: v_moeda TYPE tcurc-/pws/codmo.

      SELECT SINGLE /pws/codmo FROM tcurc INTO v_moeda WHERE

             waers = /pws/zycbt007-waersa.

      IF sy-subrc EQ 0.

        SELECT SINGLE txconver FROM /pws/zycit174

             INTO v_taxa

            WHERE

               codconver = v_moeda AND

               vigen_inicio <= /pws/zycie085-dttax AND

               vigen_fim    >= /pws/zycie085-dttax AND

               land1       = t001-land1.

      ENDIF.

      itab_di-vlfob = t_zycit100-vlfob * v_taxa.

      MULTIPLY itab_di-vlseg BY v_taxa.

      MULTIPLY itab_di-vlfre BY v_taxa.

* << Fim da inclusão

    ELSE.

      itab_di-vlfob = t_zycit100-dttaxbem * t_zycit100-vlfob.

    ENDIF.

    IF NOT /pws/zycit093-ternacion IS INITIAL.

      READ TABLE t_zycit003 WITH KEY

               nrseq = t_zycit100-nrseq

               ebeln = t_zycit100-ebeln

               ebelp = t_zycit100-ebelp .

      IF NOT v_tntgew IS INITIAL.

        itab_di-vlfren =  ( ( t_zycit003-ntgew / v_tntgew ) *

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI059F01

 

...

 

FORM taxa_converte USING    p_waers

                            p_data

                   CHANGING p_taxa.

  DATA:  v_moeda LIKE tcurc-/pws/codmo,

         v_msgd(10),

         v_linhas TYPE i.

  IF v_mudou EQ 'X'.

    CLEAR: p_taxa, v_msgfre.

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

    IF p_waers EQ /pws/zycbt007-waersb.

      p_taxa = 1.

      EXIT.

    ENDIF.

* << Fim da inclusão

    SELECT SINGLE /pws/codmo FROM tcurc INTO v_moeda WHERE

           waers = p_waers.

    IF sy-subrc EQ 0.

      REFRESH itab_zycit174.

      SELECT * FROM /pws/zycit174 INTO TABLE itab_zycit174 WHERE

             codconver = v_moeda    AND

             vigen_inicio <= p_data AND

             vigen_fim    >= p_data AND

             land1       = t001-land1.

      DESCRIBE TABLE itab_zycit174 LINES v_linhas.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI059F03

 

...

                               /pws/zycie085-dttax

                         CHANGING /pws/zycie085-ukursfob,

                              load_fbvl.

  IF v_altera EQ 'X'.

    CLEAR: v_mudou, v_altera.

  ENDIF.

  PERFORM: taxa_converte USING /pws/zycbt007-waersa

                               /pws/zycie085-dttax

                         CHANGING v_usd,

                          load_fbvl2.

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

  LOOP AT itab_it WHERE NOT waersbem IS initial AND

                            waersbem NE /pws/zycbt007-waersb.

* << Fim da exclusão

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

  LOOP AT itab_it WHERE NOT waersbem IS initial.

* << Fim da inclusão

    v_idx = sy-tabix.

    PERFORM: taxa_converte USING itab_it-waersbem

                                 /pws/zycie085-dttax

                           CHANGING itab_it-dttaxbem.

    MODIFY itab_it INDEX v_idx TRANSPORTING dttaxbem.

  ENDLOOP.

  IF NOT /pws/zycie093-waersfre IS INITIAL.

    IF /pws/zycie085-ukursfre IS INITIAL AND

       v_mudou IS INITIAL.

      v_mudou = v_altera = 'X'.

...