You can run a session with a BAPI/RFC transformation in real time. Run a real-time BAPI/RFC session to call BAPIs that do not change data in the SAP database. For example, you receive a customer order from JMS. You want to get customer address data from SAP in real time and load the customer order data and address data to the target. Create a mapping with a JMS source and BAPI/RFC transformation and configure the session to run in real time.
If you run a real-time session to call BAPIs to write data to SAP, data duplication or inconsistency can occur.
During a real-time BAPI/RFC session, the PowerCenter Integration Service makes a BAPI/RFC call to the SAP system when it reaches a commit interval or flush latency value. When the PowerCenter Integration Service issues a commit, it removes the data from the cache.
Because the PowerCenter Integration Service issues a commit before end of file in a real-time session, verify that the BAPI/RFC call conforms to a transaction boundary. Make sure that the rows intended for a single BAPI/RFC call are in the same transaction. Otherwise, the PowerCenter Integration Service might process data that you intended for a single BAPI/RFC call in different calls.
To configure a real-time BAPI/RFC session, configure the session properties for the source for real time.