Discussion:
Trying to execute BTAHL7ReceivePipeline in an orchestration
(too old to reply)
Gerardo Barea
2007-12-28 12:40:01 UTC
Permalink
Hi All:

I am trying to call the BTAHL7ReceivePipeline inside an orchestration
to create and HL7 message from a string variable with the content of
an HL7 file.


I am trying to make this:


HL7Request = string;


BTAHL7ReceivePipeline =
Microsoft.XLANGs.Pipeline.XLANGPipelineManager.ExecuteReceivePipeline(typeo­f(BTAHL72XPipelines.BTAHL72XReceivePipeline),
HL7Request);


HL7Request2.MSHSegment = new System.Xml.XmlDocument();
HL7Request2.BodySegments = new System.Xml.XmlDocument();
HL7Request2.ZSegments = new System.Xml.XmlDocument();
BTAHL7ReceivePipeline.MoveNext();
BTAHL7ReceivePipeline.GetCurrent(HL7Request2);


Where ’string’ represents the HL7 content, ‘HL7Request’ is a
System.String message and ‘HL7Request2′ is a BTAHL7 message.


When i try to make this, it gives me the following error:


“Message has an invalid header, it could be due to error in 1st/2nd
field or the segment name is neither MSH nor FHS



I have checked the hl7 content and is ok, it seems that the pipeline
is not receiving the content correctly and it fails, i don´t know how
to make this work…


Does anyone have any idea?
Mihai Dan
2008-01-03 16:43:55 UTC
Permalink
Are you sure your HL7 message is okay? I would make that sure by creating a
Receive Location having BTAHL72XReceivePipeline as receive pipeline. Also,
just to make the troubleshooting simpler I would configure the "sending"
party to get no acknowledgement.

Mihai Dan

PS
I just did a simple test and it works fine for me.
Post by Gerardo Barea
I am trying to call the BTAHL7ReceivePipeline inside an orchestration
to create and HL7 message from a string variable with the content of
an HL7 file.
HL7Request = string;
BTAHL7ReceivePipeline =
Microsoft.XLANGs.Pipeline.XLANGPipelineManager.ExecuteReceivePipeline(typeo­f(BTAHL72XPipelines.BTAHL72XReceivePipeline),
HL7Request);
HL7Request2.MSHSegment = new System.Xml.XmlDocument();
HL7Request2.BodySegments = new System.Xml.XmlDocument();
HL7Request2.ZSegments = new System.Xml.XmlDocument();
BTAHL7ReceivePipeline.MoveNext();
BTAHL7ReceivePipeline.GetCurrent(HL7Request2);
Where 'string' represents the HL7 content, 'HL7Request' is a
System.String message and 'HL7Request2' is a BTAHL7 message.
"Message has an invalid header, it could be due to error in 1st/2nd
field or the segment name is neither MSH nor FHS
"
I have checked the hl7 content and is ok, it seems that the pipeline
is not receiving the content correctly and it fails, i donŽt know how
to make this work.
Does anyone have any idea?
Gerardo Barea
2008-01-08 17:16:05 UTC
Permalink
The message is correct, when i pass it through a receive port it works. But
when i try to pass it through the orchestration like i am trying to do it
fails...

The problem is in the way i must pass the System.String message to the
BTAHL7ReceivePipeline, something is wrong with that message or i must pass it
in another way.

