Orchestration - Parallel never exit

Hi all,

In the orchestration of my BizTalk application, it will start a parallel shape immediately. After the parallel ends, it will go to other expression on the main branch.

There are 2 branches in the parallel. Each of them start with receiving a file, and then transform the receiced file. After that, the parallel will end.

But I find that the parallel seems never end. It won't go to the main branch after the file transformation end. I've tried to add expression for writing log. Two expressions are located after the files transformation and one expression after the parallel end. For the first 2 expressions, it can write the log properly. But for the latter one, it can write.

Does it mean that there is something wrong with the parallel?

Please help. Thanks!

[867 byte] By [YCH] at [2008-1-7]
# 1

It wouldn't problem with the parellel shape. I think it is problem with the logic. Are you receiving the file from sameport or differentport? In an orchestration only one receive shape can have activtiy=true. If more than receive shape is present then other once activity=false and this port will wait for correlated message. Could you please revisit your logic.....

Thanks,

Saravana Kumar

SaravanaKumar_1977 at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk R2 General...
# 2

There are 2 files to receive, 1 Flat File and 1 XML.

And there are 2 ports for the 2 files.

What if one port is already set to true and the other one is false?

YCH at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk R2 General...
# 3

Yes. That logic wouln't work here. Because if you have two receive shape, one with true and another one with false, the second one which has false should be configured to receive correlated message. Please go through documentation for the correlation. For your requirement you have if both messages has some common property (promoted property) then the existing logic may work, otherwise you have to revisit your logic of implmentation.

Please elaborate your requirement (message types, frequency of message arrival, etc...), I will come up with implementation logic.

Thanks,

Saravana Kumar

SaravanaKumar_1977 at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk R2 General...
# 4

Yes. There is a common property in both files. And that property is a "Promotion Property" and there is a Correlation Schema.

And something about the implementation logic. Actually, there are 2 branches in the parallel shape. They are almost the same. Each branch have a receive shape at the begining, and then there is a transform map to remove the correlation property. And then the parallel shape will end. After the parallel shape end, there will another transform map to merge the files. When it done, there is a expression for writing log entries and the orchestration will end.

YCH at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk R2 General...
# 5
SaravanaKumar_1977 wrote:

It wouldn't problem with the parellel shape. I think it is problem with the logic. Are you receiving the file from sameport or differentport? In an orchestration only one receive shape can have activtiy=true. If more than receive shape is present then other once activity=false and this port will wait for correlated message. Could you please revisit your logic.....

Thanks,

Saravana Kumar

We can use several Receives with activate=true, if all of them are in the different branches of the Parallel shape (that's the case), can we?
Regards,
Leonid Ganeline
http://geekswithblogs.net/leonidganeline/
LeonidGaneline-MVP at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk R2 General...
# 6

Yes, with multiple receive shapes with the activity=true, in the different shapes should work.

Thanks,

Saravna Kumar

SaravanaKumar_1977 at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk R2 General...
# 7
OK
Seems Each and all parallel branch works, but the Parallel as a whole never ends. Is that right?
Do you create the correlation set for this receives? Could you, please, describe this part?
Regards,
Leonid Ganeline
http://geekswithblogs.net/leonidganeline/
LeonidGaneline-MVP at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk R2 General...
# 8

Thoertically whatever you told will work. But logically the parallel shape will never exit until you have correlation set in one of the parallel shape. Let me explain in detail, let us consider you have two receivelocations namely A and B. If you received a message in Receivelocation A and another receivelocation for that orchestration "B" will never been called, becaue if you post another message in Receive location "B" a new instance will be created, it will wait for message from "A". That's why I have proposed correlation between Receivelocation A & B. And execution order also matters here.

Thanks,

Saravana Kumar

SaravanaKumar_1977 at 2007-10-2 > top of Msdn Tech,BizTalk Server,BizTalk R2 General...