CE PLUS - Nota 005072

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Fatura Despesas

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

Data/Hora Última Alteração: 22/02/2011 15:49:45

Descrição da Nota: DUMP AO CRIAR FATURA DE DESPESAS COM CONTABILIZAÇÃO DE IMPOSTOS

Sintoma

Ao tentar criar uma fatura de despesas com contabilização de impostos pela miro ocorre um DUMP de

por estouro de campo.

 

 

Solução

Somar apenas os valores necessarios.

 

 

Versões Tratadas

7.0


Pré-Requisitos

Produto:

Nota

Descrição

DUMP AO CRIAR FATURA DE DESPESAS COM CONTABILIZAÇÃO DE IMPOSTOS

Informações Complementares

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

Nota Número 05072 Data: 24/10/2007 Hora: 15:03:33

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

 

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

Nota Número              : 05072

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 7.0

Pacote                   : 00003

Agrupamento              : 00018

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

Referência às notas relacionadas:

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

 

05035  - 00001 - 7.0    - 00003  - DUMP AO CRIAR FATURA DE DESPESAS COM CONTABILIZAÇÃO DE IMPOSTOS

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

DUMP AO CRIAR FATURA DE DESPESAS COM CONTABILIZAÇÃO DE IMPOSTOS

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

Palavras Chave:

FATURA - DESPESAS - IMPOSTOS - DUMP

 

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

Objetos da nota:

REPS /PWS/MZYCI003F02

REPS /PWS/MZYCI003O01

 

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

Modificações efetuadas em REPS /PWS/MZYCI003F02

 

...

      IF v_taxaf IS INITIAL OR v_taxau IS INITIAL.

        EXIT.

      ENDIF.

      REFRESH: itab_zycit403, itab_zycit403t, itab_zycit483.

      SELECT * FROM /pws/zycit403 INTO TABLE itab_zycit403

          WHERE nrseqdi EQ /pws/zycit085-nrseqdi.

      DELETE itab_zycit403 WHERE percentual EQ 0.

      LOOP AT itab_zycit403.

        itab_zycit403t-codigo = itab_zycit403-codigo.

        itab_zycit403t-base = itab_zycit403-base.

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

        CLEAR: itab_zycit403t-ebeln, itab_zycit403t-ebelp.

* << Fim da exclusão

        itab_zycit403t-base =

            ( itab_zycit403-base * v_taxau ) / v_taxaf.

        COLLECT itab_zycit403t.

      ENDLOOP.

    ENDIF.

    LOOP AT itab_zycit403t.

      CLEAR: itab_zycit029, itab_zycit399.

      READ TABLE itab_zycit399 WITH KEY codigo = itab_zycit403t-codigo.

      READ TABLE itab_zycit029 WITH KEY codigo = itab_zycit403t-codigo.

      LOOP AT itab_zycit047 WHERE vldp > 0.

...

 

...

  ENDIF.

ENDFORM.

FORM taxa_converte USING    p_waers

                            p_data

                   CHANGING p_taxa.

  CLEAR: p_taxa.

  DATA:  v_moeda LIKE tcurc-/pws/codmo,

         v_msgd(10),

         v_linhas TYPE i.

  DATA: itab_zycit174 TYPE /pws/zycit174 OCCURS 0 WITH HEADER LINE.

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

  IF p_waers EQ wa_zycbt007-waersb.

    p_taxa = 1.

    EXIT.

  ENDIF.

* << Fim da exclusão

  SELECT SINGLE /pws/codmo FROM tcurc INTO v_moeda WHERE

         waers = p_waers.

  IF sy-subrc EQ 0.

    REFRESH itab_zycit174.

    SELECT * FROM /pws/zycit174 INTO TABLE itab_zycit174 WHERE

           codconver = v_moeda    AND

           vigen_inicio <= p_data AND

           vigen_fim    >= p_data AND

           land1       = t001-land1.

    DESCRIBE TABLE itab_zycit174 LINES v_linhas.

    IF v_linhas EQ 1.

      READ TABLE itab_zycit174 INDEX 1.

      p_taxa = itab_zycit174-txconver.

    ELSEIF v_linhas EQ 0.

      IF NOT p_data IS INITIAL.

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

        IF p_waers EQ wa_zycbt007-waersb.

          p_taxa = 1.

          EXIT.

        ELSE.

* << Fim da inclusão

        MESSAGE i015 WITH text-179 text-180.

      ENDIF.

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

      ENDIF.

* << Fim da inclusão

    ELSEIF v_linhas > 1.

      IF NOT p_data IS INITIAL.

        MESSAGE i015 WITH text-181.

      ENDIF.

    ENDIF.

...

 

...

                         CHANGING v_taxau.

  PERFORM taxa_converte USING /pws/zycie006-waers

                               /pws/zycie006-dtincl

                         CHANGING v_taxaf.

  IF v_taxa IS INITIAL OR v_taxau IS INITIAL.

    EXIT.

  ENDIF.

  LOOP AT itab_zycit403.

    itab_zycit403t-codigo = itab_zycit403-codigo.

    itab_zycit403t-base = itab_zycit403-base.

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

    CLEAR: itab_zycit403t-ebeln, itab_zycit403t-ebelp.

* << Fim da exclusão

    itab_zycit403t-base =

        ( itab_zycit403-base * v_taxau ) / v_taxaf.

    COLLECT itab_zycit403t.

  ENDLOOP.

  LOOP AT itab_zycit403t.

    CLEAR: itab_zycit029, itab_zycit399.

    READ TABLE itab_zycit399 WITH KEY codigo = itab_zycit403t-codigo.

    READ TABLE itab_zycit029 WITH KEY codigo = itab_zycit403t-codigo.

    LOOP AT itab_zycit047 WHERE vldp > 0.

      READ TABLE itab_zycit484

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI003O01

 

...

                                   /pws/zycie006-dtincl

                             CHANGING v_taxaf.

      IF v_taxa IS INITIAL OR v_taxau IS INITIAL.

        EXIT.

      ENDIF.

      REFRESH: itab_zycit403, itab_zycit403t.

      SELECT * FROM /pws/zycit403 INTO TABLE itab_zycit403

          WHERE nrseqdi EQ /pws/zycit085-nrseqdi.

      DELETE itab_zycit403 WHERE percentual EQ 0.

      LOOP AT itab_zycit403.

* >> Início da exclusão: MODULE STATUS_0113

        itab_zycit403t = itab_zycit403.

        CLEAR: itab_zycit403t-ebeln, itab_zycit403t-ebelp.

* << Fim da exclusão

* >> Início da inclusão: MODULE STATUS_0113

        itab_zycit403t-codigo = itab_zycit403-codigo.

        itab_zycit403t-base = itab_zycit403-base.

* << Fim da inclusão

        itab_zycit403t-base =

            ( itab_zycit403-base * v_taxau ) / v_taxaf.

        COLLECT itab_zycit403t.

      ENDLOOP.

    ENDIF.

  ENDIF.

  DESCRIBE TABLE itab_zycit483 LINES tc_imp-lines.

  ADD 10 TO tc_imp-lines.

ENDMODULE.