CE PLUS - Nota 001601

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Custo Efetivo

Data/Hora da Publicação: 16/06/2006 00:00:00

Data/Hora Última Alteração: 20/06/2011 12:42:11

Descrição da Nota: AO ENTRAR NO CUSTO E CONVERTER PARA MOEDA INTERNA SÓ MUDA A MOEDA

Sintoma

Ao entrar no custo efetivo e clicar para converter para moeda interna só muda a moeda e fica o mesmo

valor (valor em usd).

 

 

Solução

Ajuste na conversão da moeda com a OB08 e a taxa da ZYCIT174

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

PROBLEMA NO CUSTO EFETIVO DA JABIL POIS O VALOR DO SEGURO ESTA ERRADO

VALOR QUE FOI LEVADO PARA O ENCER. DE CUSTOS ESTA MAIOR DO QUE DEVERIA

Informações Complementares

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

Nota Número 01601 Data: 16/06/2006 Hora: 16:46:57

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

 

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

Nota Número              : 01601

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00023

Agrupamento              : 00117

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

Referência às notas relacionadas:

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

 

01175  - 00001 - 6.0    - 00023  - PROBLEMA NO CUSTO EFETIVO DA JABIL POIS O VALOR DO SEGURO ESTA ER

01422  - 00002 - 6.0    - 00023  - VALOR QUE FOI LEVADO PARA O ENCER. DE CUSTOS ESTA MAIOR DO QUE DE

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

AO ENTRAR NO CUSTO E CONVERTER PARA MOEDA INTERNA SÓ MUDA A MOEDA

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

Palavras Chave:

CUSTO EFETIVO, MUDANÇA DE MOEDA

 

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

Objetos da nota:

REPS /PWS/MZYCI010F01

REPS /PWS/MZYCI010F03

REPS /PWS/MZYCI010O02

REPS /PWS/MZYCI010TOP

REPS /PWS/MZYCI010X01

 

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

Modificações efetuadas em REPS /PWS/MZYCI010F01

 

...

  SELECT * FROM /pws/zycit100 INTO TABLE itab_zycit100

    WHERE nrseqdi = v_nrseq.

  SELECT SINGLE * FROM /pws/zycit085

    WHERE nrseqdi = v_nrseq.

  IF /pws/zycit085 IS INITIAL.

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

    SELECT SINGLE nrseq FROM /pws/zycit003 INTO v_nrseq

* << Fim da exclusão

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

    SELECT SINGLE nrseqda FROM /pws/zycit003 INTO v_nrseqda

* << Fim da inclusão

      WHERE nrseq = itab_zycit036-nrseq.

    IF sy-subrc EQ 0.

      SELECT SINGLE * FROM /pws/zycit442

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

       WHERE nrseqda EQ /pws/zycit003-nrseqda.

* << Fim da exclusão

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

     WHERE nrseqda EQ v_nrseqda.

* << Fim da inclusão

      IF sy-subrc EQ 0.

        MOVE /pws/zycit442 TO /pws/zycit085.

      ENDIF.

    ENDIF.

  ENDIF.

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

  Select * from /pws/zycit006

    into table itab_zycit006

    for all entries in itab_zycit036

    where nrseq eq itab_zycit036-nrseqori.

 IF NOT itab_zycit006[] IS INITIAL.

    SELECT * FROM bkpf

      INTO TABLE it_bkpf_aux

      FOR ALL ENTRIES IN itab_zycit006

      WHERE bukrs EQ itab_zycit006-bukrs

        AND belnr EQ itab_zycit006-belnr_p

        AND gjahr EQ itab_zycit006-dt_belnrp(04).

  ENDIF.

* << Fim da inclusão

  PERFORM altera_moeda.

ENDFORM.

FORM carrega_itab_waers.

  CLEAR itab_waers_aux. FREE itab_waers_aux.

  itab_waers_aux-opcao = '1' .

...

 

...

                  CHANGING v_vlreal.

          ELSEIF itab_zycit036_aux2-origem EQ 'PC'.

            READ TABLE it_pc WITH KEY

                                   nrseq  = itab_zycit036_aux2-nrseq

                                   nrpres = itab_zycit036_aux2-nrseqori.

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

             PERFORM trata_decimais USING /pws/zycie001-waers

                                 CHANGING itab_zycit036_aux2-vlreal.

* << Fim da inclusão

            IF it_pc-dtaprov LT /pws/zycit085-dtuserc.

              PERFORM converter_moeda

                    USING itab_zycit036_aux2-vlreal

                          itab_zycit036_aux2-waers_real

                          /pws/zycbt007-waersb

...

 

