on 01-07-2010 3:09 PM
Hi Experts,
I have the following scenario
Data to be picked up from a staging table. Passed onto a RFC. If the RFC is successful/failed the corresponding message needs to be written to the staging table record columns with success or error msg. Then if the RFC call is successful the record picked from staging table needs to be sent to a file and then notify a couple of persons.
Can you guide me on the steps in the BPM?
1. Start
2. Receive data from Staging table. This triggers the BPM process
3. Send data to RFC
4..............
5.----
6----
Bit confused with the steps that need to be followed
Any reference to similar scenarios would be appreciated
Regards,
Kalyan
Your BPM will have below steps:
Receive_Async --> Transformation1 --> Block_With_ExceptionBranch --> Switch{Send_Async1_&_SendAsync2_in_Branch1}
Receive_Async : This step will receive the message from staging table
Transformation1: This step will perform StagingTable_to_RFCReq mapping
Block_With_ExceptionBranch: This will host your send step for RFC....better to include it in a Block so that you can have Exception Branch which will get triggered in case the communication with RFC fails....then a proper exception handling can be implemented.
Now RFC update in SAP is successful/ failure needs to be indicated in the RFC Response/ Error message.....needs to be populated from SAP.
Now once the response comes back from the RFC we need to check it in Switch step (to decide whether it is success or failure)
Now if Success message exists then only Branch1 will be executed.
Branch1 has send step for FILE and for MAIL.....i think I replied to your earlier post how on to configure ACK for File and then send the mail......i hope you were the one!
Transformation steps should be used as and when required.....rest of the steps are illustrated.
Regards,
Abhishek.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Just wondering if i need to use Sync/Aync bridge pattern over here.
No.
Is it applicaple only when sender and receiver are both synchronous applications?
It is applicable (rather used) when one of the end-systems (source or target) does not support synchronous communication while the other system supports.....this may even answer your second doubt.
For more information you can refer the help section which tells you about sync/ async communication......or even SDN.
Regards,
Abhishek.
Hi Abhishek,
Do i need to maintain some kind of counter in the entire process?
In the switch step if the response from the RFC is successful then i would write it to a file. Assuming that the staging table has got 100 records, all RFC calls are successful then i would append the file with the success records. only when the process is complete i need to notify corresponding persons.
Just wondering how his would happen in real time, if send step of file has a successive mail send step. doesn't it send the mail every time a record is written to the file
Regards,
Kalyan
We can place the send mail step outside the switch block but that send mail step needs to be triggered only when i finish processing all the records from staging table
So this means i need to maintain a counter in the entire process which would actually find the total count of records fetched from staging table.
Regards,
Kalyan
User | Count |
---|---|
90 | |
10 | |
10 | |
10 | |
7 | |
7 | |
6 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.