CE PLUS - Nota 003675

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Débito em Conta

Data/Hora da Publicação: 14/05/2007 00:00:00

Data/Hora Última Alteração: 09/03/2010 09:38:46

Descrição da Nota: AO LIBERAR DÉB.EM CONTA, VALOR DO IPI ESTÁ FICANDO NEGATIVO.

Sintoma

 

AO LIBERAR DÉB.EM CONTA, VALOR DO IPI ESTÁ FICANDO NEGATIVO.Ao contabilizar o valor fica diferente

do valor colocado no debito.

 

Solução

 

ajustar rateio entre os itens.

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 03675 Data: 14/05/2007 Hora: 16:51:39

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

 

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

Nota Número              : 03675

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00001

Agrupamento              : 00166

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

AO LIBERAR DÉB.EM CONTA, VALOR DO IPI ESTÁ FICANDO NEGATIVO.

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

Palavras Chave:

LIBERAÇÃO - DÉBITO EM CONTA - VALOR DO IPI - VALOR NEGATIVO

RATEIO DE VALORES

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

Objetos da nota:

REPS /PWS/MZYCI013F01

 

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

Modificações efetuadas em REPS /PWS/MZYCI013F01

 

...

                it_tbcontrol-waers  TO it_contabil-waers,

                itab_ekkn-aufnr     TO it_contabil-aufnr,

                it_zycit003-gsber   TO it_contabil-gsber,

                itab_ekkn-aufnr     TO it_contabil-ps_psp_pnr,

                it_zycit003-gsber   TO it_contabil-gsber,

                it_zycit003-ebeln   TO it_contabil-ebeln,

                it_zycit003-ebelp   TO it_contabil-ebelp.

          IF it_tbcontrol-tpdesp = '001'.

            CLEAR: v_frac, v_dec, v_frac2, v_dec2, v_wrbtr.

            IF v_index = v_lines.

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

              IF itab_zycit100-vlipi IS INITIAL.

                CLEAR: it_contabil-vldp.

                COLLECT it_contabil.

                LOOP AT it_contabil

                                WHERE tpdesp = it_contabil-tpdesp

                                  AND vldp > 0.

                  it_contabil-vldp = it_contabil-vldp +

                                       ( it_tbcontrol-vldp - v_total ).

                  MODIFY it_contabil .

                  EXIT.

                ENDLOOP .

                CONTINUE.

              ELSE.

* << Fim da inclusão

              it_contabil-vldp = it_tbcontrol-vldp - v_total.

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

              ENDIF.

* << Fim da inclusão

              CLEAR v_total.

            ELSE.

              v_wrbtr = ( itab_zycit100-vlipi /

                          v_tot_ipi ) * it_tbcontrol-vldp.

              it_contabil-vldp     = v_wrbtr.

              v_total = v_total + it_contabil-vldp.

            ENDIF.

          ELSEIF it_tbcontrol-tpdesp = '002'.

            CLEAR: v_frac, v_dec, v_frac2, v_dec2, v_wrbtr.

            IF v_index = v_lines.

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

              IF itab_zycit100-vlicms IS INITIAL.

                CLEAR: it_contabil-vldp.

                COLLECT it_contabil.

                LOOP AT it_contabil

                                WHERE tpdesp = it_contabil-tpdesp

                                  AND vldp > 0.

                  it_contabil-vldp = it_contabil-vldp +

                                       ( it_tbcontrol-vldp - v_total ).

                  MODIFY it_contabil .

                  EXIT.

                ENDLOOP .

                CONTINUE.

              ELSE.

* << Fim da inclusão

              it_contabil-vldp = it_tbcontrol-vldp - v_total.

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

              ENDIF.

* << Fim da inclusão

              CLEAR v_total.

            ELSE.

              v_wrbtr = ( itab_zycit100-vlicms /

                          v_tot_icms ) * it_tbcontrol-vldp.

              it_contabil-vldp     = v_wrbtr.

              v_total = v_total + it_contabil-vldp.

            ENDIF.

          ELSEIF it_tbcontrol-tpdesp = /pws/zycit000-cod_pis.

            CLEAR: v_frac, v_dec, v_frac2, v_dec2, v_wrbtr.

            IF v_index = v_lines.

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

              IF itab_zycit100-vlpis IS INITIAL.

                CLEAR: it_contabil-vldp.

                COLLECT it_contabil.

                LOOP AT it_contabil

                                WHERE tpdesp = it_contabil-tpdesp

                                  AND vldp > 0.

                  it_contabil-vldp = it_contabil-vldp +

                                       ( it_tbcontrol-vldp - v_total ).

                  MODIFY it_contabil .

                  EXIT.

                ENDLOOP .

                CONTINUE.

              ELSE.

* << Fim da inclusão

              it_contabil-vldp = it_tbcontrol-vldp - v_total.

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

              ENDIF.

* << Fim da inclusão

              CLEAR v_total.

            ELSE.

              v_wrbtr = ( itab_zycit100-vlpis /

                          v_tot_pis ) * it_tbcontrol-vldp.

              it_contabil-vldp     = v_wrbtr.

              v_total = v_total + it_contabil-vldp.

            ENDIF.

          ELSEIF it_tbcontrol-tpdesp = /pws/zycit000-cod_cofins.

            CLEAR: v_frac, v_dec, v_frac2, v_dec2, v_wrbtr.

            IF v_index = v_lines.

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

              IF itab_zycit100-vlcofins IS INITIAL.

                CLEAR: it_contabil-vldp.

                COLLECT it_contabil.

                LOOP AT it_contabil

                          WHERE tpdesp = it_contabil-tpdesp

                            AND vldp > 0.

                  it_contabil-vldp = it_contabil-vldp +

                                       ( it_tbcontrol-vldp - v_total ).

                  MODIFY it_contabil .

                  EXIT.

                ENDLOOP .

                CONTINUE.

              ELSE.

* << Fim da inclusão

              it_contabil-vldp = it_tbcontrol-vldp - v_total.

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

              ENDIF.

* << Fim da inclusão

              CLEAR v_total.

            ELSE.

              v_wrbtr = ( itab_zycit100-vlcofins /

                          v_tot_cofins ) * it_tbcontrol-vldp.

              it_contabil-vldp     = v_wrbtr.

              v_total = v_total + it_contabil-vldp.

...