CE PLUS - Nota 002697

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Nota Fiscal

Data/Hora da Publicação: 14/12/2006 00:00:00

Data/Hora Última Alteração: 20/06/2011 13:41:56

Descrição da Nota: NOTA FISCAL NÃO LEVO VALOR DO ICMS

Sintoma

1)A nota fiscal  não levou o valor fiscal do ICMS.

2) no campo despesa, não levou a taxa siscomex.

3) o total da linha do IPI não bate com o total da nota

4) os valores na linha do ICMS não bate com o total da nota.

Favor verificar.

 

 

Solução

atualizado o programa para verificar

 

Versões Tratadas

6.0


Pré-Requisitos

Produto:

Nota

Descrição

AJUSTES NO CUSTO EFETIVO

PROGRAMA DE NF ESTÁ CONSUMINDO MUITA MEMÓRIA. PROBLEMAS DE PERFORMANCE.

PLANEJADO E MOVIMENTADO DO ENCERRAMENTO ESTÁ INCORRETO PARA JPY

Informações Complementares

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

Nota Número 02697 Data: 14/12/2006 Hora: 12:00:11

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

 

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

Nota Número              : 02697

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00025

Agrupamento              : 00144

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

Referência às notas relacionadas:

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

 

01927  - 00001 - 6.0    - 00024  - PROGRAMA DE NF ESTÁ CONSUMINDO MUITA MEMÓRIA. PROBLEMAS DE PERFOR

02118  - 00002 - 6.0    - 00024  - PLANEJADO E MOVIMENTADO DO ENCERRAMENTO ESTÁ INCORRETO PARA JPY

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

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

NOTA FISCAL NÃO LEVO VALOR DO ICMS

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

Palavras Chave:

NOTA FISCAL - ICMS - SISCOMEX - IPI - TOTAL DA NOTA - ICMS

 

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

Objetos da nota:

REPS /PWS/MZYCI016F01

REPS /PWS/ZYCIR006

 

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

Modificações efetuadas em REPS /PWS/MZYCI016F01

 

...

    v_tot_ntgew LIKE /pws/zycit003-ntgew.

  PERFORM verifica_filial.

  IF t001 IS INITIAL OR /pws/zycit000 IS INITIAL.

    SELECT SINGLE * FROM t001 WHERE bukrs = /pws/zycie041-bukrs.

    SELECT SINGLE * FROM /pws/zycit000 WHERE land1 EQ t001-land1.

  ENDIF.

  LOOP AT itab_zycit042.

    CLEAR: itab_zycit042-vldp, itab_zycit042-vldpii.

    MODIFY itab_zycit042.

  ENDLOOP.

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

  select single * from /pws/zycit001 where nrseq = itab_zycit042-nrseq.

* << Fim da inclusão

  MOVE itab_zycit042[] TO itab_zycit042_d[].

  CLEAR:   itab_zycit019, itab_zycit020, itab_zycit039.

  REFRESH: itab_zycit019, itab_zycit020, itab_zycit039.

  SELECT SINGLE land1 FROM t001 INTO t001-land1

            WHERE bukrs EQ /pws/zycie041-bukrs.

  SELECT * FROM /pws/zycit020 INTO TABLE itab_zycit020

         WHERE regio = adrc-region AND ( baseicms = 'X' OR

                 baseii = 'X' ) AND

                 land1  = t001-land1.

  IF sy-subrc NE 0.

...

 

...

    ELSE.

      v_tot_ntgew = v_tot_ntgew + itab_zycit003-ntgew.

      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 ).

    ENDIF.

  ENDLOOP.

  LOOP AT itab_zycit049_a.

    IF itab_zycit049_a-tpdesp NE /pws/zycit000-cod_sisc OR

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

       /pws/zycit000-flag_txsisc IS INITIAL.

* << Fim da exclusão

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

       /pws/zycit000-flag_txsisc IS INITIAL or

       /pws/zycit001-tpdecl = 'DSI'.

* << Fim da inclusão

      CLEAR: v_tot_vldp, v_vldp.

      LOOP AT itab_zycit042_d.

        MOVE sy-tabix TO v_tabix.

        READ TABLE itab_zycit003 WITH KEY

                           nrseq = itab_zycit042_d-nrseq

                           ebeln = itab_zycit042_d-ebeln

                           ebelp = itab_zycit042_d-ebelp.

        CLEAR: itab_zycit039, itab_zycit020, itab_zycit019.

        READ TABLE itab_zycit019 WITH KEY

                                    tpdesp = itab_zycit049_a-tpdesp.

...

 

...

  IF NOT itab_zycit019[] IS INITIAL.

    SELECT * FROM /pws/zycit049

      INTO TABLE itab_zycit049

      FOR ALL ENTRIES IN itab_zycit019

      WHERE nrseq = /pws/zycie041-nrseq

         AND vldp > 0

         AND tpdesp = itab_zycit019-tpdesp.

    IF NOT itab_zycit049[] IS INITIAL.

      LOOP AT itab_zycit049.

        IF itab_zycit049-tpdesp NE /pws/zycit000-cod_sisc OR

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

           /pws/zycit000-flag_txsisc IS INITIAL.

* << Fim da exclusão

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

           /pws/zycit000-flag_txsisc IS INITIAL or

       /pws/zycit001-tpdecl = 'DSI'.

