Módulo: DOC. IMPORTAÇÃO
Funcionalidade: Prestação de Contas
Data/Hora da Publicação: 18/05/2010 00:00:00
Data/Hora Última Alteração: 10/11/2011 13:16:50
Descrição da Nota: DESENVOLVIMENTO DA PRESTAÇÃO DE CONTAS PARA AMÉRICA LATINA.
Sintoma
Desenvolvimento da prestação de contas para América latina.
Solução
Desenvolvimento da prestação de contas para América latina.
8.0
Produto:
Nota
Descrição
Informações Complementares
----------------------------------------------------------------------------------------------------
Nota Número 10161 Data: 18/05/2010 Hora: 11:33:00
----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------
Nota Número : 10161
Categoria : Melhoria
Prioridade : Média
Versão PW.CE : 8.0
Pacote : 00003
Agrupamento : 00022
----------------------------------------------------------------------------------------------------
Referência às notas relacionadas:
Número - Ordem - Versão - Pacote - Descrição Breve
09507 - 00001 - 8.0 - 00002 - VALOR DA PRESTAÇÃO CONTAS ESTA SENDO EXIBIDO ERRADO.
----------------------------------------------------------------------------------------------------
DESENVOLVIMENTO DA PRESTAÇÃO DE CONTAS PARA AMÉRICA LATINA.
----------------------------------------------------------------------------------------------------
Palavras Chave:
PRESTAÇÃO - CONTAS - AMÉRICA - LATINA - CONTABILIZAÇÃO - MIRO
/PWS/SAPMZYCI004 - /PWS/SAPMZYCI001 - /PWS/ZYCIR012 - /PWS/ZYCIR103
----------------------------------------------------------------------------------------------------
Objetos da nota:
REPS /PWS/MZYCI001I01
REPS /PWS/MZYCIR012
REPS /PWS/ZYCIR012
REPS /PWS/ZYCIR103
SHI3 /PWS/ZYCIAL
SHI6 /PWS/ZYCIAL
TABD /PWS/ZYCIE026
TABD /PWS/ZYCIT026
TABL /PWS/ZYCIE506
TABL /PWS/ZYCIT506
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCI001I01
...
IF v_cont1 > 1.
MESSAGE i015 WITH text-226 text-228.
EXIT.
ENDIF.
SET PARAMETER ID '/PWS/ZYCIP003' FIELD v_despach.
SET PARAMETER ID '/PWS/ZYCIP001' FIELD v_nrseq.
IF sy-tcode <> '/PWS/ZYCI001_E'.
PERFORM aviso_prestacao.
* >> Início da inclusão: MODULE USER_COMMAND_0050
READ TABLE itab_zycit477 WITH KEY land = v_land1.
IF sy-subrc EQ 0.
PERFORM valida_trans USING '/PWS/ZYCI004' 'skip'.
ELSE.
* << Fim da inclusão
PERFORM valida_trans USING '/PWS/ZYCI007' 'skip'.
* >> Início da inclusão: MODULE USER_COMMAND_0050
ENDIF.
* << Fim da inclusão
ELSE.
PERFORM aviso_prestacao.
* >> Início da inclusão: MODULE USER_COMMAND_0050
READ TABLE itab_zycit477 WITH KEY land = v_land1.
IF sy-subrc EQ 0.
PERFORM valida_trans USING '/PWS/ZYCI004_E' 'skip'.
ELSE.
* << Fim da inclusão
PERFORM valida_trans USING '/PWS/ZYCI007_E' 'skip'.
* >> Início da inclusão: MODULE USER_COMMAND_0050
ENDIF.
* << Fim da inclusão
ENDIF.
WHEN 'CUSTO'.
SET PARAMETER ID '/PWS/ZYCIP001' FIELD /pws/zycie001-nrseq.
PERFORM valida_trans USING '/PWS/ZYCI010' 'skip'.
WHEN 'ENCERRA'.
READ TABLE itab_zycit477 WITH KEY land = v_land1.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/MZYCIR012
...
FORM batch_prestacao. "#EC CALLED )
* >> Início da inclusão: FORM BATCH_PRESTACAO
IF t_dados-selkz = 'X'.
* << Fim da inclusão
CLEAR v_nrseq1.
SET PARAMETER ID '/PWS/ZYCIP001' FIELD v_nrseq1.
* >> Início da inclusão: FORM BATCH_PRESTACAO
PERFORM bdc_screen USING '/PWS/SAPMZYCI004' '0400'.
PERFORM bdc_field USING:
'BDC_CURSOR' '/PWS/ZYCIE026-NRPRES',
'/PWS/ZYCIE026-NRPRES' t_dados-belnr,
'/PWS/ZYCIE026-DESPACH' t_dados-xblnr.
PERFORM bdc_field USING:
'BDC_CURSOR' '/PWS/ZYCIE026-STATUS',
'/PWS/ZYCIE026-STATUS' t_dados-agkoa,
'BDC_OKCODE' '/00'.
PERFORM bdc_screen USING '/PWS/SAPMZYCI004' '0500'.
PERFORM bdc_field USING:
'BDC_CURSOR' '/PWS/ZYCIE026-NRPRES(01)',
'BDC_OKCODE' '/CS'.
PERFORM bdc_screen USING '/PWS/SAPMZYCI004' '0050'.
PERFORM bdc_field USING:
'BDC_OKCODE' 'ERRO'.
CLEAR itab_msg.
v_transacao = '/PWS/ZYCI004_L'.
ELSE.
CLEAR v_nrseq1.
SET PARAMETER ID '/PWS/ZYCIP001' FIELD v_nrseq1.
* << Fim da inclusão
PERFORM bdc_screen USING '/PWS/SAPMZYCI007' '0400'.
PERFORM bdc_field USING:
'BDC_CURSOR' '/PWS/ZYCIE026-NRPRES',
'/PWS/ZYCIE026-NRPRES' t_dados-belnr,
'/PWS/ZYCIE026-DESPACH' t_dados-xblnr.
PERFORM bdc_field USING:
'BDC_CURSOR' '/PWS/ZYCIE026-STATUS',
'/PWS/ZYCIE026-STATUS' t_dados-agkoa,
'BDC_OKCODE' '/00'.
PERFORM bdc_screen USING '/PWS/SAPMZYCI007' '0500'.
PERFORM bdc_field USING:
'BDC_CURSOR' '/PWS/ZYCIE026-NRPRES(01)',
'BDC_OKCODE' '/CS'.
PERFORM bdc_screen USING '/PWS/SAPMZYCI007' '0050'.
PERFORM bdc_field USING:
'BDC_OKCODE' 'ERRO'.
CLEAR itab_msg.
v_transacao = '/PWS/ZYCI007_L'.
* >> Início da inclusão: FORM BATCH_PRESTACAO
ENDIF.
* << Fim da inclusão
v_update = 'S'.
v_msgid = 'W5'.
v_msgno = '078'.
v_mode = 'E'.
PERFORM call_transaction TABLES itab_msg
itab_bdc
t_zycit032
t_dados
USING v_transacao
v_mode
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCIR012
...
itab_zycbe033-agkoa.
SELECT * FROM /pws/zycit026
INTO TABLE itab_zycit026a
WHERE nrseq EQ i_nrseq
AND docfat EQ v_doc.
IF sy-subrc = 0.
READ TABLE itab_zycit026a WITH KEY docfat = v_doc.
IF sy-subrc = 0.
MOVE: itab_zycit026a-nrpres TO itab_zycbe033-belnr,
itab_zycit026a-status TO itab_zycbe033-agkoa.
* >> Início da inclusão: FORM CHAMA_PRESTACAO
IF NOT itab_zycit026a-iva IS INITIAL.
t_dados-selkz = 'X'.
* << Fim da inclusão
ENDIF.
* >> Início da inclusão: FORM CHAMA_PRESTACAO
ENDIF.
* << Fim da inclusão
ELSE.
SELECT * FROM /pws/zycit026
INTO TABLE itab_zycit026a
WHERE nrseq EQ i_nrseq
AND docomp EQ v_doc.
IF sy-subrc = 0.
READ TABLE itab_zycit026a WITH KEY docomp = v_doc.
IF sy-subrc = 0.
MOVE: itab_zycit026a-nrpres TO itab_zycbe033-belnr,
itab_zycit026a-status TO itab_zycbe033-agkoa.
* >> Início da inclusão: FORM CHAMA_PRESTACAO
IF NOT itab_zycit026a-iva IS INITIAL.
t_dados-selkz = 'X'.
ENDIF.
* << Fim da inclusão
ENDIF.
ENDIF.
ENDIF.
MOVE: itab_zycbe033-belnr TO t_dados-belnr,
itab_zycbe033-agkoa TO t_dados-agkoa.
PERFORM batch_prestacao.
ENDFORM.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em REPS /PWS/ZYCIR103
...
it_zycit026-frggr TO itab_libera-frggr,
it_zycit026-frgsx1 TO itab_libera-frgsx1,
it_zycit026-frgsx2 TO itab_libera-frgsx2,
it_zycit026-frgsx3 TO itab_libera-frgsx3,
it_zycit026-frgsx4 TO itab_libera-frgsx4,
it_zycit026-frgsx5 TO itab_libera-frgsx5,
it_zycit026-frgzu TO itab_libera-frgzu,
it_zycit026-estrat TO itab_libera-estrat,
it_zycit026-waersmu TO itab_libera-waers,
it_zycit026-dtvencto TO itab_libera-data.
* >> Início da inclusão: FORM EXECUTA_LIBERACAO
IF it_zycit026-iva NE space.
MOVE: it_zycit026-totdep TO itab_libera-valor .
ENDIF.
* << Fim da inclusão
SELECT SINGLE * FROM /pws/zyglt340 WHERE codmod = 'D'
AND func = 'PC'
AND estrat = 'X'.
IF sy-subrc EQ 0.
IF /pws/zyglt340-dif NE 'X'.
MOVE it_zycit026-totdepme TO itab_libera-valor.
* >> Início da inclusão: FORM EXECUTA_LIBERACAO
IF it_zycit026-iva NE space.
MOVE: it_zycit026-totdep TO itab_libera-valor .
ENDIF.
* << Fim da inclusão
ELSE.
* >> Início da inclusão: FORM EXECUTA_LIBERACAO
itab_libera-valor = it_zycit026-vldfme.
IF it_zycit026-iva NE space.
* << Fim da inclusão
itab_libera-valor = it_zycit026-vldfme.
* >> Início da inclusão: FORM EXECUTA_LIBERACAO
ENDIF.
* << Fim da inclusão
IF it_zycit026-vldf < 0.
...
...
FORM aprova_doc.
CLEAR: t_dados-belnr,
t_dados-agkoa.
MOVE: it_zycit026a-nrpres TO t_dados-belnr,
it_zycit026a-status TO t_dados-agkoa,
it_zycit026a-despach TO t_dados-xblnr.
* >> Início da inclusão: FORM APROVA_DOC
SELECT SINGLE * FROM /pws/zycit026
WHERE nrpres = it_zycit026a-nrpres. "#EC CI_NOFIRST
IF NOT /pws/zycit026-iva IS INITIAL.
CLEAR v_nrseq1.
SET PARAMETER ID '/PWS/ZYCIP006' FIELD v_nrseq1.
PERFORM bdc_screen USING '/PWS/SAPMZYCI004' '0400'.
PERFORM bdc_field USING:
'BDC_CURSOR' '/PWS/ZYCIE026-NRPRES',
'/PWS/ZYCIE026-NRPRES' t_dados-belnr,
'/PWS/ZYCIE026-DESPACH' t_dados-xblnr,
'BDC_CURSOR' '/PWS/ZYCIE026-STATUS',
'/PWS/ZYCIE026-STATUS' t_dados-agkoa,
'BDC_CURSOR' '/PWS/ZYCIE026-NFSERV',
'/PWS/ZYCIE026-NFSERV' ' ',
'BDC_CURSOR' '/PWS/ZYCIE026A-NRPRES',
'/PWS/ZYCIE026A-NRPRES' ' ',
'/PWS/ZYCIE026A-DESPACH' ' ',
'BDC_CURSOR' '/PWS/ZYCIE026-NFSERV',
'/PWS/ZYCIE026-NFSERV' ' ',
'BDC_OKCODE' '=ENTER'.
PERFORM bdc_screen USING '/PWS/SAPMZYCI004' '0500'.
PERFORM bdc_field USING:
'BDC_CURSOR' '/PWS/ZYCIE026-NRPRES(01)',
'BDC_OKCODE' '/CS'.
PERFORM bdc_screen USING '/PWS/SAPMZYCI004' '0050'.
PERFORM bdc_field USING:
'BDC_OKCODE' '=APROVA'.
PERFORM bdc_screen USING '/PWS/SAPMZYCI004' '0050'.
PERFORM bdc_field USING:
'BDC_OKCODE' '=LEAV'.
CLEAR itab_msg.
v_transacao = '/PWS/ZYCI004_A'.
ELSE.
* << Fim da inclusão
CLEAR v_nrseq1.
SET PARAMETER ID '/PWS/ZYCIP006' FIELD v_nrseq1.
PERFORM bdc_screen USING '/PWS/SAPMZYCI007' '0400'.
PERFORM bdc_field USING:
'BDC_CURSOR' '/PWS/ZYCIE026-NRPRES',
'/PWS/ZYCIE026-NRPRES' t_dados-belnr,
'/PWS/ZYCIE026-DESPACH' t_dados-xblnr,
'BDC_CURSOR' '/PWS/ZYCIE026-STATUS',
'/PWS/ZYCIE026-STATUS' t_dados-agkoa,
'BDC_CURSOR' '/PWS/ZYCIE026-NFSERV',
...
...
'BDC_CURSOR' '/PWS/ZYCIE026-NRPRES(01)',
'BDC_OKCODE' '/CS'.
PERFORM bdc_screen USING '/PWS/SAPMZYCI007' '0050'.
PERFORM bdc_field USING:
'BDC_OKCODE' '=APROVA'.
PERFORM bdc_screen USING '/PWS/SAPMZYCI007' '0050'.
PERFORM bdc_field USING:
'BDC_OKCODE' '=LEAV'.
CLEAR itab_msg.
v_transacao = '/PWS/ZYCI007_A'.
* >> Início da inclusão: FORM APROVA_DOC
ENDIF.
* << Fim da inclusão
v_update = 'S'.
v_msgid = 'W5'.
v_msgno = '078'.
v_mode = 'N'.
PERFORM call_transaction TABLES itab_msg
itab_bdc
t_zycit032
t_dados
USING v_transacao
v_mode
v_update
v_msgid
v_msgno
CHANGING v_nrmsg.
SELECT SINGLE * FROM /pws/zycit026
* >> Início da exclusão: FORM APROVA_DOC
WHERE nrpres = it_zycit026a-nrpres. "#EC CI_NOFIRST
* << Fim da exclusão
* >> Início da inclusão: FORM APROVA_DOC
WHERE nrpres = it_zycit026a-nrpres. "#EC CI_NOFIRST
* << Fim da inclusão
IF sy-subrc EQ 0.
MOVE: /pws/zycit026-docfat TO it_zycit026a-docfat,
/pws/zycit026-docomp TO it_zycit026a-docomp,
/pws/zycit026-status TO it_zycit026a-status .
MODIFY it_zycit026a INDEX v_tabix.
IF /pws/zycit026-status = 'I'.
v_message = 'X'.
READ TABLE itab_msg INDEX 1.
MOVE: /pws/zycit026-nrseq TO itab_message-nrseq,
/pws/zycit026-nrpres TO itab_message-nrdoc,
...
...
it_zycit026-despach TO itab_dados-despach ,
it_zycit026-nfserv TO itab_dados-nfserv ,
it_zycit026-totdepme TO itab_dados-valor ,
it_zycit026-waersmu TO itab_dados-waers ,
it_zycit026-frgsx1 TO itab_dados-frgsx1 ,
it_zycit026-frgsx2 TO itab_dados-frgsx2 ,
it_zycit026-frgsx3 TO itab_dados-frgsx3 ,
it_zycit026-frgsx4 TO itab_dados-frgsx4 ,
it_zycit026-frgsx5 TO itab_dados-frgsx5 ,
it_zyglt343-aprova TO itab_dados-aprova .
* >> Início da inclusão: FORM CARREGA_DADOS
IF it_zycit026-iva NE space.
MOVE: it_zycit026-totdep TO itab_dados-valor .
ENDIF.
* << Fim da inclusão
SELECT SINGLE name1 INTO itab_dados-name1
FROM lfa1 WHERE lifnr = it_zycit026-despach.
CALL FUNCTION '/PWS/ZYCI_ENQUEUE_ZYCIR103'
EXPORTING
mandt = sy-mandt
tipo = 'P'
nrseq = itab_dados-nrseq
EXCEPTIONS
foreign_lock = 1
system_failure = 2.
...
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABD /PWS/ZYCIE026
Nome campo Elem.dados Tab.verif. N CtDt Comp.
...
RETERIR CHAR1 CHAR 1
FORNDES CHAR1 CHAR 1
NRSEQORI /PWS/ZYCIL001 CHAR 10
* >> Início da inclusão:
IVA /PWS/ZYCIL500 T007A CHAR 2
IMPOSTO XFLAG CHAR 1
BELNR_MR1M RE_BELNR CHAR 10
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABD /PWS/ZYCIT026
Nome campo Chv Elem.dados Tab.verif. N CtDt Comp.
...
VLDFME /PWS/ZYCIL093 CURR 13
RETERIR CHAR1 CHAR 1
FORNDES CHAR1 CHAR 1
NRSEQORI /PWS/ZYCIL001 CHAR 10
* >> Início da inclusão:
IVA /PWS/ZYCIL500 CHAR 2
IMPOSTO XFLAG CHAR 1
BELNR_MR1M RE_BELNR CHAR 10
* << Fim da inclusão
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIE506
*Criar tabela /PWS/ZYCIE506
Características gerais:
Nome da tabela /PWS/ZYCIE506
Descrição breve CI - Impostos prestação de contas
Ctg.tabela Estrutura
Campos
Nome campo Elem.dados
.INCLUDE /PWS/ZYCIT506
----------------------------------------------------------------------------------------------------
Modificações efetuadas em TABL /PWS/ZYCIT506
*Criar tabela /PWS/ZYCIT506
Características gerais:
Nome da tabela /PWS/ZYCIT506
Descrição breve CI - IMPOSTOS Prestação de contas
Ctg.tabela Tabela transparente
Arm.bff.permitido
AtualTab.permitida X
Classe de entrega A
Campos:
Nome campo Chv Elem.dados Tab.verif. N CtDt Comp.
MANDT X MANDT CLNT 3
NRPRES X /PWS/ZYCIL134 CHAR 10
NRSEQ X /PWS/ZYCIL001 CHAR 10
TPDESP X /PWS/ZYCIL089 CHAR 6
DESCR /PWS/ZYCIL037 CHAR 35
WAERS WAERS CUKY 5
VLDP WRBTR CURR 13
IVA /PWS/ZYCIL500 CHAR 2