...

          ELSEIF itab_zycit036_aux2-origem EQ 'DC'.

            READ TABLE it_dc WITH KEY

                                      nrseq  = itab_zycit036_aux2-nrseq

                                   nradto = itab_zycit036_aux2-nrseqori.

            IF it_pc-dtaprov LT /pws/zycit085-dtuserc.

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

             PERFORM trata_decimais USING /pws/zycie001-waers

                                 CHANGING itab_zycit036_aux2-vlreal.

* << Fim da inclusão

              PERFORM converter_moeda

                    USING itab_zycit036_aux2-vlreal

                          itab_zycit036_aux2-waers_real

                          /pws/zycbt007-waersb

                    CHANGING v_vlreal.

...

 

...

                                                       CHANGING  v_taxa.

                ENDIF.

                itab_zycit036_aux2-vlreal =

                        itab_zycit036_aux2-vlreal * v_taxa.

              ENDIF.

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

             PERFORM trata_decimais USING /pws/zycie001-waers

                                 CHANGING itab_zycit036_aux2-vlreal.

* << Fim da inclusão

              IF NOT /pws/zycit085-dttax IS INITIAL.

                PERFORM taxa_converte USING  /pws/zycie001-waers

                                             /pws/zycit085-dttax

                                   CHANGING  v_taxa.

              ELSEIF /pws/zycit085-dttax IS INITIAL.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI010F03

 

...

          NOT itab_zycit036_conve-waers_real IS INITIAL.

          READ TABLE itab_zycit036 WITH KEY

                            nrseq  = itab_zycit036_conve-nrseq

                            codigo = itab_zycit036_conve-codigo.

          

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

          IF itab_zycit036_aux2-origem NE 'NF' OR

* << Fim da exclusão

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

          IF itab_zycit036_aux2-origem NE 'NF' and

* << Fim da inclusão

             itab_zycit036_aux2-origem NE 'NFC'.

          PERFORM read_docts USING itab_zycit036-origem

                                   itab_zycit036-nrseqori

                          CHANGING v_dtreal.

          IF v_dtreal LT /pws/zycit085-dtuserc.

            v_vlreal_aux = itab_zycit036_conve-vlreal.

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

            PERFORM conversao_vlreal

                        USING

                              v_vlreal_aux

* << Fim da exclusão

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

            PERFORM conv_vlreal USING v_vlreal_aux

* << Fim da inclusão

                              itab_zycit036_conve-waers_real

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

                                      v_medestino_a

* << Fim da inclusão

                     CHANGING itab_zycit036_conve-vlreal.

...

 

...

      CLEAR:  v_vlbrl_a, s_msg1, v_vlbrl.

      IF itab_zycit036_conve-waers_mov NE v_medestino_a

       AND v_erro_conv NE 'S'

       AND itab_zycit036_conve-vlmov GT 0        AND

       NOT itab_zycit036_conve-waers_mov IS INITIAL.

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

        CLEAR itab_zycit036.

        READ TABLE itab_zycit036 WITH KEY

                          nrseq  = itab_zycit036_conve-nrseq

                          codigo = itab_zycit036_conve-codigo.

        IF itab_zycit036-origem eq 'FAT'.

          READ TABLE itab_zycit006 WITH KEY

                            nrseq  = itab_zycit036-nrseqori.

          READ TABLE it_bkpf_aux WITH KEY

               bukrs = itab_zycit006-bukrs

               belnr = itab_zycit006-belnr_p

               gjahr = itab_zycit006-dt_belnrp(04).

          itab_zycit036a-vlmov =

                    itab_zycit036a-vlmov / it_bkpf_aux-kursf.

        ELSE.

* << Fim da inclusão

        SELECT SINGLE * FROM tcurx INTO wa_tcurx WHERE

        currkey = itab_zycit036_conve-waers_mov.

        IF sy-subrc EQ 0.

          PERFORM retorna_decimais USING itab_zycit036_conve-waers_mov

                                    CHANGING itab_zycit036_conve-vlmov

...

 

...

        ELSE.

          PERFORM trata_decimais USING itab_zycit036_conve-waers_mov

                                  CHANGING itab_zycit036_conve-vlmov.

        ENDIF.

        IF NOT /pws/zycit085-dttax IS INITIAL.

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

          IF /pws/zycit000-flag_desp IS INITIAL.

            PERFORM converter_moeda USING

                           itab_zycit036_conve-vlmov

                            itab_zycit036_conve-waers_mov

                                   /pws/zycbt007-waersb

                                 CHANGING v_vlbrl_a.

            PERFORM converter_moeda USING v_vlbrl_a

                                        /pws/zycbt007-waersb

                                     v_medestino_a

                                  CHANGING itab_zycit036a-vlmov.

          ELSE.

