CE PLUS - Nota 004932

Módulo: DOC. IMPORTAÇÃO

Funcionalidade: Prestação de Contas

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

Data/Hora Última Alteração: 09/03/2010 10:52:52

Descrição da Nota: CRÉDITO DE PIS E COFINS EM DESPESA QUE INCIDE PIS E COFINS PREST CONTAS.

Sintoma

 

O programa não verificava se existia uma despesa configurada para creditar impostos.

Agora a despesa pode estar parametrizada na tabela /pws/zycit481 e se creditar de pis e cofins.

 

Solução

 

Implementada no programa Prestação de Contas a funcionalidade de crédito de Impostos com base na

tabela /pws/zycit481.

Versões Tratadas

7.0

Informações Complementares

 

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

Nota Número 04932 Data: 08/10/2007 Hora: 11:10:33

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

 

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

Nota Número              : 04932

Categoria                : Melhoria

Prioridade               : Alta

Versão PW.CE             : 7.0

Pacote                   : 00003

Agrupamento              : 00016

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

Referência às notas relacionadas:

Número - Ordem - Descrição Breve

 

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

CRÉDITO DE PIS E COFINS EM DESPESA QUE INCIDE PIS E COFINS PREST CONTAS.

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

Palavras Chave:

CRÉDITO DE PIS E COFINS - CRÉDITO DE IMPOSTOS - CRÉDITO

 

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

Objetos da nota:

FUGR /PWS/ZYCIGF1

REPS /PWS/MZYCI007F02

REPS /PWS/MZYCI007TOP

TABL /PWS/ZYCIT481

TRAN /PWS/ZYCIT481

 

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI007F02

 

...

  CLEAR /pws/zycie001.

  SELECT SINGLE *

    FROM /pws/zycit001

    INTO /pws/zycie001

    WHERE nrseq EQ /pws/zycie026-nrseq.

  SELECT * FROM /pws/zycit019 INTO TABLE itab_zycit019 WHERE

               land1 EQ t001-land1.

  IF sy-subrc NE 0.

    SELECT * FROM /pws/zycit019 INTO TABLE itab_zycit019.

  ENDIF.

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

  FREE itab_cta_481.

  REFRESH itab_cta_481.

  FREE itab_zycit481.

  REFRESH itab_zycit481.

* << Fim da inclusão

  LOOP AT it_lanca_aux2.

    READ TABLE it_zycit003 WITH KEY ebeln = it_lanca_aux2-ebeln

                                    ebelp = it_lanca_aux2-ebelp.

    IF sy-subrc NE 0.

      SELECT SINGLE werks FROM /pws/zycit003 INTO it_zycit003-werks

        WHERE ebeln = it_lanca_aux2-ebeln AND

              ebelp = it_lanca_aux2-ebelp.

      IF sy-subrc NE 0.

        SELECT SINGLE werks FROM /pws/zycit003 INTO it_zycit003-werks

          WHERE nrseq = it_lanca_aux2-nrseq.

...

 

