Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

how to trace change of field in SM30 Table maintenance generator

Former Member
0 Kudos

hi,

i have a SM30-view. In SE11 i have the possibility to use events in table maintenance generator. (under Modification -> Events in the menu).

There i have the different Table maintenance dialog events (01, 02, etc...........).

No i want to do the following:

i want to know when a specific field in the table is changed after saving the data in SM30.

how can i handle this ? which event i have to use ?

br, Martin

4 REPLIES 4

former_member189779
Active Contributor
0 Kudos

Hi,

Check http://scn.sap.com/docs/DOC-24962

Alternatively you can also create change objects.

create a change object definition via transaction SCDO and use generated FM or include in your transaction (fill change document object tables CDHDR/CDPOS)

0 Kudos

hi,

thank you for the link. but in the blog i can't find the info of HOW i know that a specific field has changed ?

and i can't use SCDO. the problem is that i have to trigger a new programm as soon as the update of the field happens. i have to do it in the same moment.

0 Kudos

You have an internal table called total[] whose definition is something like

data : begin of total occurs 0.

include structure <your z-table>.

include structure VIMFLAGTAB.

data : end of total.

Now in VIMFLAGTABLE you have something called action. it can have the following values

N = New entry

U = Updated entry

D = Deleted entry

X = Deleted new entry
space = no change

If you are putting some code in you event then at this point of time the database change is not done.

You can select the data from your data base table  for entries in total which have action 'U'.

You can compare the  fields and determine which fields have changed.

0 Kudos

In The control record mentioned in the blog you will have field old value. You need to read from this table and comapre the data from runtime before save.