CE PLUS - Nota 001017

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Custo Efetivo

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

Data/Hora Última Alteração: 20/06/2011 12:11:11

Descrição da Nota: O SISTEMA NÃO ESTÁ CREDITANDO OS VALORES DE PIS E COFINS NO CUSTO.

Sintoma

O sistema não está creditando os valores de Pis e Cofins no Custo Efetivo da mercadoria.

 

 

 

Solução

Inserido tratamento para resolver o problema citado acima.

 

Versões Tratadas

6.0

Informações Complementares

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

Nota Número 01017 Data: 14/03/2006 Hora: 08:21:20

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

 

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

Nota Número              : 01017

Categoria                : Erro de Programa

Prioridade               : Média

Versão PW.CE             : 6.0

Pacote                   : 00022

Agrupamento              : 00105

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

O SISTEMA NÃO ESTÁ CREDITANDO OS VALORES DE PIS E COFINS NO CUSTO.

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

Palavras Chave:

CREDITANDO - VALORES - PIS - COFINS - ZYCIT398

 

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

Objetos da nota:

REPS /PWS/MZYCI010F03

 

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

Modificações efetuadas em REPS /PWS/MZYCI010F03

 

...

        IF ( itab_zycit033-tribipi EQ '1' ).

          itab_zycit036_aux-vlmov = ' '.

          itab_zycit036_aux-vldif = ' '.

          MODIFY itab_zycit036_aux.

        ENDIF.

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

      ELSEIF  itab_zycit036_aux-codigo EQ 'PIS'.

* << Fim da exclusão

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

      ELSEIF itab_zycit036_aux-codigo EQ 'PIS'

         and itab_zycit036_aux-origem eq 'NF'.

* << Fim da inclusão

        SELECT SINGLE * FROM /pws/zycit398

          WHERE tpnf     EQ itab_zycit042-tpnf

          AND   tributos EQ itab_zycit036_aux-codigo

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

          AND   bukrs    EQ v_bukrs.

* << Fim da exclusão

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

          AND   bukrs    EQ v_bukrs

          AND   clnf     EQ v_clnf.

* << Fim da inclusão

        IF sy-subrc NE 0.

          SELECT SINGLE * FROM /pws/zycit398

          WHERE tpnf     EQ itab_zycit042-tpnf

            AND tributos EQ itab_zycit036_aux-codigo

            AND bukrs    EQ space.

        ENDIF.

        IF sy-subrc EQ 0.

          IF /pws/zycit398-creditar EQ 'S'.

            itab_zycit036_aux-vlmov = ' '.

            itab_zycit036_aux-vldif = ' '.

            MODIFY itab_zycit036_aux.

          ENDIF.

        ENDIF.

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

      ELSEIF itab_zycit036_aux-codigo EQ 'COFINS'.

* << Fim da exclusão

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

      ELSEIF itab_zycit036_aux-codigo EQ 'COFINS'

         and itab_zycit036_aux-origem eq 'NF'.

* << Fim da inclusão

        SELECT SINGLE * FROM /pws/zycit398

          WHERE tpnf     EQ itab_zycit042-tpnf

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

            AND clnf     EQ v_clnf

* << Fim da inclusão

            AND tributos EQ itab_zycit036_aux-codigo

            AND bukrs    EQ v_bukrs.

        IF sy-subrc NE 0.

          SELECT SINGLE * FROM /pws/zycit398

          WHERE tpnf     EQ itab_zycit042-tpnf

          AND   tributos EQ itab_zycit036_aux-codigo

          AND   bukrs    EQ space.

        ENDIF.

        IF sy-subrc EQ 0.

          IF /pws/zycit398-creditar EQ 'S'.

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

            itab_zycit036_aux-vlmov = ' '.

            itab_zycit036_aux-vldif = ' '.

            MODIFY itab_zycit036_aux.

          ENDIF.

        ENDIF.

      ENDIF.

    ENDLOOP.

  ENDLOOP.

  DATA: it_zycit265 TYPE /pws/zycit265 OCCURS 0 WITH HEADER LINE.

  IF it_zycit265[] IS INITIAL AND NOT

     itab_zycit003[] IS INITIAL.

    SELECT * FROM /pws/zycit265 INTO TABLE it_zycit265

             FOR ALL ENTRIES IN itab_zycit003

             WHERE nrseq EQ itab_zycit003-nrseq

               AND ebeln EQ itab_zycit003-ebeln

               AND ebelp EQ itab_zycit003-ebelp.

  ELSEIF it_zycit265[] IS INITIAL

     AND NOT itab_zycit003[] IS INITIAL.

    SELECT * FROM /pws/zycit265 INTO TABLE it_zycit265

             WHERE nrseq EQ itab_zycit001-nrseq.

  ENDIF.

  IF NOT it_zycit265[] IS INITIAL.

  v_clnf = 'C'.

    LOOP AT it_zycit265.

      CLEAR itab_zycit033.

      READ TABLE itab_zycit033 WITH KEY clnf  = v_clnf

                                        tpnf  = it_zycit265-tpnf

                                        regio = it_zycit265.

      IF sy-subrc NE 0.

        READ TABLE itab_zycit033 WITH KEY clnf  = v_clnf

                                          tpnf  = it_zycit265-tpnf.

      ENDIF.

      LOOP AT itab_zycit036_aux WHERE nrseq = it_zycit265-nrseq

                              AND ebeln = it_zycit265-ebeln

                               AND ebelp = it_zycit265-ebelp.

      READ TABLE itab_zycit100 WITH KEY nrseq = itab_zycit036_aux-nrseq

                                        ebeln = itab_zycit036_aux-ebeln

                                        ebelp = itab_zycit036_aux-ebelp.

        IF itab_zycit036_aux-codigo EQ 'ICMS'.

          IF ( itab_zycit033-tribicms EQ '1' ) OR

            ( itab_zycit033-tribicms EQ '3' AND

            itab_zycit033-lei102 EQ 'X' ) OR

            itab_zycit100-icms_dif EQ 'X'.