...

          it_lanca_aux3-ebeln      = it_lanca_aux2-ebeln.

          it_lanca_aux3-ebelp      = it_lanca_aux2-ebelp.

          it_lanca_aux3-gsber      = it_lanca_aux2-gsber.

          it_lanca_aux3-prctr      = it_lanca_aux2-prctr.

          it_lanca_aux3-matuse     = it_lanca_aux2-matuse.

          it_lanca_aux3-bklas      = it_lanca_aux2-bklas.

          it_lanca_aux3-knttp      = it_lanca_aux2-knttp.

          it_lanca_aux3-lancamento = it_lanca_aux2-lancamento.

          IF t001-land1 EQ 'AR' .

            it_lanca_aux3-iva        = it_lanca_aux2-iva  .

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

          ENDIF.

          SELECT *

          FROM /pws/zycit481

          INTO TABLE itab_zycit481

          WHERE ( BUKRS EQ /pws/zycie026-bukrs OR BUKRS EQ SPACE )

            AND ( LAND1 EQ T001-LAND1 OR LAND1 EQ SPACE )

            AND ( REGIO EQ adrc-region OR REGIO EQ SPACE )

            AND CODMOD   = 'D'.

          IF sy-subrc EQ 0.

              READ TABLE itab_zycit481 WITH KEY tpdesp =

                          it_lanca_aux2-tpdesp.

            IF sy-subrc EQ 0.

              LOOP AT itab_zycit481.

                v_kostl = 'DSC'.

                v_werks = it_zycit003-werks.

                v_aux1  = it_lanca_aux2-matuse.

                v_aux2  = itab_zycit481-codigo.

                CLEAR itab_cta. REFRESH itab_cta.

                PERFORM seek_account_number

                        TABLES itab_cta

                        USING  /pws/zycie026-bukrs

                               v_kostl

                               space

                               space

                               v_aux1

                               v_aux2

                               space.

                READ TABLE itab_cta INDEX 1.

                IF NOT itab_cta IS INITIAL.

                  itab_cta_481-MANDT = itab_cta-MANDT.

                  itab_cta_481-BUKRS = itab_cta-BUKRS.

                  itab_cta_481-KTOSL = itab_cta-KTOSL.

                  itab_cta_481-WERKS = itab_cta-WERKS.

                  itab_cta_481-BKLAS = itab_cta-BKLAS.

                  itab_cta_481-CODAUX1 = itab_cta-CODAUX1.

                  itab_cta_481-CODAUX2 = itab_cta-CODAUX2.

                  itab_cta_481-CODAUX3 = itab_cta-CODAUX3.

                  itab_cta_481-KONTS = itab_cta-KONTS.

                  itab_cta_481-KONTH = itab_cta-KONTH.

                  itab_cta_481-vlTot =

                      ( it_lanca_aux2-lancamento *

                         ( itab_zycit481-aliquotas / 100 ) ).

                  itab_cta_481-ebeln = it_lanca_aux2-ebeln.

                  itab_cta_481-ebelp = it_lanca_aux2-ebelp.

                  READ TABLE itab_zycit019 WITH KEY tpdesp =

                          it_lanca_aux2-tpdesp.

                  itab_cta_481-codigo = itab_zycit019-codigo.

                  if itab_zycit481-tpdesp = itab_zycit019-tpdesp.

                    APPEND itab_cta_481.

                  endif.

                ENDIF.

              ENDLOOP.

* << Fim da inclusão

          ENDIF.

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

          ENDIF.

* << Fim da inclusão

          COLLECT it_lanca_aux3.

          v_append = 'X'.

        ENDIF.

      ELSE.

        it_zycbe035-ktosl = 'DSP'.

        it_zycbe035-d_newko = itab_cta-konts.

...

 

...

      it_zycbe035-d_sgtxt = it_zycbe035-c_sgtxt = v_nradto1.

      PERFORM verifica_exit USING 'D'

                           '/PWS/SAPMZYCI007'

                           'PRT002'.

      CLEAR itab_zyglt100 .

      READ TABLE itab_zyglt100 WITH KEY zexit = 'PRT002'.

      IF itab_zyglt100-zexit_ativa IS INITIAL.

      ELSE.

        PERFORM (itab_zyglt100-formulario) IN PROGRAM

            (itab_zyglt100-programa) IF FOUND.

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

      ENDIF.

      IF NOT itab_cta_481 IS INITIAL.

        READ TABLE itab_cta_481 WITH KEY ebeln = it_lanca_aux3-ebeln

                                         ebelp = it_lanca_aux3-ebelp.

        IF SY-SUBRC = 0.

           LOOP AT itab_cta_481.

             IF itab_cta_481-ebeln = it_lanca_aux3-ebeln AND

                itab_cta_481-ebelp = it_lanca_aux3-ebelp.

               it_zycbe035-wrbtr =

                     it_zycbe035-wrbtr - itab_cta_481-VLTOT.

             ENDIF.

           ENDLOOP.

         ENDIF.

      ENDIF.

      COLLECT it_zycbe035.

    ENDLOOP.

* << Fim da inclusão

      ENDIF.

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

  IF NOT itab_cta_481 IS INITIAL.

    FREE itab_cta_481_aux.

    REFRESH itab_cta_481_aux.

    LOOP AT itab_cta_481.

      itab_cta_481_aux-MANDT = itab_cta_481-MANDT.

      itab_cta_481_aux-BUKRS = itab_cta_481-BUKRS.

      itab_cta_481_aux-KTOSL = itab_cta_481-KTOSL.

      itab_cta_481_aux-WERKS = itab_cta_481-WERKS.

      itab_cta_481_aux-BKLAS = itab_cta_481-BKLAS.

      itab_cta_481_aux-CODAUX1 = itab_cta_481-CODAUX1.

      itab_cta_481_aux-CODAUX2 = itab_cta_481-CODAUX2.

      itab_cta_481_aux-CODAUX3 = itab_cta_481-CODAUX3.

      itab_cta_481_aux-KONTS = itab_cta_481-KONTS.

      itab_cta_481_aux-KONTH = itab_cta_481-KONTH.

      itab_cta_481_aux-vlTot = itab_cta_481-vlTot.

      itab_cta_481_aux-codigo = itab_cta_481-codigo.

      COLLECT itab_cta_481_aux.

    ENDLOOP.

    LOOP AT itab_cta_481_aux.

        it_zycbe035-TCODE = 'F-43'.

        it_zycbe035-TABELA = '/PWS/ZYCIT026'.

        it_zycbe035-CPOCHV = /PWS/ZYCIE026-NRSEQ.

        it_zycbe035-WRBTR = itab_cta_481_aux-vltot.

        it_zycbe035-D_NEWKO = itab_cta_481_aux-KONTS.

        it_zycbe035-KTOSL = itab_cta_481_aux-KTOSL.

