CE PLUS - Nota 010748

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Nota Fiscal

Data/Hora da Publicação: 19/11/2010 00:00:00

Data/Hora Última Alteração: 09/09/2011 17:13:41

Descrição da Nota: AO CRIAR NF DE CENÁRIO COM ERRO DÁ DUMP.

Sintoma

Ao criar NF de cenário com erro dá dump.

 

 

Solução

Verificar se variável está zerada antes de fazer divisão.

 

Versões Tratadas

8.0


Pré-Requisitos

Produto:

Nota

Descrição

ERRO NO RATEIO DE DESPESAS DA DI AO FAZER A NF

VALOR DAS DESPESAS RATEADAS PELO VALOR CIF.

COMPLEMENTO DO BOLETO - CONTABILIZAÇÃO - CAMPO CENTRO DE LUCRO

CORREÇÃO DE RATEIO DAS DESPESAS POR VALOR CIF

Informações Complementares

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

Nota Número 10748 Data: 19/11/2010 Hora: 14:13:55

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

 

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

Nota Número              : 10748

Categoria                : Erro de Programa

Prioridade               : Alta

Versão PW.CE             : 8.0

Pacote                   : 00005

Agrupamento              : 00048

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

Referência às notas relacionadas:

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

 

05011  - 00001 - 7.0    - 00003  - ERRO NO RATEIO DE DESPESAS DA DI AO FAZER A NF

09665  - 00002 - 8.0    - 00002  - COMPLEMENTO DO BOLETO - CONTABILIZAÇÃO - CAMPO CENTRO DE LUCRO

09821  - 00003 - 8.0    - 00002  - CORREÇÃO DE RATEIO DAS DESPESAS POR VALOR CIF

10193  - 00004 - 8.0    - 00003  - VALOR DAS DESPESAS RATEADAS PELO VALOR CIF.

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

AO CRIAR NF DE CENÁRIO COM ERRO DÁ DUMP.

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

Palavras Chave:

DUMP - CRIAR NF - DIVISÃO POR ZERO.

 

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

Objetos da nota:

REPS /PWS/MZYCI016F01

 

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

Modificações efetuadas em REPS /PWS/MZYCI016F01

 

...

                  PERFORM taxa_converte USING  /pws/zycit085-waersfob

                                               /pws/zycit085-dttax

                                     CHANGING  v_taxa_desp.

                  IF NOT v_taxa_desp IS INITIAL.

                itab_zycit100-vlfre = itab_zycit100-vlfre / v_taxa_desp.

                    IF itab_zycit100-waersbem NE /pws/zycit085-waersfob.

                      itab_zycit100-vlfob =

                       ( itab_zycit100-vlfob * itab_zycit100-dttaxbem )

                                                         / v_taxa_desp.

                    ENDIF.

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

                    IF NOT    /pws/zycit085-ukursseg IS INITIAL.

* << Fim da inclusão

                    itab_zycit100-vlseg = itab_zycit100-vlseg /

                                 /pws/zycit085-ukursseg.

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

                    ENDIF.

* << Fim da inclusão

                    PERFORM retorna_decimais:

                                USING /pws/zycit085-waersseg

                             CHANGING itab_zycit100-vlseg,

                                USING /pws/zycit085-waersfob

                             CHANGING itab_zycit100-vlfre.

                  ENDIF.

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

                  IF NOT /pws/zycit085-vlfob IS INITIAL.

* << Fim da inclusão

                  v_vldp = itab_zycit049_a-vlreal *

                  ( ( itab_zycit100-vlfob +

                  itab_zycit100-vlfre + itab_zycit100-vlseg )

                   / ( /pws/zycit085-vlfob  + v_vlfre +

                       /pws/zycit085-vlseg ) ).

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

                  ENDIF.

* << Fim da inclusão

                ENDIF.

              ELSE.

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

                IF NOT v_tot_real IS INITIAL.

* << Fim da inclusão

                v_vldp = itab_zycit049_a-vldp *

                        ( itab_zycit003-vlreal *

                        itab_zycit003-qtd_iten / v_tot_real ).

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

                ENDIF.

* << Fim da inclusão

              ENDIF.

            ENDIF.

            v_tot_vldp = v_tot_vldp + v_vldp.

            itab_zycit042_d-vldp = itab_zycit042_d-vldp + v_vldp.

...

 

...

                                                      CHANGING v_vlfre .

                        PERFORM retorna_decimais

                                    USING /pws/zycit085-waersfob

                                 CHANGING v_vlfre.

                      ENDIF.

                    PERFORM taxa_converte USING  /pws/zycit085-waersfob

                                                    /pws/zycit085-dttax

                                                  CHANGING  v_taxa_desp.

                      IF NOT v_taxa_desp IS INITIAL.

                itab_zycit100-vlfre = itab_zycit100-vlfre / v_taxa_desp.

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

                        IF NOT /pws/zycit085-ukursseg IS INITIAL.

* << Fim da inclusão

                        itab_zycit100-vlseg = itab_zycit100-vlseg /

                              /pws/zycit085-ukursseg.

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

                        ENDIF.

* << Fim da inclusão

                        PERFORM: retorna_decimais

                                    USING /pws/zycit085-waersseg

                                 CHANGING itab_zycit100-vlseg,

                                 retorna_decimais

                                    USING /pws/zycit085-waersfob

                                 CHANGING itab_zycit100-vlfre.

                      ENDIF.

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

                      IF NOT /pws/zycit085-vlfob IS INITIAL.

* << Fim da inclusão

                      v_vldp = itab_zycit049-vlreal *

                      ( ( itab_zycit100-vlfob +

                      itab_zycit100-vlfre + itab_zycit100-vlseg )

                     / ( /pws/zycit085-vlfob  + v_vlfre +

                           /pws/zycit085-vlseg ) ).

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

                      ENDIF.

* << Fim da inclusão

                    ENDIF.

                  ELSE.

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

                    IF NOT v_tot_real IS INITIAL.

* << Fim da inclusão

                    v_vldp = itab_zycit049-vldp *

                        ( itab_zycit003-vlreal *

                          itab_zycit003-qtd_iten / v_tot_real ).

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

                    ENDIF.

* << Fim da inclusão

                  ENDIF.

                ENDIF.

                v_tot_vldp = v_tot_vldp + v_vldp.

                itab_zycit042-vldp = itab_zycit042-vldp + v_vldp.

...