* << Fim da exclusão

            IF itab_zycit036_conve-waers_mov NE /pws/zycbt007-waersb.

             PERFORM taxa_converte USING  itab_zycit036_conve-waers_mov

                                                    /pws/zycit085-dttax

                                                       CHANGING  v_taxa

      .

...

 

...

              v_taxa = 1.

            ENDIF.

            IF NOT v_taxa IS INITIAL.

              itab_zycit036a-vlmov = v_vlbrl_a  / v_taxa.

            ENDIF.

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

          ENDIF.

        ELSEIF NOT /pws/zycit085-dttax IS INITIAL AND

* << Fim da exclusão

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

          ELSEIF /pws/zycit085-dttax IS INITIAL AND

* << Fim da inclusão

               s_msg1 = 'X'.

          PERFORM converter_moeda USING

                            itab_zycit036_conve-vlmov

                           itab_zycit036_conve-waers_mov

                                   /pws/zycbt007-waersb

...

 

...

          PERFORM converter_moeda USING v_vlbrl_a

                                        /pws/zycbt007-waersb

                                     v_medestino_a

                                CHANGING itab_zycit036a-vlmov.

        ENDIF.

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

        ENDIF.

* << Fim da inclusão

        SELECT SINGLE * FROM tcurx INTO wa_tcurx WHERE

        currkey = v_medestino_a.

        itab_zycit036a-waers_mov = v_medestino_a.

      ELSE.

        MOVE: itab_zycit036_conve-vlmov TO itab_zycit036a-vlmov,

...

 

...

  ENDIF.

  SELECT SINGLE * FROM tcurx INTO wa_tcurx WHERE

  currkey = v_medestino_a.

  itab_zycit036a-waers_real = v_medestino_a.

ENDFORM.

* >> Início da inclusão:

form conv_vlreal USING v_real

                       v_waers

                       v_waers_aux

              CHANGING v_vlreal.

  PERFORM converter_moeda

             USING v_real

                   v_waers

                   /pws/zycbt007-waersb

             CHANGING v_real.

  PERFORM converter_moeda

             USING v_real

                   /pws/zycbt007-waersb

                   v_waers_aux

              CHANGING v_vlreal.

endform.

* << Fim da inclusão

 

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

Modificações efetuadas em REPS /PWS/MZYCI010O02

 

...

    IF v_resp EQ '1'.

      /pws/zycie001-waers_mov = /pws/zycbt007-waersb.

    ENDIF.

    IF itab_zycit036a-waers_mov NE /pws/zycie001-waers_mov

      AND NOT itab_zycit036a-vlmov IS INITIAL.

* >> Início da inclusão: MODULE CARREGA_TOTAIS

      IF itab_zycit036a-codigo = 'FOB' OR itab_zycit036a-codigo =

 'SEGURO' OR itab_zycit036a-codigo = 'FRETEI'.

        CLEAR itab_zycit140.

       READ TABLE itab_zycit140 WITH KEY codigo = itab_zycit036a-codigo

                                           custo  = 'X'.

        IF sy-subrc = 0.

          IF itab_zycit140-origem = 'NF'.

            READ TABLE itab_zycit085 INDEX 1.

            PERFORM taxa_converte USING  itab_zycit036a-waers_mov

                                         itab_zycit085-dttax

                           CHANGING  v_taxa.

            IF NOT v_taxa IS INITIAL.

              v_treal_aux = itab_zycit036a-vlreal * v_taxa.

              IF itab_zycit085-ukursfob > 0.

                v_tmov_aux = v_tmov_aux / itab_zycit085-ukursfob.

                v_tmov_conv  =  v_tmov_aux.

              ENDIF.

            ENDIF.

            PERFORM trata_decimais USING itab_zycit036a-waers_real

                                CHANGING v_treal_conv.

          ELSE.

* << Fim da inclusão

      PERFORM converter_moeda USING

* >> Início da exclusão: MODULE CARREGA_TOTAIS

                              itab_zycit036a-vlreal

* << Fim da exclusão

* >> Início da inclusão: MODULE CARREGA_TOTAIS

                            itab_zycit036a-vlmov

* << Fim da inclusão

                              itab_zycit036a-waers_mov

                              /pws/zycie001-waers_mov

                CHANGING v_tmov_aux.

* >> Início da exclusão: MODULE CARREGA_TOTAIS

      v_tmov_conv = v_tmov_aux.

* << Fim da exclusão