I have tried to pass it like a RawString message but it also fails.
Post by Mihai Dan
Are you sure your HL7 message is okay? I would make that sure by creating a
Receive Location having BTAHL72XReceivePipeline as receive pipeline. Also,
just to make the troubleshooting simpler I would configure the "sending"
party to get no acknowledgement.
Mihai Dan
PS
I just did a simple test and it works fine for me.
Post by Gerardo Barea
I am trying to call the BTAHL7ReceivePipeline inside an orchestration
to create and HL7 message from a string variable with the content of
an HL7 file.
HL7Request = string;
BTAHL7ReceivePipeline =
Microsoft.XLANGs.Pipeline.XLANGPipelineManager.ExecuteReceivePipeline(typeo­f(BTAHL72XPipelines.BTAHL72XReceivePipeline),
HL7Request);
HL7Request2.MSHSegment = new System.Xml.XmlDocument();
HL7Request2.BodySegments = new System.Xml.XmlDocument();
HL7Request2.ZSegments = new System.Xml.XmlDocument();
BTAHL7ReceivePipeline.MoveNext();
BTAHL7ReceivePipeline.GetCurrent(HL7Request2);
Where 'string' represents the HL7 content, 'HL7Request' is a
System.String message and 'HL7Request2' is a BTAHL7 message.
"Message has an invalid header, it could be due to error in 1st/2nd
field or the segment name is neither MSH nor FHS
"
I have checked the hl7 content and is ok, it seems that the pipeline
is not receiving the content correctly and it fails, i don´t know how
to make this work.
Does anyone have any idea?
Mihai Dan
2008-01-10 16:13:17 UTC
Permalink
In the sample I've build to execute the BTAHL72XReceivePipeline from an
orchestration, the HL7 message gets into the orchestration via a receive
location set to use the MLLP adapter and the default PassThruReceive
pipeline. The type of this inbound message (in the orchestration) is
System.Xml.XmlDocument.... and it works. Btw, do you create your
System.String message inside the orchestration? If this is the case, how
exactly you do it?

Mihai Dan
Post by Gerardo Barea
The message is correct, when i pass it through a receive port it works. But
when i try to pass it through the orchestration like i am trying to do it
fails...
The problem is in the way i must pass the System.String message to the
BTAHL7ReceivePipeline, something is wrong with that message or i must pass it
in another way.
I have tried to pass it like a RawString message but it also fails.
Post by Mihai Dan
Are you sure your HL7 message is okay? I would make that sure by creating a
Receive Location having BTAHL72XReceivePipeline as receive pipeline. Also,
just to make the troubleshooting simpler I would configure the "sending"
party to get no acknowledgement.
Mihai Dan
PS
I just did a simple test and it works fine for me.
Post by Gerardo Barea
I am trying to call the BTAHL7ReceivePipeline inside an orchestration
to create and HL7 message from a string variable with the content of
an HL7 file.
HL7Request = string;
BTAHL7ReceivePipeline =
Microsoft.XLANGs.Pipeline.XLANGPipelineManager.ExecuteReceivePipeline(typeo­f(BTAHL72XPipelines.BTAHL72XReceivePipeline),
HL7Request);
HL7Request2.MSHSegment = new System.Xml.XmlDocument();
HL7Request2.BodySegments = new System.Xml.XmlDocument();
HL7Request2.ZSegments = new System.Xml.XmlDocument();
BTAHL7ReceivePipeline.MoveNext();
BTAHL7ReceivePipeline.GetCurrent(HL7Request2);
Where 'string' represents the HL7 content, 'HL7Request' is a
System.String message and 'HL7Request2' is a BTAHL7 message.
"Message has an invalid header, it could be due to error in 1st/2nd
field or the segment name is neither MSH nor FHS
"
I have checked the hl7 content and is ok, it seems that the pipeline
is not receiving the content correctly and it fails, i donŽt know how
to make this work.
Does anyone have any idea?
Gerardo Barea
2008-01-11 08:44:01 UTC
Permalink
I take the HL7 messages from a database and i assign them to System.String
messages, after that i take each message and pass it through the
BTAHL72XReceivePipeline.

It seems that the BTAHL72XReceivePipeline needs to receive a message
constructed in a particular way to work, i am going to try to copy the
incoming message of your example, or i will try to create a custom pipeline
that extracts the HL7 message and call the BTAHL7 pipeline components.

