CE PLUS - Nota 001247

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: DI

Data/Hora da Publicação: 25/04/2006 00:00:00

Data/Hora Última Alteração: 20/06/2011 12:31:02

Descrição da Nota: VALOR INCORRETO DA BASE DE CÁLCULO ICMS

Sintoma

Valor errado base de cálculo ICMS processos CFR

 

 

 

Solução

Ajustado o Calculo do ICMS.

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

VISUALIZAÇÃO DO RATEIO DE DESPESAS DA DI ESTÁ INCORRETO

Informações Complementares

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

Nota Número 01247 Data: 25/04/2006 Hora: 16:06:13

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

 

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

Nota Número              : 01247

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00023

Agrupamento              : 00110

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

Referência às notas relacionadas:

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

 

01227  - 00001 - 6.0    - 00023  - VISUALIZAÇÃO DO RATEIO DE DESPESAS DA DI ESTÁ INCORRETO

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

VALOR INCORRETO DA BASE DE CÁLCULO ICMS

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

Palavras Chave:

BASE - CÁLCULO - ICMS - CFR

 

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

Objetos da nota:

FUNC /PWS/ZYCI_RATEIO_CUSTO

REPS /PWS/MZYCI023F03

 

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

Modificações efetuadas em FUNC /PWS/ZYCI_RATEIO_CUSTO

 

...

...

                 itab_despesa-netpr.

                itab_zycit036_aux-waers_real = itab_despesa-waers.

              ELSEIF itab_zycit039-vlreal EQ 'X'.

                IF /pws/zycit062-bs_rat_icms EQ 'CIF'.

                  DATA: v_vfre LIKE /pws/zycie085-vlfre,

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

                        v_tfre LIKE /pws/zycie085-vlfre,

* << Fim da inclusão

                        v_vseg LIKE /pws/zycie085-vlseg,

                        v_vfob LIKE /pws/zycie085-vlfob,

                        v_vtot LIKE /pws/zycie085-vlfob.

                  READ TABLE itab_zycit100a WITH KEY

                            ebeln = itab_zycit003-ebeln

                            ebelp = itab_zycit003-ebelp.

                  IF sy-subrc EQ 0.

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

                    PERFORM taxa_converte USING  /pws/zycie085-waersfob

                                      /pws/zycie085-dttax

                                      t001-land1

                               CHANGING  v_taxa.

                    if not v_taxa is initial.

                    v_vfre = itab_zycit100a-vlfre / v_taxa.

                    v_vseg = itab_zycit100a-vlseg / v_taxa.

                    endif.

                    v_vfob = itab_zycit100a-vlfob.

* << Fim da inclusão

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

                    IF NOT /pws/zycie085-ukursfre IS INITIAL.

                      v_vfre = itab_zycit100a-vlfre /

                               /pws/zycie085-ukursfre .

* << Fim da exclusão

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

                    v_tseg = /pws/zycie085-vlseg .

                    IF /pws/zycie085-ukursfre

                       NE /pws/zycie085-ukursfob.

                      PERFORM taxa_converte USING

                              /pws/zycie085-waersfre

                                    /pws/zycie085-dttax

                                    t001-land1

                             CHANGING  v_taxa.

                      v_tfre = /pws/zycie085-vlfre * v_taxa.

                      PERFORM taxa_converte USING

                              /pws/zycie085-waersfob

                                    /pws/zycie085-dttax

                                    t001-land1

                             CHANGING  v_taxa.

                      IF NOT v_taxa IS INITIAL.

                        v_tfre = v_tfre / v_taxa.

* << Fim da inclusão

                    ENDIF.

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

                    IF NOT /pws/zycie085-ukursseg IS INITIAL.

                      v_vseg = itab_zycit100a-vlseg /

                               /pws/zycie085-ukursseg .

* << Fim da exclusão

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

                    ELSE.

                      v_tfre = /pws/zycie085-vlfre.

* << Fim da inclusão

                    ENDIF.

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

                  v_vtot = /pws/zycie085-vlfob + /pws/zycie085-vlfre  +

                       /pws/zycie085-vlseg.

* << Fim da exclusão

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

                    v_vtot = /pws/zycie085-vlfob + v_tfre  + v_tseg.

* << Fim da inclusão

                    IF NOT v_vtot IS INITIAL.

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

                      itab_zycit036_aux-vlreal = ( itab_despesa-netpr *

                       ( itab_zycit100a-vlfob +  v_vfre + v_vseg ) ) /

                       v_vtot  .

* << Fim da exclusão

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

                      itab_zycit036_aux-vlreal =  itab_despesa-netpr *

                       ( ( v_vfob +  v_vfre + v_vseg )  /  v_vtot  ) .

* << Fim da inclusão

                    ENDIF.

                  ENDIF.

                ELSE.

                  itab_zycit036_aux-vlreal = ( itab_zycit003-vlreal *

           itab_zycit003-qtd_iten / v_tot_vlreal ) * itab_despesa-netpr.

...

...

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

READ TABLE itab_zycit100a WITH KEY

          ebeln = itab_zycit003-ebeln

          ebelp = itab_zycit003-ebelp.

IF sy-subrc EQ 0.

  "converter para moeda

  PERFORM taxa_converte USING  /pws/zycie085-waersfob

                    /pws/zycie085-dttax

                    t001-land1

             CHANGING  v_taxa.

  " converter reais para moeda

  if not v_taxa is initial.

  v_vfre = itab_zycit100a-vlfre / v_taxa.

 

  " converter reais para moeda

  v_vseg = itab_zycit100a-vlseg / v_taxa.

 

  endif.

  "já na moeda

  v_vfob = itab_zycit100a-vlfob.

 

  "já na moeda

  v_tseg = /pws/zycie085-vlseg ." * v_taxa.

 

  IF /pws/zycie085-ukursfre

     NE /pws/zycie085-ukursfob.

    PERFORM taxa_converte USING

            /pws/zycie085-waersfre

                  /pws/zycie085-dttax

                  t001-land1

           CHANGING  v_taxa.

 

    v_tfre = /pws/zycie085-vlfre * v_taxa.

    PERFORM taxa_converte USING

            /pws/zycie085-waersfob

 

                              /pws/zycie085-dttax

                              t001-land1

                       CHANGING  v_taxa.

                IF NOT v_taxa IS INITIAL.

                  v_tfre = v_tfre / v_taxa.

                ENDIF.

              ELSE.

                v_tfre = /pws/zycie085-vlfre.

* << Fim da inclusão

...

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

Modificações efetuadas em REPS /PWS/MZYCI023F03

 

...

                 t_ivdes2 = ( v_it_plan / v_tot_plan  ) *

                            itab_zycit049-vlreal.

          ELSE.

             if /pws/zycit062-BS_RAT_ICMS eq 'CIF'.

                   t_ivdes2 = ( itab_zycit049-vlreal *

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

                   ( t_vmle + v_tot_fre + v_tot_seg ) )

                    / ( v_totcif  + v_bltofat + v_sgtofat ) .

* << Fim da exclusão

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

                   ( itab_it-vlfob + v_tot_fre + v_tot_seg ) )

                    / ( /pws/zycie085-vlfob  + v_bltofat + v_sgtofat ) .

* << Fim da inclusão

             else.

                 t_ivdes2 =  ( itab_zycit003_rateio-vlreal *

                    itab_zycit003_rateio-qtd_iten

                    / v_tot_real  ) * itab_zycit049-vlreal.

             endif.

...