* >> Início da inclusão: MODULE CARREGA_TOTAIS

            v_tmov_conv  =   v_tmov_aux.

          ENDIF.

        ENDIF.

      ELSE.

        IF itab_zycit036a-codigo = 'C&F'.

       READ TABLE itab_zycit140 WITH KEY codigo = itab_zycit036a-codigo

                                            custo  = 'X'.

          IF itab_zycit140-origem EQ 'FAT'.

            READ TABLE itab_zycit036 WITH KEY

                            nrseq  = itab_zycit036_conve-nrseq

                            codigo = itab_zycit036_conve-codigo.

            READ TABLE itab_zycit006 WITH KEY

                              nrseq  = itab_zycit036-nrseqori.

            READ TABLE it_bkpf_aux WITH KEY

                 bukrs = itab_zycit006-bukrs

                 belnr = itab_zycit006-belnr_p

                 gjahr = itab_zycit006-dt_belnrp(04).

            v_tmov_aux = itab_zycit036a-vlmov * it_bkpf_aux-kursf.

            v_tmov_conv  =   v_tmov_aux.

            PERFORM trata_decimais USING itab_zycit036a-waers_real

                                CHANGING v_treal_conv.

          ELSE.

            READ TABLE itab_zycit085 INDEX 1.

            IF itab_zycit036a-waers_mov NE itab_zycit085-waersseg.

              IF itab_zycit085-ukursseg > 0.

             v_tmov_aux = itab_zycit036a-vlmov / itab_zycit085-ukursseg.

              ENDIF.

              v_tmov_conv  =   v_tmov_aux.

              PERFORM trata_decimais USING itab_zycit036a-waers_real

                                  CHANGING v_treal_conv.

            ENDIF.

          ENDIF.

        ELSE.

          READ TABLE itab_zycit085 INDEX 1.

          IF itab_zycit036a-waers_mov NE itab_zycit085-waersseg.

            IF itab_zycit085-ukursseg > 0.

             v_tmov_aux = itab_zycit036a-vlmov / itab_zycit085-ukursseg.

            ENDIF.

            v_tmov_conv  =   v_tmov_aux.

            PERFORM trata_decimais USING itab_zycit036a-waers_real

                                CHANGING v_treal_conv.

          ENDIF.

        ENDIF.

      ENDIF.

* << Fim da inclusão

      PERFORM trata_decimais USING /pws/zycie001-waers_mov

                           CHANGING v_tmov_conv.

      v_tmov =  v_tmov  + v_tmov_conv.

    ELSE.

      v_tmov =  v_tmov + itab_zycit036a-vlmov.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI010TOP

 

...

data: end of itab_zyglt100.

data: begin of itab_cta occurs 0.

        include structure /pws/zygle316.

data: end of itab_cta.

data: it_bkpf          like bkpf          occurs 0 with header line,

* >> Início da exclusão:

      it_zycit006_aux2 like /pws/zycit006 occurs 0 with header line.

* << Fim da exclusão

* >> Início da inclusão:

      it_zycit006_aux2 like /pws/zycit006 occurs 0 with header line,

      it_bkpf_aux      like bkpf          occurs 0 with header line.

* << Fim da inclusão

data: it_fat like /pws/zycit006 occurs 0 with header line,

      it_dc  like /pws/zycit008 occurs 0 with header line,

      it_pc  like /pws/zycit026 occurs 0 with header line,

      it_nf  like /pws/zycit042 occurs 0 with header line.

data:

...

 

...

  v_belnr     like    /pws/zycie001-belnr_f51_mt0      ,

  v_ano_bsis  like    bkpf-gjahr                  ,

  v_ano_bsis1  like    bkpf-gjahr                 ,

  v_ano_bsis2  like    bkpf-gjahr                 ,

  v_flag,

  v_index3 like sy-tabix,

  v_ebelp  like /pws/zycit036-ebelp,

  v_nrseq  like  /pws/zycit001-nrseq,

  v_index3  like sy-tabix,

  v_ebelp   like /pws/zycit036-ebelp,

  v_nrseq   like  /pws/zycit001-nrseq,

* >> Início da inclusão:

  v_nrseqda like  /pws/zycit003-nrseqda,

* << Fim da inclusão

  v_itemcongela,

  v_real_brl like /pws/zycit036-vlreal,

  v_taxa like /pws/zycie085-ukursfob,

  s_msg1,

  v_vlbrl      like /pws/zycit036-vlreal,

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI010X01

 

...

        include structure /pws/zycit003.

data: netprt type /pws/zycil816 .

data:  mark.

data: end of itab_zycit003.

data: itab_zycit263 like /pws/zycit263 occurs 0 with header line,

* >> Início da inclusão:

      itab_zycit006 like /pws/zycit006 occurs 0 with header line,

* << Fim da inclusão

      itab_zycit008 like /pws/zycit008 occurs 0 with header line,

      itab_zycit027 like /pws/zycit027 occurs 0 with header line,

      itab_zycit264 like /pws/zycit264 occurs 0 with header line,

      itab_zycit265 like /pws/zycit265 occurs 0 with header line.

data: begin of itab_anlz occurs 0        .

...