CE PLUS - Nota 003526

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Custo Efetivo

Data/Hora da Publicação: 24/04/2007 00:00:00

Data/Hora Última Alteração: 09/03/2010 09:35:13

Descrição da Nota: DIFERENÇA DE UM CENTAVO NO CUSTO CAUSADO PELA CONVERSÃO DE MOEDA

Sintoma

 

No custo está apresentando uma diferença de dois centavos mas não deveria haver diferença.

 

Solução

 

Atualização do programa de custo efetivo para desconsiderar a diferença quando esta for igual a um

centavo para o item. Ajustada a função de rateio para lançar o valor de frete corretamente na nota

fiscal.

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 03526 Data: 24/04/2007 Hora: 08:10:43

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

 

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

Nota Número              : 03526

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00027

Agrupamento              : 00163

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

DIFERENÇA DE UM CENTAVO NO CUSTO CAUSADO PELA CONVERSÃO DE MOEDA

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

Palavras Chave:

DIFERENÇA - CENTAVO - CUSTO - EFETIVO

/PWS/SAPMZYCI010

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

Objetos da nota:

REPS /PWS/MZYCI010F03

 

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

Modificações efetuadas em REPS /PWS/MZYCI010F03

 

...

            ELSE.

              READ TABLE it_bkpf WITH KEY

                   bukrs = it_zycit006_aux2-bukrs

                   belnr = it_zycit006_aux2-belnr_p

                   gjahr = it_zycit006_aux2-dt_belnrp(04).

              v_vlreal = v_vlreal * it_bkpf-kursf.

            ENDIF.

          WHEN 'PC'.

        ENDCASE.

        itab_zycit036_aux2-vldif = v_vlreal - itab_zycit036_aux2-vlmov.

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

        v_vlreal = abs( itab_zycit036_aux2-vldif ).

        IF v_vlreal EQ '0.01'.

          CLEAR itab_zycit036_aux2-vldif.

        ENDIF.

* << Fim da inclusão

        itab_zycit036_aux2-waers_dif = wa_zycbt007-waersb.

        MODIFY itab_zycit036_aux2.

      ENDIF.

    ENDIF.

  ENDIF.

ENDFORM.

FORM trata_origem

  TABLES

   itab_zycit036_aux3 STRUCTURE /pws/zycit036

         itab_zycit036_plan STRUCTURE /pws/zycit036

...

 

 

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

Modificações efetuadas em FUNC /PWS/ZYCI_RATEIO_CUSTO

 

...

        v_vlfrete     LIKE /pws/zycit100-vlfre,

        v_seg         LIKE /pws/zycie006-vlseg,

        v_tot_desp    LIKE /pws/zycit036-vlreal,

        v_plan        LIKE /pws/zycit001-netpr,

        v_tot         LIKE /pws/zycit003-netpr,

        v_tot_vlreal  LIKE /pws/zycit003-vlreal,

        v_linha       TYPE sy-tabix,

        v_index       LIKE sy-tabix,

        v_line_rateio TYPE i,

        v_line_ac     TYPE i,

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

        v_ac_fre      LIKE /pws/zycit100-vlfre,

* << Fim da exclusão

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

        v_ac_fre      LIKE /pws/zycit036-vlreal,

        v_fre_tp      LIKE /pws/zycit036-vlreal,

* << Fim da inclusão

        v_ac_seg      LIKE /pws/zycit100-vlseg,

        vl_ii         LIKE itab_zycit100-vlii,

        vl_ipi        LIKE itab_zycit100-vlipi,

        vl_icms       LIKE itab_zycit100-vlicms,

        vltot_ii      LIKE /pws/zycit036-vlreal,

        vltot_ipi     LIKE /pws/zycit036-vlreal,

        vltot_icms    LIKE /pws/zycit036-vlreal,

        vl_imp        LIKE /pws/zycit036-vlreal,

        v_ori         LIKE /pws/zycit140-origem,

        v_taxa        LIKE /pws/zycie085-ukursfob,

...

 

...

            IF sy-subrc <> 0.

              tcurx-currdec = 2.

            ENDIF.

        it_desp-vlseg = it_desp-vlseg * ( 10 ** ( tcurx-currdec - 2 ) ).

            v_ac_seg = v_ac_seg + it_desp-vlseg.

          ENDIF.

          IF NOT /pws/zycit085-ukursfre IS INITIAL AND

             NOT itab_zycit100a-vlfre IS INITIAL.

            SELECT SINGLE * FROM /pws/zycit093

                   WHERE nrseqce = /pws/zycit085-nrbl.

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

            it_desp-vlfre = itab_zycit100a-vlfre * v_taxa_usd

* << Fim da exclusão

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

            v_fre_tp = itab_zycit100a-vlfre.

            v_fre_tp = v_fre_tp * v_taxa_usd

* << Fim da inclusão

               / /pws/zycit085-ukursfre.

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

            it_desp-vlfre = v_fre_tp.

* << Fim da inclusão

            SELECT SINGLE * FROM tcurx

                   WHERE currkey = /pws/zycit093-waersfre.

            IF sy-subrc <> 0.

              tcurx-currdec = 2.

            ENDIF.

        it_desp-vlfre = it_desp-vlfre * ( 10 ** ( tcurx-currdec - 2 ) ).

...

 

...

            IF sy-subrc <> 0.

              tcurx-currdec = 2.

            ENDIF.

        it_desp-vlseg = it_desp-vlseg * ( 10 ** ( tcurx-currdec - 2 ) ).

            v_ac_seg = v_ac_seg + it_desp-vlseg.

          ENDIF.

          IF NOT /pws/zycit085-ukursfre IS INITIAL AND

             NOT itab_zycit100a-vlfre IS INITIAL.

            SELECT SINGLE * FROM /pws/zycit093

                   WHERE nrseqce = /pws/zycit085-nrbl.

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

          it_desp-vlfre = itab_zycit100a-vlfre / /pws/zycit085-ukursfre

.

* << Fim da exclusão

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

            v_fre_tp = itab_zycit100a-vlfre.

            v_fre_tp  = v_fre_tp / /pws/zycit085-ukursfre.

            it_desp-vlfre = v_fre_tp.

* << Fim da inclusão

            SELECT SINGLE * FROM tcurx

                   WHERE currkey = /pws/zycit093-waersfre.

            IF sy-subrc <> 0.

              tcurx-currdec = 2.

            ENDIF.

        it_desp-vlfre = it_desp-vlfre * ( 10 ** ( tcurx-currdec - 2 ) ).

            v_ac_fre = v_ac_fre + it_desp-vlfre.

          ENDIF.

          vl_imp = itab_zycit100a-vlii.

          vltot_ii = vltot_ii + vl_imp.

...