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: 

Obtain information from standard program

alejandro_lpez
Contributor
0 Kudos

Hello Everybody

I need to know when the user press the save button in a standard program and so obtain information, but the program doesn't have associated a BAdI or user exit.

is there a different mechanism to interact with a standard program?

thanks,

Alejandro

7 REPLIES 7

Former Member
0 Kudos

Hi Alejandro,

I don't think it is possible to do that without any of the exits you mentioned.

If you let us know which program it is, and also what exactly is that you want to do if you can interact with it, then may be the forum can help you find a way out.

Srinivas

0 Kudos

Hi,

i need to obtain the new information inserted by the user in the transaction OX09 and OAVA, and then save it in a table Z*. The transactions OX09 and OAVA are options from the transaction SPRO.

thanks again,

Alejandro

0 Kudos

Do these tables get updated fairly often at your company?

It looks to me that these are customizing tables that are transportable. What is the reason for writing data to your Z table? Is it for logging of changes? If so, there is functionality to logging the changes of a customizing table. Does your Z table need to know about the changes immediately?

Regards,

Rich Heilman

Message was edited by: Rich Heilman

0 Kudos

Hi,

It looks like you want to track user activity in the storage location maintenance and Evaluation group maintenance.

Both transactions are customizing views and hence are logged. But it has to be turned on by your basis team in the particular client where the changes are made. If it is active, then you can read the changes using the report RSVTPROT and by giving the customizing table that you are maintaining (V_T087 for OAVA and V_T001L for OX09). If you look at the code in this program, you can figure out how the change logs are read and use that logic for your Z table purposes. I am not sure if you still need the Z table if the change log feature is available.

There are function modules (look with pattern DBLOG*) that you can use to obtain the logs.

But if you want to know as soon as the user hits the save button, I don't think it is possible without a system modification(SE54-Events, in that case).

Please let us know.

Srinivas

0 Kudos

Hi,

Yes, there are customizing tables. The reason for writing data to tables Z is that the new values have to send immediately to a non SAP system using a BAPI and replicate the changes in a similar table.

but if is possible to know the changes make to a customizing table, i could find another solution.

thanks,

Alejandro

0 Kudos

In that case, I can see the logic of the BAPI as something like this.

Read the database logs(frequency as close to real time as possible) for the customizing table and determine whether changes are made. If so, then read all the contents of the customizing table and the Z table and make a comparison.

Based on the comparison, insert the delta changes to the Z table.

Hope this helps.

Srinivas

0 Kudos

Here is an alternative logic.

Get all the tables involved in the customizing view(T001L in case of OX09 and T087, T087T in case of OAVA).

Read table DBTABLOG with LOGDATE, LOGTIME after the last runtime and TABNAME = customizing table and the tables involved with the customizing view.

If records found, then the records associated with the base tables of the view contain the key of record(field LOGKEY) and the field OPTYPE has the value U(pdate) or I(nsert) etc.

With the key go the tables and read the records and pass on to your Z table.

Hope this helps.

Srinivas