CE PLUS - Nota 002654

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Custo Efetivo

Data/Hora da Publicação: 08/12/2006 00:00:00

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

Descrição da Nota: ERRO AO ALTERARMOEDA DE EXIBIÇÃO NO CUSTO EFETIVO.

Sintoma

Atualizado valores do custo efetivo e valores ao clicar o ícone moeda de exibição e modificar a

moeda.

 

 

Solução

- atualizado o programa para arredondar a despesa AFRMM

- atualizado o programa para limpar o campo Moeda para valores em branco

- atualizado o programa para converter valores corretamente

 

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

VALOR DO SEGURO INCORRETO DEPOIS DO RECEBIMENTO

CUSTO EFETIVO COM VALOR ERRADO E DIFERENÇA NO FRETE NACIONAL

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

Informações Complementares

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

Nota Número 02654 Data: 08/12/2006 Hora: 14:05:59

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

 

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

Nota Número              : 02654

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 6.0

Pacote                   : 00025

Agrupamento              : 00142

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

Referência às notas relacionadas:

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

 

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

02113  - 00002 - 6.0    - 00024  - CUSTO EFETIVO COM VALOR ERRADO E DIFERENÇA NO FRETE NACIONAL

02173  - 00003 - 6.0    - 00025  - VALOR DO SEGURO INCORRETO DEPOIS DO RECEBIMENTO

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

ERRO AO ALTERARMOEDA DE EXIBIÇÃO NO CUSTO EFETIVO.

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

Palavras Chave:

VALORES; MOEDA; COLUNA DIFERENÇA; COLUNA MOVIMENTADO

 

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

Objetos da nota:

REPS /PWS/MZYCI010F01

REPS /PWS/MZYCI010F03

REPS /PWS/MZYCI010I01

REPS /PWS/ZYCIR006

 

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

Modificações efetuadas em REPS /PWS/MZYCI010F01

 

...

       EXCEPTIONS

            not_enough_answers = 1

            too_much_answers   = 2

            too_much_marks     = 3

            OTHERS             = 4.

  IF v_resposta NE 'A'.

    v_resp = v_resposta.

    READ TABLE itab_waers_aux INDEX v_resposta.

    v_medestino   = itab_waers_aux-moeda.

    v_medestino_a = itab_waers_aux-moeda.

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

  ELSE.

    EXIT.

* << Fim da inclusão

  ENDIF.

  READ TABLE itab_zycit036 INDEX 1.

  v_nrseq = itab_zycit036-nrseq.

  SELECT SINGLE nrseqdi FROM /pws/zycit100 INTO v_nrseq

    WHERE nrseq = itab_zycit036-nrseq.

  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.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI010F03

 

...

         v_vlreal_aux LIKE itab_zycit036_conve-vlreal.

  SELECT SINGLE * FROM t001 WHERE bukrs = /pws/zycit085-bukrs.

  SELECT SINGLE * FROM /pws/zycit000 WHERE land1 EQ t001-land1.

  SELECT SINGLE * FROM /pws/zycbt007

         WHERE bukrs EQ /pws/zycit085-bukrs.

  IF sy-subrc NE 0.

    MESSAGE e120.

  ENDIF.

  IF v_resp = '1'.

    MOVE itab_zycit036_conve[] TO itab_zycit036a[].

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

    EXIT.

* << Fim da inclusão

  ELSE.

    CHECK v_erro_conv NE 'S'.

    LOOP AT itab_zycit036a.

      READ TABLE itab_zycit036_conve WITH KEY

                                    codigo = itab_zycit036a-codigo.

      IF NOT v_medestino_a IS INITIAL AND v_resp NE '1'.

        CLEAR:  v_vlbrl_a, s_msg1, v_vlbrl.

        IF itab_zycit036_conve-waers NE v_medestino_a

          AND v_erro_conv NE 'S'

          AND itab_zycit036_conve-netpr GT 0        AND

...

 

...

            ENDIF.

            IF NOT v_taxa IS INITIAL.

              itab_zycit036a-vlreal = v_vlbrl_a  / v_taxa.

            ENDIF.

            v_trea = v_trea + itab_zycit036a-vlreal.

            ENDIF.

          ENDIF.

        ENDIF.

      ENDIF.

    ENDIF.

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

    IF NOT itab_zycit036a-vlreal IS INITIAL.

* << Fim da inclusão

    itab_zycit036a-waers_real = v_medestino_a.

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

    ENDIF.

* << Fim da inclusão

    IF itab_zycit036a-vlmov  IS INITIAL.

      CLEAR itab_zycit036a-waers_mov.

    ELSE.

      v_tmov = v_tmov + itab_zycit036a-vlmov.

    ENDIF.

    IF itab_zycit036a-vldif  IS INITIAL.

...

 

...

                               tpgto = 'D'.

      MOVE itab_zycit008-dtaprov TO p_data.

    WHEN 'PC'.

      READ TABLE itab_zycit026 WITH KEY

                              nrseq  = itab_zycit036-nrseq

                              nrpres = itab_zycit036-nrseqori.

      MOVE itab_zycit026-dtaprov TO p_data.

  ENDCASE.