* << Fim da inclusão

            itab_zycit036_aux-vlmov = ' '.

            itab_zycit036_aux-vldif = ' '.

            MODIFY itab_zycit036_aux.

          ENDIF.

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

        ELSEIF  itab_zycit036_aux-codigo EQ 'IPI'.

          IF ( itab_zycit033-tribipi EQ '1' ).

            itab_zycit036_aux-vlmov = ' '.

            itab_zycit036_aux-vldif = ' '.

            MODIFY itab_zycit036_aux.

* << Fim da inclusão

        ENDIF.

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

      ELSEIF  itab_zycit036_aux-codigo EQ 'COFINS'.

* << Fim da exclusão

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

        ELSEIF itab_zycit036_aux-codigo EQ 'PIS'

           and itab_zycit036_aux-origem eq 'NFC'.

* << Fim da inclusão

        SELECT SINGLE * FROM /pws/zycit398

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

          WHERE tpnf     EQ itab_zycit042-tpnf

* << Fim da exclusão

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

            WHERE tpnf     EQ it_zycit265-tpnf

* << Fim da inclusão

          AND   tributos EQ itab_zycit036_aux-codigo

          AND   bukrs    EQ v_bukrs.

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

          IF sy-subrc NE 0.

            SELECT SINGLE * FROM /pws/zycit398

            WHERE tpnf     EQ it_zycit265-tpnf

              AND clnf  EQ v_clnf

              AND tributos EQ itab_zycit036_aux-codigo

              AND bukrs    EQ space.

          ENDIF.

          IF sy-subrc EQ 0.

            IF /pws/zycit398-creditar EQ 'S'.

              itab_zycit036_aux-vlmov = ' '.

              itab_zycit036_aux-vldif = ' '.

              MODIFY itab_zycit036_aux.

            ENDIF.

          ENDIF.

        ELSEIF itab_zycit036_aux-codigo EQ 'COFINS'

           and itab_zycit036_aux-origem eq 'NFC'.

          SELECT SINGLE * FROM /pws/zycit398

            WHERE tpnf     EQ it_zycit265-tpnf

              AND clnf     EQ v_clnf

              AND tributos EQ itab_zycit036_aux-codigo

              AND bukrs    EQ v_bukrs.

* << Fim da inclusão

        IF sy-subrc NE 0.

          SELECT SINGLE * FROM /pws/zycit398

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

          WHERE tpnf     EQ itab_zycit042-tpnf

* << Fim da exclusão

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

            WHERE tpnf     EQ it_zycit265-tpnf

* << Fim da inclusão

          AND   tributos EQ itab_zycit036_aux-codigo

          AND   bukrs    EQ space.

        ENDIF.

        IF sy-subrc EQ 0.

          IF /pws/zycit398-creditar EQ 'S'.

...

 

...

          ENDIF.

        ENDIF.

      ENDIF.

    ENDLOOP.

  ENDLOOP.

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

  ENDIF.

* << Fim da inclusão

  SELECT SINGLE land1

    FROM t001

    INTO t001-land1

    WHERE bukrs EQ /pws/zycie001-bukrs.

  SELECT * FROM /pws/zycit029 INTO TABLE itab_zycit029

...