¿Any other suggestion?.
Post by Mihai Dan
In the sample I've build to execute the BTAHL72XReceivePipeline from an
orchestration, the HL7 message gets into the orchestration via a receive
location set to use the MLLP adapter and the default PassThruReceive
pipeline. The type of this inbound message (in the orchestration) is
System.Xml.XmlDocument.... and it works. Btw, do you create your
System.String message inside the orchestration? If this is the case, how
exactly you do it?
Mihai Dan
Post by Gerardo Barea
The message is correct, when i pass it through a receive port it works. But
when i try to pass it through the orchestration like i am trying to do it
fails...
The problem is in the way i must pass the System.String message to the
BTAHL7ReceivePipeline, something is wrong with that message or i must pass it
in another way.
I have tried to pass it like a RawString message but it also fails.
Post by Mihai Dan
Are you sure your HL7 message is okay? I would make that sure by creating a
Receive Location having BTAHL72XReceivePipeline as receive pipeline. Also,
just to make the troubleshooting simpler I would configure the "sending"
party to get no acknowledgement.
Mihai Dan
PS
I just did a simple test and it works fine for me.
Post by Gerardo Barea
I am trying to call the BTAHL7ReceivePipeline inside an orchestration
to create and HL7 message from a string variable with the content of
an HL7 file.
HL7Request = string;
BTAHL7ReceivePipeline =
Microsoft.XLANGs.Pipeline.XLANGPipelineManager.ExecuteReceivePipeline(typeo­f(BTAHL72XPipelines.BTAHL72XReceivePipeline),
HL7Request);
HL7Request2.MSHSegment = new System.Xml.XmlDocument();
HL7Request2.BodySegments = new System.Xml.XmlDocument();
HL7Request2.ZSegments = new System.Xml.XmlDocument();
BTAHL7ReceivePipeline.MoveNext();
BTAHL7ReceivePipeline.GetCurrent(HL7Request2);
Where 'string' represents the HL7 content, 'HL7Request' is a
System.String message and 'HL7Request2' is a BTAHL7 message.
"Message has an invalid header, it could be due to error in 1st/2nd
field or the segment name is neither MSH nor FHS
"
I have checked the hl7 content and is ok, it seems that the pipeline
is not receiving the content correctly and it fails, i don´t know how
to make this work.
Does anyone have any idea?
Mihai Dan
2008-01-15 17:23:00 UTC
Permalink
The problem when you define your orchestration message as System.String is
that your message payload is in the following format:
<?xml version="1.0"?>
<string>MSH|^~\&|... etc...</string>
... which is legitimate considering the message type you have chosen. Same
with the error message you've got as the HL7 Dasm expects a payload starting
with MSH or FHS....

Therefore, the trick is to create xlang message with binary (or string)
content instead of xml as we usually do.... so, I wrote the following method
(together with its internal class) that populates my xlang message the way I
want:

public static void CreateHL7Message(string data, XLANGMessage message)
{
message[0].LoadFrom(new HL7StreamFactory(data));
}

internal class HL7StreamFactory: IStreamFactory
{
private string hl7data = String.Empty;

public HL7StreamFactory(string hl7data)
{
this.hl7data = hl7data;
}

public Stream CreateStream()
{
return new MemoryStream(ASCIIEncoding.ASCII.GetBytes(hl7data));
}
}

In your MessageAssignment shape the code should look like:
HL7 = null;
CreateHL7Message(hl7data, HL7);
... where HL7 is the output message (created as XmlDocument) in the
orchestration.