* << Fim da inclusão

      COLLECT it_zycbe035.

    ENDLOOP.

  ENDIF.

  DESCRIBE TABLE it_zycbe035 LINES v_linha.

  LOOP AT it_zycbe035.

    v_total = v_total + it_zycbe035-wrbtr.

    IF sy-tabix = v_linha.

      v_tot_aux = /pws/zycie026-totdepme - v_total.

      it_zycbe035-wrbtr = it_zycbe035-wrbtr + v_tot_aux.

      MODIFY it_zycbe035.

...

 

...

                             usernamec  = sy-uname

                             dtuserc    = sy-datlo

                             hruserc    = sy-uzeit

                       WHERE nrseq    EQ itab_zycit036-nrseq

                         AND ebeln    EQ itab_zycit036-ebeln

                         AND ebelp    EQ itab_zycit036-ebelp

                         AND codigo   EQ itab_zycit036-codigo

                         AND origem   EQ 'PC'

                         AND nrseqori EQ itab_zycit036-nrseqori.

    IF sy-subrc NE 0.

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

      SELECT single tpdesp

      INTO v_tpdesp

      FROM /PWS/ZYCIT019

      WHERE CODIGO = itab_zycit036-CODIGO.

      IF SY-SUBRC = 0.

        SELECT single tpdesp

        INTO v_tpdesp2

        FROM /PWS/ZYCIT481

        WHERE TPDESP = v_tpdesp.

        IF SY-SUBRC = 0.

          IF NOT itab_cta_481 IS INITIAL.

            READ TABLE itab_cta_481 WITH KEY ebeln = itab_zycit036-ebeln

                                           ebelp = itab_zycit036-ebelp

                                          codigo = itab_zycit036-codigo.

            IF SY-SUBRC = 0.

              LOOP AT itab_cta_481.

                IF itab_cta_481-ebelp = itab_zycit036-ebelp and

                   itab_cta_481-codigo = itab_zycit036-codigo.

                  itab_zycit036-vlreal =

                        itab_zycit036-vlreal - itab_cta_481-vlTot.

                  MODIFY itab_zycit036.

                ENDIF.

              ENDLOOP.

            ENDIF.

          ENDIF.

        ENDIF.

      ENDIF.

* << Fim da inclusão

      MODIFY /pws/zycit036 FROM itab_zycit036.

    ENDIF.

  ENDLOOP.

  IF /pws/zycie026-dtlanc IS INITIAL.

    /pws/zycie026-dtlanc = sy-datlo.

  ENDIF.

  UPDATE /pws/zycit026 SET dtlanc = /pws/zycie026-dtlanc

    WHERE nrpres = /pws/zycie026-nrpres.

ENDFORM.

FORM ver_rateio.

...

 

 

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

Modificações efetuadas em REPS /PWS/MZYCI007TOP

 

...

 

* >> Início da inclusão:

DATA: BEGIN OF itab_zycit481 OCCURS 0.

        INCLUDE STRUCTURE /pws/zycit481.

DATA: END OF itab_zycit481.

DATA: BEGIN OF itab_cta_481 OCCURS 0.

        INCLUDE STRUCTURE /pws/zygle316.

DATA:   vltot  LIKE /PWS/ZYCIE183-lancamento.

DATA:   ebeln  LIKE ekkn-ebeln.

DATA:   ebelp  LIKE ekkn-ebelp.

DATA:   codigo LIKE /pws/zycit481-codigo.

DATA: END OF itab_cta_481.

DATA: BEGIN OF itab_cta_481_aux OCCURS 0.

        INCLUDE STRUCTURE /pws/zygle316.

DATA:   vltot  LIKE /PWS/ZYCIE183-lancamento.

DATA:   codigo LIKE /pws/zycit481-codigo.

DATA: END OF itab_cta_481_aux.

 

data:

      v_tpdesp       LIKE /pws/zycit019-tpdesp,

      v_tpdesp2      LIKE /pws/zycit019-tpdesp.

* << Fim da inclusão

 

data: end of common part.

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

Modificações efetuadas em TABL /PWS/ZYCIT481

 