* << Fim da inclusão

          CLEAR: v_tot_vldp, v_vldp.

          LOOP AT itab_zycit042.

            MOVE sy-tabix TO v_tabix.

            READ TABLE itab_zycit003 WITH KEY

                         nrseq = itab_zycit042-nrseq

                         ebeln = itab_zycit042-ebeln

                         ebelp = itab_zycit042-ebelp.

            CLEAR: itab_zycit039, itab_zycit020, itab_zycit019.

            READ TABLE itab_zycit019 WITH KEY

                                        tpdesp = itab_zycit049-tpdesp.

...

 

...

  IF NOT itab_zycit019[] IS INITIAL.

    SELECT * FROM /pws/zycit049

      INTO TABLE itab_zycit049

      FOR ALL ENTRIES IN itab_zycit019

      WHERE nrseq = /pws/zycie041-nrseq

         AND vldp > 0

         AND tpdesp = itab_zycit019-tpdesp.

    IF NOT itab_zycit049[] IS INITIAL.

      LOOP AT itab_zycit049.

        IF itab_zycit049-tpdesp NE /pws/zycit000-cod_sisc OR

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

          /pws/zycit000-flag_txsisc IS INITIAL.

* << Fim da exclusão

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

          /pws/zycit000-flag_txsisc IS INITIAL or

       /pws/zycit001-tpdecl = 'DSI'.

* << Fim da inclusão

          CLEAR: v_tot_vldp, v_vldp.

          LOOP AT itab_zycit042_d.

            MOVE sy-tabix TO v_tabix.

            READ TABLE itab_zycit003 WITH KEY

                         nrseq = itab_zycit042_d-nrseq

                         ebeln = itab_zycit042_d-ebeln

                         ebelp = itab_zycit042_d-ebelp.

            CLEAR: itab_zycit039, itab_zycit020, itab_zycit019.

            READ TABLE itab_zycit019 WITH KEY

                                        tpdesp = itab_zycit049-tpdesp.

...

 

 

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

Modificações efetuadas em REPS /PWS/ZYCIR006

 

...

            READ TABLE itab_zycit006_fat WITH KEY

               nrseq_pgfat = itab_zycit263-nrseq_pgfat.

            IF sy-subrc = 0.

              CLEAR: itab_zycit036-vlmov, itab_zycit036-waers_mov,

                     itab_zycit036-vldif, itab_zycit036-waers_dif.

            ENDIF.

          ENDIF.

        ENDIF.

        MODIFY itab_zycit036 INDEX v_index.

      WHEN 'FRETEI'.

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

       read table itab_zycit140 with key codigo = itab_zycit036-codigo

                                      origem = itab_zycit036-origem.

* << Fim da inclusão

        if itab_zycit140-custo = 'X'.

        v_linf = v_linf + 1.

        endif.

        CLEAR v_valor.

        IF itab_zycit036-vlreal GT 0         AND

          NOT itab_zycit036-waers_real IS INITIAL.

          PERFORM busca_fatores CHANGING itab_zycit036-waers_real.

          READ TABLE itab_zycit100 WITH KEY

                                      nrseq = itab_zycit036-nrseq

                                      ebeln = itab_zycit036-ebeln

...

 

...

              IF itab_zycit036-origem = 'NF'.

                PERFORM retorna_decimais USING itab_zycit100-waersreal

                                          CHANGING v_valor.

              ELSE.

                PERFORM retorna_decimais USING itab_zycit036-waers_real

                                            CHANGING v_valor.

              ENDIF.

            endif.

            v_val_tot = v_val_tot + v_valor.

          ELSE.

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

            v_valor = ( /pws/zycit085-vlfre * /pws/zycit085-ukursfre )

* << Fim da exclusão

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

            PERFORM retorna_decimais USING /pws/zycit085-waersfre

                                     CHANGING /pws/zycit093-vlfre.

            v_valor = ( /pws/zycit093-vlfre * /pws/zycit085-ukursfre )

* << Fim da inclusão

                                                  - v_val_tot .

          ENDIF.

          IF v_itemcongela NE 'X'.

            IF NOT /pws/zycit085-ukursfre IS INITIAL.

              IF itab_zycit036-origem = 'NF'.

                itab_zycit036-vlmov     = v_valor .

              ELSE.

                IF  itab_zycit036-waers_real NE /pws/zycbt007-waersb.

                  READ TABLE itab_zycit006 WITH KEY

                                     nrseq = itab_zycit036-nrseqori.

...

 

...

        IF itab_zycit036-vlmov IS INITIAL.

          CLEAR itab_zycit036-waers_mov.

        ELSEIF itab_zycit036-vldif IS INITIAL.

          CLEAR itab_zycit036-waers_dif.

        ENDIF.

        IF itab_zycit036-origem = 'NF'.

          v_acum_fre = v_acum_fre + itab_zycit036-vlmov.

        ENDIF.

        MODIFY itab_zycit036 INDEX v_index.

      WHEN 'SEGURO'.

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

         read table itab_zycit140 with key codigo = itab_zycit036-codigo

                                      origem = itab_zycit036-origem.

* << Fim da inclusão

        if itab_zycit140-custo = 'X'.

        v_lins = v_lins + 1.

        endif.

        IF

          itab_zycit036-vlreal GT 0         AND

          NOT itab_zycit036-waers_real IS INITIAL.

          READ TABLE itab_zycit100 WITH KEY nrseq = itab_zycit036-nrseq

                                            ebeln = itab_zycit036-ebeln

                                            ebelp = itab_zycit036-ebelp.

          IF v_lins NE v_tot_lins.

...