I hope that my answer reaches you on time... cheers,
Mihai Dan
Post by Gerardo Barea
I take the HL7 messages from a database and i assign them to System.String
messages, after that i take each message and pass it through the
BTAHL72XReceivePipeline.
It seems that the BTAHL72XReceivePipeline needs to receive a message
constructed in a particular way to work, i am going to try to copy the
incoming message of your example, or i will try to create a custom pipeline
that extracts the HL7 message and call the BTAHL7 pipeline components.
¿Any other suggestion?.
Post by Mihai Dan
In the sample I've build to execute the BTAHL72XReceivePipeline from an
orchestration, the HL7 message gets into the orchestration via a receive
location set to use the MLLP adapter and the default PassThruReceive
pipeline. The type of this inbound message (in the orchestration) is
System.Xml.XmlDocument.... and it works. Btw, do you create your
System.String message inside the orchestration? If this is the case, how
exactly you do it?
Mihai Dan
Post by Gerardo Barea
The message is correct, when i pass it through a receive port it works. But
when i try to pass it through the orchestration like i am trying to do it
fails...
The problem is in the way i must pass the System.String message to the
BTAHL7ReceivePipeline, something is wrong with that message or i must
pass
it
in another way.
I have tried to pass it like a RawString message but it also fails.
Post by Mihai Dan
Are you sure your HL7 message is okay? I would make that sure by
creating
a
Receive Location having BTAHL72XReceivePipeline as receive pipeline. Also,
just to make the troubleshooting simpler I would configure the "sending"
party to get no acknowledgement.
Mihai Dan
PS
I just did a simple test and it works fine for me.
Post by Gerardo Barea
I am trying to call the BTAHL7ReceivePipeline inside an
orchestration
to create and HL7 message from a string variable with the content of
an HL7 file.
HL7Request = string;
BTAHL7ReceivePipeline =
Microsoft.XLANGs.Pipeline.XLANGPipelineManager.ExecuteReceivePipeline(typeo­f(BTAHL72XPipelines.BTAHL72XReceivePipeline),
HL7Request);
HL7Request2.MSHSegment = new System.Xml.XmlDocument();
HL7Request2.BodySegments = new System.Xml.XmlDocument();
HL7Request2.ZSegments = new System.Xml.XmlDocument();
BTAHL7ReceivePipeline.MoveNext();
BTAHL7ReceivePipeline.GetCurrent(HL7Request2);
Where 'string' represents the HL7 content, 'HL7Request' is a
System.String message and 'HL7Request2' is a BTAHL7 message.
"Message has an invalid header, it could be due to error in 1st/2nd
field or the segment name is neither MSH nor FHS
"
I have checked the hl7 content and is ok, it seems that the pipeline
is not receiving the content correctly and it fails, i donŽt know how
to make this work.
Does anyone have any idea?
Gerardo Barea
2008-01-16 22:48:00 UTC
Permalink
Thank you very much Mihai!! Your solution is great, you really saved me the
day...

As i suspected and you resolved, the problem was in the way i was creating
the incoming message.