ENDFORM.

FORM altera_moeda_aux.

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

  SELECT SINGLE * FROM tcurx INTO wa_tcurx WHERE

  currkey = itab_zycit036_conve-waers_real.

  IF sy-subrc EQ 0.

    PERFORM retorna_decimais USING itab_zycit036_conve-waers_real

                              CHANGING itab_zycit036_conve-vlreal.

  ELSE.

    PERFORM trata_decimais USING itab_zycit036_conve-waers_real

                           CHANGING itab_zycit036a-vlreal.

  ENDIF.

* << Fim da exclusão

  IF NOT /pws/zycit085-dttax IS INITIAL.

    IF /pws/zycit000-flag_desp IS INITIAL.

      PERFORM converter_moeda USING

                       itab_zycit036_conve-vlreal

                      itab_zycit036_conve-waers_real

                             /pws/zycbt007-waersb

                          CHANGING v_vlbrl_a.

      PERFORM converter_moeda USING v_vlbrl_a

                         /pws/zycbt007-waersb

                         v_medestino_a

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI010I01

 

...

   ENDIF.

  ENDIF.

ENDMODULE.

MODULE verifica_total INPUT.

  CLEAR v_vlreal_emb.

  LOOP AT itab_zycit036.

    v_vlreal_emb = itab_zycit036-vlreal +  v_vlreal_emb.

  ENDLOOP.

  IF /pws/zycie036a-vlreal_emb NE v_vlreal_emb.

    IF v_status_s EQ 1.

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

      MESSAGE w015 WITH text-017 text-018.

* << Fim da exclusão

    ENDIF.

  ENDIF.

ENDMODULE.

MODULE user_command_0005 INPUT.

  CASE okcode.

    WHEN 'ENTE'.

      SELECT SINGLE * FROM /pws/zycit001

        INTO /pws/zycie001

        WHERE nrseq = /pws/zycie001-nrseq.

      SELECT SINGLE * FROM /pws/zycbt007

...

 

 

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

Modificações efetuadas em REPS /PWS/ZYCIR006

 

...

          IF sy-subrc = 0.

            SELECT SINGLE kursf FROM bkpf INTO v_kursf

                       WHERE bukrs  = /pws/zycit001-bukrs

                       AND   belnr  = v_belnr_p

                       AND   gjahr  = v_dtincl+0(4).

          ENDIF.

        ENDIF.

        IF itab_zycit036-vlreal GT 0         AND

          NOT itab_zycit036-waers_real IS INITIAL.

          v_valor = itab_zycit036-vlreal.

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

          IF t001-land1 EQ 'CL'.

            PERFORM trata_decimais USING    itab_zycit036-waers_real

* << Fim da exclusão

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

          SELECT SINGLE * FROM tcurx WHERE

          currkey = itab_zycit036-waers_real.

          IF sy-subrc EQ 0.

            PERFORM retorna_decimais USING itab_zycit036-waers_real

* << Fim da inclusão

                                     CHANGING v_valor.

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

          ENDIF.

* << Fim da exclusão

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

          ELSE.

            PERFORM trata_decimais USING itab_zycit036-waers_real

* << Fim da inclusão

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

          IF t001-land1 EQ 'BR'.

            PERFORM retorna_decimais USING itab_zycit036-waers_real

* << Fim da exclusão

                                    CHANGING v_valor.

          ENDIF.

          IF v_itemcongela NE 'X'.

            itab_zycit036-waers_mov = /pws/zycbt007-waersb.

            IF NOT /pws/zycit085-ukursfob IS INITIAL.

              IF itab_zycit036-origem NE 'FAT'.

                itab_zycit036-vlmov = v_valor *

                                      /pws/zycit085-ukursfob.

              ELSE.

                itab_zycit036-vlmov = v_valor * v_kursf.

...

 

...

                  READ TABLE itab_zycit006 WITH KEY

                                   nrseq = itab_zycit036-nrseqori.

                  IF sy-subrc EQ 0.

                    READ TABLE itab_bkpf WITH KEY

                                  belnr = itab_zycit006-belnr_p.

                    IF sy-subrc EQ 0.

                      v_valor = v_valor * itab_bkpf-kursf.

                    ENDIF.

                  ENDIF.

                ELSEIF itab_zycit036-origem EQ 'NF'.

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

                  v_valor = v_valor * /pws/zycit085-ukursseg.

* << Fim da exclusão

                ENDIF.

                PERFORM trata_decimais USING    itab_zycit036-waers_mov

                                                       CHANGING v_valor.

              ENDIF.

              IF NOT /pws/zycit085-ukursseg IS INITIAL AND

                 ( itab_zycit036-origem EQ 'NF'

                 OR itab_zycit036-origem EQ 'FAT' ).

                itab_zycit036-vldif = v_valor

                                 - itab_zycit036-vlmov.

                itab_zycit036-waers_dif = /pws/zycbt007-waersb.

...