BizTalk Server General - A loop based on existence

This is Interesting: Free IT Magazines  
Home > Archive > BizTalk Server General > March 2006 > A loop based on existence





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author A loop based on existence
baralong@gmail.com

2006-03-25, 11:37 am

I am interfacing with a legacy application. It has a flat file based
messaging spec comunicating over TCP (I had to write an adapter for it)

Anyway its response messages are limitted to 4k, when a query returns
more than will it it sends as much as it can along with an overflow
record.

My logic goes something like this (or woudl if I could make it work)
00 receive basic query parameters
01 construct initial request message
02 construct output message
03 default to "looping" = true
04 loop while "looping"
05 send request
06 receive response
07 append result to output message
08 set "looping" to existence of overflow record in output message
09 end loop
10 send response

My problem is in step 08. How do I do that? I've tried using a
transform and the "logical existence" functiod, but it seems that you
can't output the value of the functiod to a field

Greg Forsythe

2006-03-25, 11:37 am

You can use the xpath function in an expression shape
overflowcount = xpath(responsemessage, "count(<overflow xpath string> )")
looping is true if overflowcount > 0;

To get the xpath for the overflow record open the reponse message schema,
select the overflow record and cut and paste the Instance Xpath property.

Greg

<baralong@gmail.com> wrote in message
news:1143112595.126902.221780@i39g2000cwa.googlegroups.com...
>I am interfacing with a legacy application. It has a flat file based
> messaging spec comunicating over TCP (I had to write an adapter for it)
>
> Anyway its response messages are limitted to 4k, when a query returns
> more than will it it sends as much as it can along with an overflow
> record.
>
> My logic goes something like this (or woudl if I could make it work)
> 00 receive basic query parameters
> 01 construct initial request message
> 02 construct output message
> 03 default to "looping" = true
> 04 loop while "looping"
> 05 send request
> 06 receive response
> 07 append result to output message
> 08 set "looping" to existence of overflow record in output message
> 09 end loop
> 10 send response
>
> My problem is in step 08. How do I do that? I've tried using a
> transform and the "logical existence" functiod, but it seems that you
> can't output the value of the functiod to a field
>



Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2008 webservertalk.com