Author |
Message
|
beth_carlin |
Posted: Fri Sep 10, 2004 1:42 pm Post subject: how to check if XML interface is ok ? |
|
|
Acolyte
Joined: 08 Jun 2004 Posts: 64
|
how to check if XML interface to <ProcessTemplateCreateAndStartInstance> is ok ? this is the msg:
<ProcessTemplateCreateAndStartInstance>
<ProcTemplName>Approval</ProcTemplName>
<ProcInstName>MyApproval</ProcInstName>
<KeepName>false</KeepName>
<ProcInstInputData>
<approval_datainput>
<company_name>xxxxxx</company_name>
.........
I have a mq program to put xml message on queue EXEXMLINPUTQ to CreateAndStartInstance and it works ok..
when it fails, I can read the message from the reply queue, and look for <Rc>....
</WfMessageHeader>
<GeneralError>
<Exception>
<Rc>1100</Rc>
<Parameters>
....
Could you please tell me if there is a better way to check using MQWF API to see if after
a successful put on EXEXMLINPUTQ then the CreateAndStartInstance works sucessfully or not ...please keep in mind that
the process instance name is unique ( MyApproval$AAAAAQAlwAAAAAAAAAAAAA== ) and system generated the latter part so I don't know before hand the name of the process instance
thx again for all your help |
|
Back to top |
|
 |
CHF |
Posted: Mon Sep 13, 2004 4:30 am Post subject: |
|
|
 Master
Joined: 16 Dec 2003 Posts: 297
|
Not sure this will answer your question.
Put <ResponseRequired>Yes</ResponseRequired> in your input message. This will always send you the response back.
Quote: |
process instance name is unique ( MyApproval$AAAAAQAlwAAAAAAAAAAAAA== ) and system generated the latter part so I don't know before hand the name of the process instance |
You have <KeepName>false</KeepName>, thats why Workflow is adding some more characters to make it unique.
Hope this helps. _________________ CHF  |
|
Back to top |
|
 |
vennela |
Posted: Mon Sep 13, 2004 5:26 am Post subject: |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
CHF wrote: |
Not sure this will answer your question.
Put <ResponseRequired>Yes</ResponseRequired> in your input message. This will always send you the response back. |
CHF:
If you read the post carefully
beth_carlin wrote: |
when it fails, I can read the message from the reply queue, and look for <Rc>....
|
so he is already doing that but what he wants is
beth_carlin wrote: |
Could you please tell me if there is a better way to check using MQWF API to see if after
a successful put on EXEXMLINPUTQ then the CreateAndStartInstance works sucessfully or not |
|
|
Back to top |
|
 |
CHF |
Posted: Mon Sep 13, 2004 9:21 am Post subject: |
|
|
 Master
Joined: 16 Dec 2003 Posts: 297
|
Thanks Vennela
I have overlooked his message. I imagined he is getting the reply only when the message fails. _________________ CHF  |
|
Back to top |
|
 |
beth_carlin |
Posted: Mon Sep 13, 2004 11:02 am Post subject: sorry I was not clear |
|
|
Acolyte
Joined: 08 Jun 2004 Posts: 64
|
I am very sorry ...my description was not clear enough. I would like to explain
a bit clearer.
1) after a successful put on EXEXMLINPUTQ and the <ProcessTemplateCreateAndStartInstance>
WORKS ..there is a reply msg on the queue ...there is no <RC> tag
the (good ) xml msg on the reply queue is as follows:
<WfMessage>
<WfMessageHeader>
<ResponseRequired>No</ResponseRequired>
<UserContext>This is my return data</UserContext>
</WfMessageHeader>
<ProcessTemplateCreateAndStartInstanceResponse>
<ProcessInstance>
<ProcInstID>UAAAAAEAJQAAAAAAAAAAAAAAAAABACSAAAAAAAAAAAAAUA==</ProcInstID>
<ProcInstName>MyApproval$AAAAAQAlAAAAAAAAAAAAAA==</ProcInstName>
<ProcInstTopLevelName>MyApproval$AAAAAQAlAAAAAAAAAAAAAA==</ProcInstTopLevelName>
<ProcInstState>Running</ProcInstState>
<LastStateChangeTime>2004-09-10 15:08:06.576000</LastStateChangeTime>
<LastModificationTime>2004-09-10 15:08:06.576000</LastModificationTime>
<ProcTemplID>UQAAAAEAJIAAAAAAAAAAAABR</ProcTemplID>
<ProcTemplName>Approval</ProcTemplName>
<ProcTemplValidFromDate>2004-08-26 20:28:27.378000</ProcTemplValidFromDate>
<Icon>FMCBP
2) after a successful put on EXEXMLINPUTQ and the <ProcessTemplateCreateAndStartInstance>
FAILS ...there is a also reply msg on the queue ..and .there is <RC> tag. The xml msg is as follows:
<WfMessage>
<WfMessageHeader>
<ResponseRequired>No</ResponseRequired>
</WfMessageHeader>
<GeneralError>
<Exception>
<Rc>1100</Rc>
<Parameters>
<Parameter>Fatal Error at (line 1, char 1): Invalid document structure </Parameter>
</Parameters>
<MessageText>FMC01100E Incorrect XML document. The message that is returned by the XML parser is: Fatal Error at (line 1, char 1): Invalid document structure
</MessageText>
so I am currently reading the msg from the reply queue using only MQ API and then look for string <RC>xxx
if there is one...then I know it fails....
what I would like to know is
if there is a better way to check using MQWF API to do this ? |
|
Back to top |
|
 |
vennela |
Posted: Mon Sep 13, 2004 11:09 am Post subject: |
|
|
 Jedi Knight
Joined: 11 Aug 2002 Posts: 4055 Location: Hyderabad, India
|
When you send an XML message to your EXEXMLINPUTQ you can specify <ResponseRequired> to
YES
NO
IfError
So, in your case specify IfError and you will get messages only when you have a problem |
|
Back to top |
|
 |
beth_carlin |
Posted: Mon Sep 13, 2004 11:47 am Post subject: thx very much I will try this |
|
|
Acolyte
Joined: 08 Jun 2004 Posts: 64
|
thx very much I will try this |
|
Back to top |
|
 |
|