cancel
Showing results for 
Search instead for 
Did you mean: 

BPM...needing help in a simple test case...

Former Member
0 Kudos

Hi guys,

I'm having some trouble with the creation of an integration process.

My idea is to create the following process:

Legacy Nº1-->(FILE) -- > XI -> (FILE)> Legacy Nº2, after Legacy Nº2 receives the file (Purchase Order), one of the fields of the purchase order will be submitted to a validation.

If the field is correct it will send another file back to legacy Nº1 with the approval of the purchase order.

In a BPM, how would this be look like?

I'm able to send the purchaseOrder, but How would the validation of the field be executed? And what components would then be placed in order to achieve the validation and the corresponding sending?

Thank you guys...I'm greenish at BPM...

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Goncalo,

You can validate of a particular field of a message in the transformation step. And then you can have switch step to decide on wheather to send the purchase order or not.

Also let me know what kind of the validation you want to perform like format check, value check or lookup in another system.

Anand

Former Member
0 Kudos

Hi Anand,

Like I said I was able to send the Purchase order from legacy Nº1 to legacy Nº2 with a simple BPM like:

start-->receive step >send step> end

My idea is after legacy Nº2 gets the file, validate one of the xml field files, just to check if the purchase order is the one i'm expecting.

If the order is the correct, I'd like to send a confirmation of that purchase order (a simple xml file) back to legacy Nº1.

My confusion is, I have for my simple BPM:

sender agreement: LegacyN1|Purch_Out

interfac_det: LegacyN1|Purch_Out|IP_legn1_legn2

: IP_legn1_legn2 |Purch_AB | LegacyN2

receiver_det: LegacyN1 | Purch_Out

IP_legn1_legn2 | Purch_AB

receiver_agreem: IP_legn1_legn2 | LegacyN2 | Purch_IB

Now If i want to perform a validation and the corresponding sending to the legacy N1, what will I have to define?

sender agreement: LegacyN1|Purch_Out

LegacyN2|Purch_IB

interfac_det: LegacyN1|Purch_Out|IP_legn1_legn2

: IP_legn1_legn2 |Purch_AB | LegacyN2

LegacyN2|Purch_IB|IP_legn1_legn2

: IP_legn1_legn2 |Purch_AB | LegacyN1

receiver_det: LegacyN1 | Purch_Out

IP_legn1_legn2 | Purch_AB

LegacyN2 | Purch_IB

receiver_agreem: IP_legn1_legn2 | LegacyN2 | Purch_IB

IP_legn1_legn2 | LegacyN1 | Purch_Out

I think that this would be the config.

But how could I perform the validation? The validation was only to check if that purchase order existed in the system.

and in the BPM what would I get?

tHE BPM is confusing me a little bit because there is few material for me to guide....

Former Member
0 Kudos

I was trying to create the BPM and I had:

start-->receive step >send step> container Operation(adds one to the number of messages received)

-->switch(checks if the number_messages_received is different from zero)

>receive step>send step--> end

Then I was going to implement the receiver determinations.

But the question is:

I won't implement the LegacyN2|Purch_IB|IP_legn1_legn2 because i don't want to start the BPM IP_legn1_legn2 from the beginning...

What will it be like?

Former Member
0 Kudos

Hi Goncalo,

In my previous post i was referring to validation of message in the BPM received from legacy system in N2.

As far as i understand now you want to validate the purchase order in N2 itself and send the confirmation back to N1.

1. Before that would like to know what kind of system is your N2 ?

2. Can your legacy system validate and send the response to BPM (since the validation has to happen in legacy system).

If N2 can send the validated response then you BPM can wait for the response from legacy system and then based on the response recieved from N2 it can send the confirmation to N1.

Anand

Former Member
0 Kudos

Hi Anand,

your answers are really good, you're able to clear me my doubts about BPM and to help creating the test case I want to implement.

The idea is to have in LegacyN2 a R3 SYSTEM that is able to get the XML file and to perform the validation of one of the fields that are getting in the file.

This validation would i suppose be implemented by calling a remote function that would then send back a file with a confirmation.

For this simple case I'd only like to get the file, call a function that would always return true enabling the sending of the file back to legacy N1.

My idea for the beginning is only to create the communication going the two ways, sending a file, receiving it and sending it back again.

It could be the same file that it's received. the validation isn't really important for the moment...

What are the components that will be used in the BPM?...

Thanks in advance Anand.

Former Member
0 Kudos

Hi Goncalo,

>>Legacy Nº1-->(FILE) -- > XI -> (FILE)> Legacy Nº2, after Legacy Nº2 receives the file (Purchase Order), one of the fields of the purchase order will be submitted to a validation.

If your N2 is R3 system then how are you sending a file to R/3 system as mentioned above ? Are you using a RFC to send the purchase order to N2 ?

>>start-->receive step >send step> container Operation(adds one to the number of messages received)

-->switch(checks if the number_messages_received is different from zero)

>receive step>send step--> end

validation can be done in two ways....

1. Assuming that you already have a purchase order available in BPM then you can make a sync RFC call to get your purchase order validated using a RFC(RFM).

In that cas your scenario would be

start-->receive step >send step> container Operation(adds one to the number of messages received)

-->switch(checks if the number_messages_received is different from zero)

>synch send(RFC)>Check the response->send step--> end

2. If purchase order number is not available then you need to trigger Response from N2 to send it to BPM using RFC sender adapter.

so your scenario would be

start-->receive step >send step> container Operation(adds one to the number of messages received)

-->switch(checks if the number_messages_received is different from zero)

>receive step(need correlation in this case)>check response->send step--> end

Anand

Former Member
0 Kudos

Once again your answer was really helpful Anand.

I was confusing some concepts over the process.

The idea was that the two legacies were R/3 systems but the real scenario isn't really that. I think that the real scenario will be two distinct systems (not R3), so maybe the idea of implementing a BPM is not really a good idea in this case. The systems will only try to send to XML files, so the basic idea is implement a file-to file adapter communication channel. The thing is, i would want to implement some kind of validation on this files. How would you suggest this validation?

If the two clients were using R3 systems, the validation would be much more simpler, like you said it could be by using a sync RFC call.

Since the first scenario is a simple one, I'll try to develop a new one, one in which legacyN2 is a R/3 system.

If I have more BPM doubts, which i'll certainly have, I'll be posting, oK Anand?

Former Member
0 Kudos

Hi Goncalo,

>>The thing is, i would want to implement some kind of validation on this files. How would you suggest this validation?

If tou want to do some kind of validation once the file is written then you need have your own mechanism to do this . Since the file adapter is in asynchronous in nature you will not get any application acknowldegement . you can use OS command option in file adapter to invoke java code and perform your validations using java code and send the response message back to XI.

Check this thread...

>>If I have more BPM doubts, which i'll certainly have, I'll be posting, oK Anand?

no problem

Anand