Thank you very very much!
Post by Mihai Dan
The problem when you define your orchestration message as System.String is
<?xml version="1.0"?>
<string>MSH|^~\&|... etc...</string>
.... which is legitimate considering the message type you have chosen. Same
with the error message you've got as the HL7 Dasm expects a payload starting
with MSH or FHS....
Therefore, the trick is to create xlang message with binary (or string)
content instead of xml as we usually do.... so, I wrote the following method
(together with its internal class) that populates my xlang message the way I
public static void CreateHL7Message(string data, XLANGMessage message)
{
message[0].LoadFrom(new HL7StreamFactory(data));
}
internal class HL7StreamFactory: IStreamFactory
{
private string hl7data = String.Empty;
public HL7StreamFactory(string hl7data)
{
this.hl7data = hl7data;
}
public Stream CreateStream()
{
return new MemoryStream(ASCIIEncoding.ASCII.GetBytes(hl7data));
}
}
HL7 = null;
CreateHL7Message(hl7data, HL7);
.... where HL7 is the output message (created as XmlDocument) in the
orchestration.
I hope that my answer reaches you on time... cheers,
Mihai Dan
Post by Gerardo Barea
I take the HL7 messages from a database and i assign them to System.String
messages, after that i take each message and pass it through the
BTAHL72XReceivePipeline.
It seems that the BTAHL72XReceivePipeline needs to receive a message
constructed in a particular way to work, i am going to try to copy the
incoming message of your example, or i will try to create a custom pipeline
that extracts the HL7 message and call the BTAHL7 pipeline components.
¿Any other suggestion?.
Post by Mihai Dan
In the sample I've build to execute the BTAHL72XReceivePipeline from an
orchestration, the HL7 message gets into the orchestration via a receive
location set to use the MLLP adapter and the default PassThruReceive
pipeline. The type of this inbound message (in the orchestration) is
System.Xml.XmlDocument.... and it works. Btw, do you create your
System.String message inside the orchestration? If this is the case, how
exactly you do it?
Mihai Dan
Post by Gerardo Barea
The message is correct, when i pass it through a receive port it works. But
when i try to pass it through the orchestration like i am trying to do it
fails...
The problem is in the way i must pass the System.String message to the
BTAHL7ReceivePipeline, something is wrong with that message or i must
pass
it
in another way.
I have tried to pass it like a RawString message but it also fails.
Post by Mihai Dan
Are you sure your HL7 message is okay? I would make that sure by
creating
a
Receive Location having BTAHL72XReceivePipeline as receive pipeline. Also,
just to make the troubleshooting simpler I would configure the "sending"
party to get no acknowledgement.
Mihai Dan
PS
I just did a simple test and it works fine for me.
Post by Gerardo Barea
I am trying to call the BTAHL7ReceivePipeline inside an orchestration
to create and HL7 message from a string variable with the content of
an HL7 file.
HL7Request = string;
BTAHL7ReceivePipeline =
Microsoft.XLANGs.Pipeline.XLANGPipelineManager.ExecuteReceivePipeline(typeo­f(BTAHL72XPipelines.BTAHL72XReceivePipeline),
HL7Request);
HL7Request2.MSHSegment = new System.Xml.XmlDocument();
HL7Request2.BodySegments = new System.Xml.XmlDocument();
HL7Request2.ZSegments = new System.Xml.XmlDocument();
BTAHL7ReceivePipeline.MoveNext();
BTAHL7ReceivePipeline.GetCurrent(HL7Request2);
Where 'string' represents the HL7 content, 'HL7Request' is a
System.String message and 'HL7Request2' is a BTAHL7 message.
"Message has an invalid header, it could be due to error in 1st/2nd
field or the segment name is neither MSH nor FHS
"
I have checked the hl7 content and is ok, it seems that the pipeline
is not receiving the content correctly and it fails, i don´t know how
to make this work.
Does anyone have any idea?
Honk
2009-02-06 08:21:02 UTC
Permalink
Can you share the project? i am doing the same but I am getting error.

I am doing in a message assignment;

/*
OutputMessage -- A internal message from defined schema.
OutputMessage.MsgContent -- A distinguished field of OutputMessage take
"MSH|^~..."
HL7Content -- A message of System.XmlDocument type.
*/
CreateHL7Message(OutputMessage.MsgContent, HL7Content)
BTAHL7ReceivePipeline =
Microsoft.XLANGs.Pipeline.XLANGPipelineManager.ExecuteReceivePipeline(typeo­f(BTAHL72XPipelines.BTAHL72XReceivePipeline),
HL7Content);

But I get the error:

in xLANG. have I done something wrong? Can you share me with your orginal
project?

