|
Home > Archive > BizTalk Server > February 2004 > BTS 2002 changing receive function values in a preprocessor
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 |
BTS 2002 changing receive function values in a preprocessor
|
|
| BTS 2002 User 2004-02-08, 8:39 am |
| Hi
In a receive function you can specify source, dest,
openness, etc. Is there any way of changing or clearing
any of these values in the preprocessor? Even a right
hacky way of doing it might help.
Thanks!
| |
| Jan Eliasen 2004-02-08, 8:39 am |
| On Mon, 12 Jan 2004 02:47:26 -0800, "BTS 2002 User"
<anonymous@discussions.microsoft.com> wrote:
>In a receive function you can specify source, dest,
>openness, etc. Is there any way of changing or clearing
>any of these values in the preprocessor? Even a right
>hacky way of doing it might help.
Consider the followin my very best guess, as I am not sure how BizTalk
works internally on this issue.
Anyway, as I see it, a Receive Function will put the document through
the preprocessor and look at the result. It will then determine which
channel(s) the document is to go through. It will then put the
document into the Work-queue with this information and any BizTalk
Server can then pick up the document and process it.
Now to your question; Can you change the details of the Receive
Function in the preprocessor? I am not sure. It makes sense that you
can do it, since you are in code. But can you change the settings of a
receive function that is active? I don't know. And besides that, what
will happen if two documents are being processed in the preprocessor
at the same time and they try to change different settings on the
receife function? This will probably give som unexpected behaviour. So
in short, I definately wouldn't go that way... and I really can not
see why you would want to do it anyway :-)
Hope this helped... just a little bit?
--
Jan Eliasen, representing himself and not the company he works for.
MCP in Microsoft BizTalk Server
| |
| Nick Malik 2004-02-08, 8:39 am |
| well, sort of.
I have a preprocessor that performs some very complex manipulations on a
very large document, creating hundreds or even thousands of smaller
documents, each of which is submitted BY THE PREPROCESSOR to Biztalk. When
I am done with the work, I return a "job control" document to Biztalk which
is not mapped, but is used by an AIC (a long story).
The point is that the preprocessor can take the input file, do somethings to
it, and call Submit on the data. As long as the preprocessor returns
SOMETHING to Biztalk, it does not have to be the document it read from the
hard drive or the queue. It can be an XML file with some tracking content,
or something like that.
I hope this helps.
--- Nick
"BTS 2002 User" <anonymous@discussions.microsoft.com> wrote in message
news:058601c3d8f9$77916720$a601280a@phx.gbl...
> Hi
>
> In a receive function you can specify source, dest,
> openness, etc. Is there any way of changing or clearing
> any of these values in the preprocessor? Even a right
> hacky way of doing it might help.
>
> Thanks!
| |
|
| Thanks Jan. The reason we want to do it is that sometimes
based on the content of the message we want to change the
openness from "open destination" (as defined by the
receive function) to "not open", in order that different
channel/port matching occurs. Any ideas?
>-----Original Message-----
>On Mon, 12 Jan 2004 02:47:26 -0800, "BTS 2002 User"
><anonymous@discussions.microsoft.com> wrote:
>
>Consider the followin my very best guess, as I am not
sure how BizTalk
>works internally on this issue.
>
>Anyway, as I see it, a Receive Function will put the
document through
>the preprocessor and look at the result. It will then
determine which
>channel(s) the document is to go through. It will then
put the
>document into the Work-queue with this information and
any BizTalk
>Server can then pick up the document and process it.
>
>Now to your question; Can you change the details of the
Receive
>Function in the preprocessor? I am not sure. It makes
sense that you
>can do it, since you are in code. But can you change the
settings of a
>receive function that is active? I don't know. And
besides that, what
>will happen if two documents are being processed in the
preprocessor
>at the same time and they try to change different
settings on the
>receife function? This will probably give som unexpected
behaviour. So
>in short, I definately wouldn't go that way... and I
really can not
>see why you would want to do it anyway :-)
>
>Hope this helped... just a little bit?
>
>--
>Jan Eliasen, representing himself and not the company he
works for.
> MCP in Microsoft BizTalk Server
>.
>
| |
| Nick Malik 2004-02-08, 8:39 am |
| As an alternative, set up a receive function to submit to a dummy channel.
Then have the preprocess contain the logic for
(a) determining if the document is known, and should go to a specific
channel, or
(b) submitting the document with an open destination to allow Biztalk to
select a channel.
The preprocesser can return a dummy XML that a dummy channel sends to an
auditing port.
This would do what you want.
--- Nick
<anonymous@discussions.microsoft.com> wrote in message
news:081101c3da94$54049fb0$a601280a@phx.gbl...[color=blue]
> Thanks Jan. The reason we want to do it is that sometimes
> based on the content of the message we want to change the
> openness from "open destination" (as defined by the
> receive function) to "not open", in order that different
> channel/port matching occurs. Any ideas?
>
> sure how BizTalk
> document through
> determine which
> put the
> any BizTalk
> Receive
> sense that you
> settings of a
> besides that, what
> preprocessor
> settings on the
> behaviour. So
> really can not
> works for.
|
|
|
|
|