CRIAÇÃO DA TABELA /PWS/ZYCIT481

 

 

GERADOR DE ATUALIZAÇÃO DE TABELA

 

 

Grupo de autorização ZYCE   pw.CE - Grp. Autor.

Objeto autorização   S_TABU_DIS

Grupo de funções     /PWS/ZYCIGF1

Cl.desenvolvimento   /PWS/ZYCI          pw.CE - Documentação Importação

 

Ctg.atualização

 

Nº tela atualização  Tela de síntese      481

                     Tela individual      0

 

 

Rotina de registro    (X) Rotina de Registro Standard

                      (_) Rotina de Registro Individual (ou nenhuma)

Código de ajuste      Ajustável automaticamente

 

 

 

 

 

Tabela transparente /PWS/ZYCIT481

Descrição Breve     CI - Despesas a Creditar

 

 

Opções Técnicas

 

Tipo de Dados: APPL0

Categor. Tamanho: 0

 

 

CARACTS

 

Classe desenvolvimento /PWS/ZYCI

Idioma Original        PT

Categoria de Tabela    Tabela Transparente

Classe de Entrega      A Tabela de Aplicação (dados mestre e de movimento)

 

 

CAMPOS

 

Campos Chv Inic   Tp Campo       Categoria DA  Cmpr   Casa Dec  Tabela Verif.  Descrição Breve

MANDT    X   X     MANDT         CLNT          3       0        T000           Mandante

BUKRS    X   X     BUKRS         CHAR          4       0        T001           Empresa

LAND1    X   X     LAND1         CHAR          3       0        T005           Código do país

REGIO    X   X     REGIO         CHAR          3       0        T005S          Região (país, estado,

província, condado)

CODMOD   X   X     /PWS/ZYCIL090  CHAR         1       0                       GL - Código de

Módulo.

TPDESP   X   X     /PWS/ZYCIL036  CHAR         3       0                       GL - Tipo de Despesa

CODIGO   X   X     /PWS/ZYCIL089  CHAR         6       0        /PWS/ZYCIT029  GL - Código.

DESCR              /PWS/ZYCIL037  CHAR         35      0                       GL - Descrição da

Despesa

ALIQUOTAS          J_1BTXRATE      DEC         6       2                       Taxa de imposto

 

 

CAMPOS MOEDAS/QUANT.

 

Campos          Chv  TpCampo        Tabela verificação  Tabela valores  Tabela referência  Cpo.ref.

MANDT            X    MANDT          T000                T000

BUKRS            X   BUKRS          T001                T001

LAND1            X   LAND1          T005                T005

REGIO            X   REGIO          T005S               T005S

CODMOD           X   /PWS/ZYCIL090

TPDESP           X   /PWS/ZYCIL036

CODIGO           X   /PWS/ZYCIL089  /PWS/ZYCIT029

DESCR                /PWS/ZYCIL037

ALIQUOTAS            J_1BTXRATE

 

 

 

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

Modificações efetuadas em TRAN /PWS/ZYCIT481

 

 

 

CÓDIGO DE TRANSAÇÃO: /PWS/ZYCIT481

CL. DESENVOLVIMENTO: /PWS/ZYCI

TEXTO TRANSAÇÃO: CI - Despesas a Creditar

 

ATRIBUTOS DA TRANSAÇÃO

TEXTO BREVE: CI - Despesas a Creditar

 

OBJETO DE EXECUÇÃO

(_) - TRANSAÇÃO C/ PARÂMETROS (TRANSAÇÃO DE PARÂMETROS)

 

TEXTO DA TRANSAÇÃO: ______________________________________________

 

VALOR PROPOSTO PARA

(X) - TRANSAÇÃO SM30 (X) - OMITIR 1ºTELA

(_) - TELA      0

DO POOL MÓDULOS ___________________________

 

CLASSIFICAÇÃO

 

(_) - HERDAR CARACTERÍSTICAS GUI

 

CLASSIFICAÇÃO DE TRANSAÇÃO:

(X) - TRANSAÇÃO PROFESSIONAL USER

(_) - TRANSAÇÃO EASY WEB      SERVIÇO: ___________________________

 

CAPACIDADE GUI:

(X) SAP GUI PARA HTML

(X) SAP GUI PARA JAVA

(X) SAP GUI PARA WINDOWS

 

VALORES PROPOSTOS

NOME DO CAMPO DA TELA              VALOR

VIEWNAME                           /PWS/ZYCIT481

UPDATE_LTD                         X

 

 

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

Modificações efetuadas em FUGR /PWS/ZYCIGF1

 

Gerar a visão de atualização da Tabela /PWS/ZYCIT481