cancel
Showing results for 
Search instead for 
Did you mean: 

How can i do that with SAP XI ?

Former Member
0 Kudos

Bonjour a tous et a toutes!

I am wondering how can i do the following with SAP XI. It is very easy to do it with webMethods (using thier Modeling tool) and with SAP BC (flow service).

Let consider the following (very simple) scenario:

1. A sender sends an XML (PO) document to XI.

2. XI processed it and

3. handed it to (receiver) SAP ERP (IDOC)

If I need (step #2) to:

- Parse the XML schema (see if it’s a valid one) – How do y do that ?

- Introspect the XML PO and if (order amount is > 200$K), I need to get an approval) – How do I do that ?

... and potentially talled the thread up to I get the approval !

Well, I any case where I need to apply (procedural coding) to an inbound document – It seem that I can not do that with BPM ?

Thank in advance for you help!

A+

Accepted Solutions (0)

Answers (3)

Answers (3)

Former Member
0 Kudos

Hi,

As explained by Michal, XI - BPM , we should not use for Business logic due to some performance issues.. any way. see here

I hope , this will be possible with BPM, see the similar kind of link, but change it for your business logic

Reconciliation of Messages in BPM - /people/krishna.moorthyp/blog/2006/04/08/reconciliation-of-messages-in-bpm

Regards

Chilla

Former Member
0 Kudos

Many thank to all for your usefull hints !

Ciao A+

henrique_pinto
Active Contributor
0 Kudos

1. For XML Schema Validation, you will have to develop a simple Java Mapping. Follow this link:

http://help.sap.com/saphelp_nw2004s/helpdata/en/c4/e1343e8c7f6329e10000000a114084/frameset.htm

2. interesting question.

Since ccBPM of XI is developed over BPEL4WS (Business Process Execution Language for Web Services*), you won't have great options to integrate the systems along with people integration. To supply that need, SAP and IBM are working on BPEL4PEOPLE language, but it's not available so far.

So, IMHO, best option would be a BPM with CAF or Workflow integration (those 2 to perform human integration). BPM get PO XML message, perform schema validation (mapping, can be done even b4 BPM), then if value is over X (switch field) send message to CAF or Workflow (asynchronously), which will handle the approving. Once approved, these systems can send message back (asynchronously) to XI, and you can receive it in BPM. To relate sent message with approvation message, use correlation. After approved, you can send it to target system.

Regards,

Henrique.

  • Here, as Web Services, you should consider the generic concept of services offered over your network, in the Service Oriented Architecture definition, and not the SOAP implementation usually related to Web Services.

Former Member
0 Kudos

Hi Henrique,

This is a very good idea to use CAF! Never thought about that, thank for the hint!

BPEL4PEOPLE language ... that is also a good idea!

However, would it be possible to <i></i>integrate<i></i> with SAP workflow directly (which does human integration) ? (RFC / IDOCS) …

A+

henrique_pinto
Active Contributor
0 Kudos

Exactly, just create a RFC in SAP system with workflow which will receive message from XI and process it in workflow. After processed, return to XI through another RFC.

Regards,

Henrique.

MichalKrawczyk
Active Contributor
0 Kudos

Hi,

>>>>However, would it be possible to integrate with SAP workflow directly (which does human integration) ? (RFC / IDOCS) …

not only possible but it's the way to do it - just like I described in my first reply

the idea is to use workflow build in R3 (and r3's objects like PO etc)

this way it can be done very easily and you don't need

to put unnecessary functionnality on XI

Regards,

michal

MichalKrawczyk
Active Contributor
0 Kudos

Bonjour Michel,

>>>>If I need (step #2) to:

- Parse the XML schema (see if it’s a valid one) – How do y do that ?

2 ways:

a) ask the sender to send parsed XMLs - XI does not have message

validation in standard (XI 3.0, 7.0) - next version will have

two kinds of validations (adapter engine and integration engine)

>>>>- Introspect the XML PO and if (order amount is > 200$K), I need to get an approval) – How do I do that ?

ha... this is a nice one but in fact IMHO it's not middleware related!

with business connector many people tend to build

business applications (to accept - DSP pages via mail etc)

but middleware technology should not be used for handling

business applications

<b>so the approach with XI -</b>

XML - XI - IDOC (with PO)

and inside R3 (ERP) <--so inside your business application system

(where you have all appceptance mechanisms) you can

easily use workflow to ask for --> (order amount is > 200$K)

and accept or reject

so you need to see the difference clearly - use XI for message

transfer - use R3 for business applications

the apporach with BC should be the same but I know it's not

as I did the same quite a few times with BC

Regards,

michal

-


<a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

Former Member
0 Kudos

HI Michal,

Thank for your reply. See my comments.

-> Ask the sender to send parsed XMLs - XI does not have message

validation in standard (XI 3.0, 7.0) - next version will have

two kinds of validations (adapter engine and integration engine)

=> SAP BC has a very nice Flow Service that "validates the XML against the XSD" and return error (true/flase).

=>How can I do (mimic/simulate) the same with XI ?

-> Introspect the XML PO and if (order amount is > 200$K), I need to get an approval) – How do I do that ?

=>You are right, this case could (and must) be done by the application it self. However (my example was not a good one) , let's take another one

=> I get the vacation request (in XML) from my intranet web site from employees. In some case, it need approval (take a longer vacation than required or expected). In webMethods (idem for Biztalk), it is possible (with their workflow) to "stall" the thread for the time I get the approval, and restart the thread. Is it possible with the BPM component of XI ?

-> One last question

=> How do I deal with procedural "integration coding" ? webMethods (and SAP BC) has the "flow logics" ... what about XI ?

Merci ! A+

MichalKrawczyk
Active Contributor
0 Kudos

Hi,

>>>>=> SAP BC has a very nice Flow Service that "validates the XML against the XSD" and return error (true/flase).

=>How can I do (mimic/simulate) the same with XI ?

I know I used it too but with XI you need to develop your own

message validation - if you need one

>>>> In webMethods (idem for Biztalk), it is possible (with their workflow) to "stall" the thread for the time I get the approval, and restart the thread. Is it possible with the BPM component of XI

in a way it is - via BPM and the usage of correlation

your BPM instance will wait for the correlation (one number) that

will start it again and push the flow forward

>>>=> How do I deal with procedural "integration coding" ? webMethods (and SAP BC) has the "flow logics" ... what about XI ?

you use BPM for that but in most cases you don't need that

as with XI more things come in standard - not as with BC

where "everything is a service" so you need to build a flow

to start any process

Regards,

michal