CE PLUS - Nota 005435

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Nota Fiscal

Data/Hora da Publicação: 12/12/2007 00:00:00

Data/Hora Última Alteração: 28/11/2011 10:43:34

Descrição da Nota: AJUSTE NO RATEIO DAS DESPESAS COM GRANEL

Sintoma

O rateio das despesas na Nota Fiscal estão erradas. O sistema não está respeitando o mesmo rateio da

DI no momento de gerar a nota fiscal.

 

 

Solução

Ajustar rateio para ser feito da mesma forma que é realizado na DI.

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

ERRO NO CÁLCULO DE DESPESAS E VALORES DA NF UTILIZANDO GRANEL + CIF

AJUSTES NO CUSTO EFETIVO

Informações Complementares

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

Nota Número 05435 Data: 12/12/2007 Hora: 10:40:35

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

 

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

Nota Número              : 05435

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00003

Agrupamento              : 00024

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

Referência às notas relacionadas:

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

 

04009  - 00002 - 7.0    - 00001  - ERRO NO CÁLCULO DE DESPESAS E VALORES DA NF UTILIZANDO GRANEL + C

02677  - 00001 - 6.0    - 00025  - AJUSTES NO CUSTO EFETIVO

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

AJUSTE NO RATEIO DAS DESPESAS COM GRANEL

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

Palavras Chave:

RATEIO - DESPESAS - GRANEL - NOTA - FISCAL

/PWS/SAPMZYCI016

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

Objetos da nota:

REPS /PWS/MZYCI016F01

 

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

Modificações efetuadas em REPS /PWS/MZYCI016F01

 

...

    SELECT * FROM /pws/zycit049

      INTO TABLE itab_zycit049_a

      FOR ALL ENTRIES IN itab_zycit019

      WHERE nrseq = /pws/zycie041-nrseq

         AND vldp > 0

         AND tpdesp = itab_zycit019-tpdesp.

  ENDIF.

  DESCRIBE TABLE itab_zycit042_d LINES v_lines.

  CLEAR:  v_tot_ntgew, v_tot_plan, v_tot_real.

  LOOP AT itab_zycit003.

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

    IF NOT itab_zycit003-qtd_itend IS INITIAL.

      v_tot_ntgew = v_tot_ntgew + itab_zycit003-ntgewd.

    ELSE.

* << Fim da exclusão

      v_tot_ntgew = v_tot_ntgew + itab_zycit003-ntgew.

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

    ENDIF.

* << Fim da exclusão

    v_tot_plan = v_tot_plan +

         ( itab_zycit003-netpr * itab_zycit003-qtd_iten ).

    v_tot_real = v_tot_real +

         ( itab_zycit003-vlreal * itab_zycit003-qtd_iten ).

  ENDLOOP.

  LOOP AT itab_zycit049_a.

...

 

...

          ENDIF.

          IF v_lines = v_tabix.

            v_vldp = itab_zycit049_a-vldp - v_tot_vldp.

            itab_zycit042_d-vldp = itab_zycit042_d-vldp + v_vldp.

            CLEAR v_vldp.

          ELSE.

            IF itab_zycit039-divabs = 'X'.

              v_vldp = itab_zycit049_a-vldp / v_lines.

            ELSEIF itab_zycit039-peso = 'X'.

              IF NOT v_tot_ntgew IS INITIAL.

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

                IF NOT itab_zycit003-ntgewd IS INITIAL.

                 v_vldp = itab_zycit049_a-vldp * itab_zycit003-ntgewd /

                                                            v_tot_ntgew.

                ELSE.

* << Fim da exclusão

                  v_vldp = itab_zycit049_a-vldp * itab_zycit003-ntgew /

                           v_tot_ntgew.

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

                ENDIF.

* << Fim da exclusão

              ENDIF.

            ELSEIF itab_zycit039-proporplan = 'X'.

              v_vldp = itab_zycit049_a-vldp *

                     ( itab_zycit003-netpr *

                     itab_zycit003-qtd_iten / v_tot_plan ).

...

 

...

              ENDIF.

              IF v_lines = v_tabix.

                v_vldp = itab_zycit049-vldp - v_tot_vldp.

                itab_zycit042-vldp = itab_zycit042-vldp + v_vldp.

                CLEAR v_vldp.

              ELSE.

                IF itab_zycit039-divabs = 'X'.

                  v_vldp = itab_zycit049-vldp / v_lines.

                ELSEIF itab_zycit039-peso = 'X'.

                  IF NOT v_tot_ntgew IS INITIAL.

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

                    IF NOT itab_zycit003-ntgewd IS INITIAL.

                   v_vldp = itab_zycit049-vldp * itab_zycit003-ntgewd /

                                                            v_tot_ntgew.

                    ELSE.

* << Fim da exclusão

                    v_vldp = itab_zycit049-vldp * itab_zycit003-ntgew /

                                                            v_tot_ntgew.

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

                    ENDIF.

* << Fim da exclusão

                  ENDIF.

                ELSEIF itab_zycit039-proporplan = 'X'.

                  v_vldp = itab_zycit049-vldp *

                       ( itab_zycit003-netpr *

                       itab_zycit003-qtd_iten /  v_tot_plan ).

...

 

...

              ENDIF.

              IF v_lines = v_tabix.

                v_vldp = itab_zycit049-vldp - v_tot_vldp.

               itab_zycit042_d-vldpii = itab_zycit042_d-vldpii + v_vldp.

                CLEAR v_vldp.

              ELSE.

                IF itab_zycit039-divabs = 'X'.

                  v_vldp = itab_zycit049-vldp / v_lines.

                ELSEIF itab_zycit039-peso = 'X'.

                  IF NOT v_tot_ntgew IS INITIAL.

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

                    IF NOT itab_zycit003-ntgewd IS INITIAL.

                   v_vldp = itab_zycit049-vldp * itab_zycit003-ntgewd /

                                                            v_tot_ntgew.

                    ELSE.

* << Fim da exclusão

                    v_vldp = itab_zycit049-vldp * itab_zycit003-ntgew /

                                                            v_tot_ntgew.

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

                    ENDIF.

* << Fim da exclusão

                  ENDIF.

                ELSEIF itab_zycit039-proporplan = 'X'.

                  v_vldp = itab_zycit049-vldp *

                       ( itab_zycit003-netpr *

                         itab_zycit003-qtd_iten / v_tot_plan ).

...