Application Development and Automation 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: 
Read only

Reading SAP buffer

AntonPierhagen
Active Participant
0 Likes
964

hi all

I've got a question. During a transaction an function module is started which i had created.

The function module is started before the data is saved. So, before a commit.

I had heard that before the data is committed to the database, you can read all this data.

All the data which is in the transaction. And this data should be in the so called SAP BUFFER.

But, how do you read it? En does anyone has more information about that?

Kindly hear from you!

Anton Pierhagen

1 ACCEPTED SOLUTION
Read only

Clemenss
Active Contributor
0 Likes
765

Hi AntonPierhagen2,

this just means that within the current processing step, all database changes done using UPDATE/INSERT will be visible to a subsequent SELECT in this processing step. This is no real advantage as usually the program knows what database changes it does.

But all other programs/processes will see the database changes after they are committed to the database.

This is the basic concept of database consistency: If a Type E A or X Error occurs, all changes are rolled back.

Note: An implicit database commit occurs after every processing step. In online programs this means that as soon as the program waits for user input (screen processing), calls an RFC module or receives results from an RFC call or just after executing the last program statement the database commit is done - no rollback after this.

See documentation [SAP LUW|http://help.sap.com/abapdocu_702/en/abapcommit.htm] to shed some light on this.

Regards,

Clemens

Link Edited by: Clemens Li on Jan 26, 2011 2:59 PM

2 REPLIES 2
Read only

Clemenss
Active Contributor
0 Likes
766

Hi AntonPierhagen2,

this just means that within the current processing step, all database changes done using UPDATE/INSERT will be visible to a subsequent SELECT in this processing step. This is no real advantage as usually the program knows what database changes it does.

But all other programs/processes will see the database changes after they are committed to the database.

This is the basic concept of database consistency: If a Type E A or X Error occurs, all changes are rolled back.

Note: An implicit database commit occurs after every processing step. In online programs this means that as soon as the program waits for user input (screen processing), calls an RFC module or receives results from an RFC call or just after executing the last program statement the database commit is done - no rollback after this.

See documentation [SAP LUW|http://help.sap.com/abapdocu_702/en/abapcommit.htm] to shed some light on this.

Regards,

Clemens

Link Edited by: Clemens Li on Jan 26, 2011 2:59 PM

Read only

0 Likes
765

thanks!