cancel
Showing results for 
Search instead for 
Did you mean: 

Is a BPM required in my scenario

Former Member
0 Kudos

Hi

I have the following requirement

I have an incoming idoc-XML ( ORDERS05 idoc type ) into my XI server - I need to do a database lookup to pick up a few more additional pieces of information that is missing in the incoming idoc , update the incoming idoc and then post the results onto to a SAP R/3 system using idoc adapter.

If the lookup fails, I need to flag the message as failure and then be able to restart the message.

Do I need to use a BPM for this - or is database lookups enough to achieve the same requirements as explained above ?

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi,

Yes you need not to use BPM.

Yu can do the Lookup to get the data from the SAP R3.

see the below links to get an idea about Lookup

DB lookup - /people/siva.maranani/blog/2005/08/23/lookup146s-in-xi-made-simpler

SOAP Lookup - /people/bhavesh.kantilal/blog/2006/11/20/webservice-calls-from-a-user-defined-function

Lookup - /people/alessandro.guarneri/blog/2006/03/27/sap-xi-lookup-api-the-killer

Also read thru this to get more idea on lookups -

http://help.sap.com/saphelp_nw04/helpdata/en/cf/406642ea59c753e10000000a1550b0

Lookup’s in XI made simpler - /people/siva.maranani/blog/2005/08/23/lookup146s-in-xi-made-simpler

How to check JDBC SQL Query Syntax and verify the query results inside a User Defined Function of the Lookup API -

http://help.sap.com/saphelp_nw04/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm

/people/prasad.illapani/blog/2006/10/25/how-to-check-jdbc-sql-query-syntax-and-verify-the-query-results-inside-a-user-defined-function-of-the-lookup-api

Lookups - /people/morten.wittrock/blog/2006/03/30/wrapping-your-mapping-lookup-api-code-in-easy-to-use-java-classes

Lookups - /people/alessandro.guarneri/blog/2006/03/27/sap-xi-lookup-api-the-killer

Also you can raise an alert this can be use the Lookup call/ throw an Runtime exception to cancel the message procesing

my question is if once you called the lookup to get the data from SAP R3. if it is fail then what is the need of calling second time same query will be executed on R3. unless until if you change the input. i think you got it,

Suppose if you are using Lookup in your mapping then first message it is not having any data from R3,so you can send the alert / runtime exception.

so second message , automatically lookup will be called , but in the same message with the same input what is the call of Lookup??

Regards

Chilla

Former Member
0 Kudos

i think you work without BPM and with BPM but the problem you cant restart within BPM or with out BPM. to restart the error message you need to have report program schedule to trigger restart the error .

so this restart is not possible immedaitely with out manual intervation.

prateek
Active Contributor
0 Kudos

Hi Karthik,

In my opinion, BPm is not required. The data can be very well retreived using DB Lookup at the Mapping step

/people/siva.maranani/blog/2005/08/23/lookup146s-in-xi-made-simpler

Now this data can then be utilized in UDF and the result of DB Lookup can then be used to set ur necessary flags (even if the lookup fails).

Restarting of message can then be performed. Once the XI is up it tries to send the messages in the Queue. There are some standard reports also avilable which restart the messages and sends them.

/people/sap.user72/blog/2005/11/29/xi-how-to-re-process-failed-xi-messages-automatically

Regards,

Prateek