Thank,
Honk
Post by Mihai Dan
The problem when you define your orchestration message as System.String is
<?xml version="1.0"?>
<string>MSH|^~\&|... etc...</string>
.... which is legitimate considering the message type you have chosen. Same
with the error message you've got as the HL7 Dasm expects a payload starting
with MSH or FHS....
Therefore, the trick is to create xlang message with binary (or string)
content instead of xml as we usually do.... so, I wrote the following method
(together with its internal class) that populates my xlang message the way I
public static void CreateHL7Message(string data, XLANGMessage message)
{
message[0].LoadFrom(new HL7StreamFactory(data));
}
internal class HL7StreamFactory: IStreamFactory
{
private string hl7data = String.Empty;
public HL7StreamFactory(string hl7data)
{
this.hl7data = hl7data;
}
public Stream CreateStream()
{
return new MemoryStream(ASCIIEncoding.ASCII.GetBytes(hl7data));
}
}
HL7 = null;
CreateHL7Message(hl7data, HL7);
.... where HL7 is the output message (created as XmlDocument) in the
orchestration.
I hope that my answer reaches you on time... cheers,
Mihai Dan
Post by Gerardo Barea
I take the HL7 messages from a database and i assign them to System.String
messages, after that i take each message and pass it through the
BTAHL72XReceivePipeline.
It seems that the BTAHL72XReceivePipeline needs to receive a message
constructed in a particular way to work, i am going to try to copy the
incoming message of your example, or i will try to create a custom pipeline
that extracts the HL7 message and call the BTAHL7 pipeline components.
¿Any other suggestion?.
Post by Mihai Dan
In the sample I've build to execute the BTAHL72XReceivePipeline from an
orchestration, the HL7 message gets into the orchestration via a receive
location set to use the MLLP adapter and the default PassThruReceive
pipeline. The type of this inbound message (in the orchestration) is
System.Xml.XmlDocument.... and it works. Btw, do you create your
System.String message inside the orchestration? If this is the case, how
exactly you do it?
Mihai Dan
Post by Gerardo Barea
The message is correct, when i pass it through a receive port it works. But
when i try to pass it through the orchestration like i am trying to do it
fails...
The problem is in the way i must pass the System.String message to the
BTAHL7ReceivePipeline, something is wrong with that message or i must
pass
it
in another way.
I have tried to pass it like a RawString message but it also fails.
Post by Mihai Dan
Are you sure your HL7 message is okay? I would make that sure by
creating
a
Receive Location having BTAHL72XReceivePipeline as receive pipeline. Also,
just to make the troubleshooting simpler I would configure the "sending"
party to get no acknowledgement.
Mihai Dan
PS
I just did a simple test and it works fine for me.
Post by Gerardo Barea
I am trying to call the BTAHL7ReceivePipeline inside an orchestration
to create and HL7 message from a string variable with the content of
an HL7 file.
HL7Request = string;
BTAHL7ReceivePipeline =
Microsoft.XLANGs.Pipeline.XLANGPipelineManager.ExecuteReceivePipeline(typeo­f(BTAHL72XPipelines.BTAHL72XReceivePipeline),
HL7Request);
HL7Request2.MSHSegment = new System.Xml.XmlDocument();
HL7Request2.BodySegments = new System.Xml.XmlDocument();
HL7Request2.ZSegments = new System.Xml.XmlDocument();
BTAHL7ReceivePipeline.MoveNext();
BTAHL7ReceivePipeline.GetCurrent(HL7Request2);
Where 'string' represents the HL7 content, 'HL7Request' is a
System.String message and 'HL7Request2' is a BTAHL7 message.
"Message has an invalid header, it could be due to error in 1st/2nd
field or the segment name is neither MSH nor FHS
"
I have checked the hl7 content and is ok, it seems that the pipeline
is not receiving the content correctly and it fails, i don´t know how
to make this work.
Does anyone have any idea?
jason2d2
2010-02-11 01:11:02 UTC
Permalink
Hello, I have a follow up question.

