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