Simulacre
Simulacre

Reputation: 89

Webmethods - Information exchange between two processes

In fact I would like to know how it's possible to have a communication between two processes in Webmethods.

Example ->

I have two processes on SAG Designer :

enter image description here

Here is my first process :

enter image description here

Here is my second process :

enter image description here

They are running at the same time and I would like to get the information of the "StepTwo"

enter image description here

I'm not sending or receiving a message, I just want to be able to get the pipeline with another process.

If more details are needed or if it's not clear enough, please let me know.

Thank you.

Upvotes: 2

Views: 361

Answers (3)

user3089860
user3089860

Reputation: 1

I think we can do this by saving pipeline data of P1 and use this in P2 for that you can make use of Built-in services pub.flow:savePipeline and pub.flow:restorePipeline.

Keep in mind Pipeline data will loss if you restart your IS in between. If you still want to restart save your pipeline data to a file and use that file after restart.

See the below services:- pub.flow:savePipelineToFile and pub.flow:restorePipelineFromFile

Upvotes: 0

Henning Waack
Henning Waack

Reputation: 410

In general you can use services from the WmMonitor package, there you have public services which provide access to processes and step pipelines, e.g. with the services "pub.monitor.process.instanceSteps:getStepPipeline". Of course you have to turn on pipeline logging for this particular step.

BUT, I do not think that what you try to do is useful. Why should a process access the pipeline of another process? Without knowing the details of your use case, I think you should either:

  1. send and receive messages between the processes, or
  2. have a parent-child relationship between process P1 and P2, or
  3. process P1 should store the business relevant data in some database or any other permanent storage from which P2 retrieves the information, based on some unique business id.

I wouldn't recommend working with the pipeline of another process directly. Model your processes based on your business requirements, not on some technical requirements. That's what BPM is for.

Upvotes: 3

TchiYuan
TchiYuan

Reputation: 4278

I've never used the BPM tools from SoftwareAG but I have a lot of experience with webMethods. Intuitively, I don't think it's possible.

However, here's a possible workaround:

  1. In process one, serialize pipeline information as XML string and save that to the database.

  2. In process two, retrieve information from database and deserialize XML string to pipeline document.

Unfortunately, there isn't enough information in your question to give a more detailed answer.

Hope it helps!

Upvotes: 1

Related Questions