I am able to successfully execute the ReceivePipeline but when I configure
ACK messages, it fails. I get the error "Object reference not set to an
instance of an object.." Is there a configuration trick to also receive the
ACK/NACK messages from the pipeline after HL7 parsing.
Post by Mihai Dan
The problem when you define your orchestration message as System.String is
<?xml version="1.0"?>
<string>MSH|^~\&|... etc...</string>
.... which is legitimate considering the message type you have chosen. Same
with the error message you've got as the HL7 Dasm expects a payload starting
with MSH or FHS....
Therefore, the trick is to create xlang message with binary (or string)
content instead of xml as we usually do.... so, I wrote the following method
(together with its internal class) that populates my xlang message the way I
public static void CreateHL7Message(string data, XLANGMessage message)
{
message[0].LoadFrom(new HL7StreamFactory(data));
}
internal class HL7StreamFactory: IStreamFactory
{
private string hl7data = String.Empty;
public HL7StreamFactory(string hl7data)
{
this.hl7data = hl7data;
}
public Stream CreateStream()
{
return new MemoryStream(ASCIIEncoding.ASCII.GetBytes(hl7data));
}
}
HL7 = null;
CreateHL7Message(hl7data, HL7);
.... where HL7 is the output message (created as XmlDocument) in the
orchestration.
I hope that my answer reaches you on time... cheers,
Mihai Dan
Post by Gerardo Barea
I take the HL7 messages from a database and i assign them to System.String
messages, after that i take each message and pass it through the
BTAHL72XReceivePipeline.
It seems that the BTAHL72XReceivePipeline needs to receive a message
constructed in a particular way to work, i am going to try to copy the
incoming message of your example, or i will try to create a custom pipeline
that extracts the HL7 message and call the BTAHL7 pipeline components.
¿Any other suggestion?.
Post by Mihai Dan
In the sample I've build to execute the BTAHL72XReceivePipeline from an
orchestration, the HL7 message gets into the orchestration via a receive
location set to use the MLLP adapter and the default PassThruReceive
pipeline. The type of this inbound message (in the orchestration) is
System.Xml.XmlDocument.... and it works. Btw, do you create your
System.String message inside the orchestration? If this is the case, how
exactly you do it?
Mihai Dan
Post by Gerardo Barea
The message is correct, when i pass it through a receive port it works. But
when i try to pass it through the orchestration like i am trying to do it
fails...
The problem is in the way i must pass the System.String message to the
BTAHL7ReceivePipeline, something is wrong with that message or i must
pass
it
in another way.
I have tried to pass it like a RawString message but it also fails.
Post by Mihai Dan
Are you sure your HL7 message is okay? I would make that sure by
creating
a
Receive Location having BTAHL72XReceivePipeline as receive pipeline. Also,
just to make the troubleshooting simpler I would configure the "sending"
party to get no acknowledgement.
Mihai Dan
PS
I just did a simple test and it works fine for me.
Post by Gerardo Barea
I am trying to call the BTAHL7ReceivePipeline inside an orchestration
to create and HL7 message from a string variable with the content of
an HL7 file.
HL7Request = string;
BTAHL7ReceivePipeline =
Microsoft.XLANGs.Pipeline.XLANGPipelineManager.ExecuteReceivePipeline(typeo­f(BTAHL72XPipelines.BTAHL72XReceivePipeline),
HL7Request);
HL7Request2.MSHSegment = new System.Xml.XmlDocument();
HL7Request2.BodySegments = new System.Xml.XmlDocument();
HL7Request2.ZSegments = new System.Xml.XmlDocument();
BTAHL7ReceivePipeline.MoveNext();
BTAHL7ReceivePipeline.GetCurrent(HL7Request2);
Where 'string' represents the HL7 content, 'HL7Request' is a
System.String message and 'HL7Request2' is a BTAHL7 message.
"Message has an invalid header, it could be due to error in 1st/2nd
field or the segment name is neither MSH nor FHS
"
I have checked the hl7 content and is ok, it seems that the pipeline
is not receiving the content correctly and it fails, i don´t know how
to make this work.
Does anyone have any idea?
aun ali siraj
2008-03-10 05:53:22 UTC
Permalink
i am not getting Btahl72xreceivepipeline in combo can you help me

url:http://www.ureader.com/msg/1202341.aspx
Gerardo Barea
2008-03-10 12:19:00 UTC
Permalink
If you are not working with the default application, make sure the
application you are using is referencing the default. Normally when you
install BTAHL7 Accelerator all the pipelines and schemas are installed there.
Post by aun ali siraj
i am not getting Btahl72xreceivepipeline in combo can you help me
url:http://www.ureader.com/msg/1202341.aspx
aun ali siraj
2008-03-12 09:48:27 UTC
Permalink
thank i have reinstall Hl7 accelator , it start showing it may i have
undeploy the pipeline assembly

thank you

url:http://www.ureader.com/msg/1202341.aspx
Loading...