Criação de LOG de Modificações em SM30
%icardo &errella –
Delivery Center Brail ! 0"#$013
1
Criação de LOG de Modificações em SM30 Sumário 1' &asso – (a)ela *++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 $' &asso – Criação de SM30 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++++++++++++++ , 3' &asso – Criação do O)-eto de Doc.mento de Modificação +++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++++++++++++++++++++ / ' &asso &a sso – lteração de (ela da SM30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++ 11 ,' &asso – Criação de 2ventos na SM30 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1/ /' &asso – Criação de Stat.s G4 da (ela de t.aliação +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ $$ 5' &asso – Definição do Stat.s G.i na SM30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ $, "' &asso – Codificação de (ela +++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++++++++++++++++++++++++++++++++++++++++ $5 6' &asso – 7is.aliando .m LOG de Modificações +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ $"
$
Criação de LOG de Modificações em SM30 8o S& 9 :oss;vel criar al<.mas rotinas :ara =.e se
de at.aliação ?SM30@+ A.al=.er alteração incl.são e deleção de re
1º Passo – Tabela Z 8este eEem:lo .saremos a se<.inte ta)elaF
&ara =.e a
3
Criação de LOG de Modificações em SM30
&ara o eEem:lo =.e iremos .tiliar s eEiste .m cam:o cave com elemento de dados *2DIM(2%4L+ Caso o elemento de dados =.e fa :arte da cave da ta)ela -J :oss.a esta o:ção não 9 necessJrio criar .m novo 2lemento de Dados caso contrJrio acesse a transação S211 e altere esta informação+
Criação de LOG de Modificações em SM30 2º Passo – Criação de SM30 Cria a visão de at.aliação da ta)ela normalmenteF
,
Criação de LOG de Modificações em SM30 3º Passo – Criação do Objeto de Doume!to de Modi"iação cesse a transação SCDO ?2Ei)ir o)-etos o)-etos doc+modificação@ e cli=.e no Botão CriarF
4nforme o nome do O)-eto a ser criado e cli=.e em vançarF 8omenclat.raF *OBKMOI
Caso a mensa
/
Criação de LOG de Modificações em SM30
8a tela Se<.inte informe os dados conforme fi<.ra a)aiEoF
Certifi=.e!se de marcar as o:ções destacadas em amarelo na fi<.ra acima+ Cli=.em em 4nserir 2ntradas+ 8a tela a se<.ir 7J em tilitJrios ! Gerar &ro<+ t.ali+
5
Criação de LOG de Modificações em SM30
Caso a mensa
&reenca o Gr.:o de H.nções e cli=.e em GerarF Caso .tilie o mesmo
S.
"
Criação de LOG de Modificações em SM30
6
Criação de LOG de Modificações em SM30 :s Gerar o se<.inte lo< 9 mostrado+
Cli=.e em SL7% e saia da transação+ 8esta eta:a foi criado o md.lo de f.nção =.e serJ res:onsJvel :or re
10
Criação de LOG de Modificações em SM30 #º Passo – $lteração de Tela da SM30 trav9s da S2, ?O)-etos Gerados@ acesse a vie> de at.aliação da ta)ela+ 7J em m)iente!Modificação!(elas de at.aliação
&osicione o C.rsor na (ela e dN 2nterF
11
Criação de LOG de Modificações em SM30
1$
Criação de LOG de Modificações em SM30 4nsira as se<.intes linas nos :ontos destacadosF
:enas Salve Salve a (ela+
13
Criação de LOG de Modificações em SM30 cesse novamente a 7ie> atrav9s da S2, s =.e neste momento em modo 24B4PQO+
cesse novamente a tela anteriormente acessada atrav9s do men. m)iente!Modificação!(elas m)iente!Modificação!( elas de at.aliação
DN .m d.:lo cli=.e em .m dos md.los inseridos no cdi
Sim 4nsira o nome da incl.de onde serão criados os novos md.los e dN OR+
1
Criação de LOG de Modificações em SM30
4ncl.a os se<.intes md.los e tive o Cdi
IMPORTANTE: Certifique-se Certifique- se de ativar, o INCLUDE criado, a TELA aterada e o !ru"o de #u$%&es'
1,
Criação de LOG de Modificações em SM30 %º Passo – Criação de &'e!tos !a SM30 cesse novamente a 7ie> atrav9s da S2, em modo de Modificação+ 7J no men. m)iente!Modificação!oras m)iente!Modificação!oras
Cli=.e em 2ntradas 8ovas e insira as se<.intes rotinasF
Cli=.e em salvar e em se<.ida cli=.e no Botão 2ditar indicado na fi<.ra ac ima+ 1/
Criação de LOG de Modificações em SM30 4nsira o nome da incl.de onde serão criados as novas rotinas e dN OR+
4ncl.a as d.as novas rotinas conforme a)aiEoF
tive o Cdi
15
Criação de LOG de Modificações em SM30 cesse a 4ncl.de (O& :ara declaração das variJveis necessJriasF
Declare as se<.intes variJveisF
YZTABELA do exemplo utilizado.
Salve a tive o incl.de+
1"
Criação de LOG de Modificações em SM30 7olte ao incl.de com as d.as rotinas criadas ?LOGIMOD4H e LOGID2L@ 4ncl.a o cdi
*Sseleciona tabela com chave completa SELECT * FROM ztabela INTO TABLE it_ztabela FOR ALL ENTRIES IN it_newreg WHERE material
EQ it_newregit_newreg-material. material .
* Gera log de modificação. LOOP AT it_newreg INTO wa_newreg. wa_newreg. tabix = sysy-tabix. tabix.
*lê tabela com chave completa CLEAR wa_ztabela. wa_ztabela . READ TABLE it_ztabela INTO wa_ztabela WITH KEY material = wa_newre g-material. material. IF wa_ztabela IS INITIAL. INITIAL. wa_newregwa_newreg-kz = 'I' 'I'. . APPEND wa_newreg TO it_oldreg. it_oldreg. ELSE. ELSE .
* Gera chave com registro antigo APPEND wa_ztabela TO it_oldreg. it_oldreg. ENDIF. ENDIF . MODIFY it_newreg FROM wa_newreg INDEX tabix. tabix.
*Monta Chave da tabela para a variável wa_cdtxt-teilobjid CONCATENATE wa_newregwa_newreg-mandt wa_newregwa_newreg-material INTO wa_cdtxtwa_cdtxt -teilobjid. teilobjid. wa_cdtxtwa_cdtxt-updkz = wa_newregwa_newreg-kz. kz. APPEND wa_cdtxt TO it_cdtxt. it_cdtxt. ENDLOOP. ENDLOOP .
*Gravação no LOG CLEAR: CLEAR : wacdtxt, wacdtxt, waoldreg010, waoldreg010, wanewreg010. wanewreg010.
16
Criação de LOG de Modificações em SM30 user = sysy-uname. uname. utime = sysy-uzeit. uzeit. udate = sysy-datum. datum.
*Função Criada Através do Objeto de Modificação CALL FUNCTION 'ZOBJMO_ZTABELA_WRITE_DOCUMENT' EXPORTING objectid
= 'ZTABELA'
tcode
= sysy-tcode
utime
= utime
udate
= udate
username
= user
object_change_indicator
=
upd_icdtxt_zobjmo_ztabela
=
upd_ztabela
=
TABLES icdtxt_zobjmo_ztabela
= it_cdtxt
xztabela
= it_newreg
yztabela
= it_oldreg
. REFRESH: REFRESH : it_oldreg, it_oldreg , it_newreg, it_newreg, it_cdtxt. it_cdtxt. ENDFORM. ENDFORM .
$0
Criação de LOG de Modificações em SM30 4nsira o cdi
Salve e tive o 4ncl.de+
$1
Criação de LOG de Modificações em SM30 (º Passo – Criação de Status )*+ da Tela de $tuali,ação 7erifi=.e o :ro
cesse a transação S21 informe o :ro
$$
Criação de LOG de Modificações em SM30
4nforme o :ro
:s a c:ia informe o S((S defa.lt 2LG incl.indo o )otão de vis.aliação do LOG+
$3
Criação de LOG de Modificações em SM30
Crie o Botão coforme a)aiEo+
$
Criação de LOG de Modificações em SM30 %e:ita a o:eração :ara o S((S G4 ESLG: Ao inserir o botão HIST e dar Enter, clique no botão funcionalidade do mesmo.
para ativar a
-º Passo – De"i!ição do Status )ui !a SM30 cesse novamente a 7ie> atrav9s da S2, em modo de Modificação+ 7J no men. m)iente!Modificação!oras m)iente!Modificação!oras
Cli=.e em 2ntradas 8ovas e insira a se<.inte rotina ?&ro
$,
Criação de LOG de Modificações em SM30
$/
Criação de LOG de Modificações em SM30 .º Passo – Codi"iação de Tela 2ntre na tela de at.aliação da 7ie> e incl.a a l
Module
CONST_MODIF
INPUT
*&--------------------------------------------------------------------* *
text
*---------------------------------------------------------------------* MODULE const_modif INPUT INPUT. . CLEAR wa_newreg. wa_newreg. ztabelaztabela-user_modif = sysy-uname. uname. ztabelaztabela-date_modif = sysy-datum. datum. ztabelaztabela-hour_modif = sysy-uzeit. uzeit. wa_newreg
= ztabela. ztabela.
wa_newregwa_newreg-kz
= 'U' 'U'. .
APPEND wa_newreg TO it_newreg. it_newreg. ENDMODULE. ENDMODULE .
" CONST_MODIF
INPUT
*&--------------------------------------------------------------------* *&
Module
HISTORICO_MODIF HISTORICO_MO DIF
INPUT
*&--------------------------------------------------------------------* *
text
*---------------------------------------------------------------------* MODULE historico_modif INPUT INPUT. . CHECK sysy-ucomm EQ 'HIST' 'HIST'. . SET PARAMETER ID 'CDO' FIELD 'ZOBJMO_ZTABELA' . SET PARAMETER ID 'CDI' FIELD 'ZTABELA' 'ZTABELA'. . SUBMIT rsscd100 AND RETURN. RETURN. ENDMODULE. ENDMODULE .
" HISTORICO_MO HISTORICO_MODIF DIF
INPUT
$5
Criação de LOG de Modificações em SM30 /º Passo – isuali,a!do um O) de Modi"iaçes
(odo o lo< 9 mostrado em .m relatrio conforme fi<.ra a)aiEo
$"