Author |
Message
|
Testo |
Posted: Thu Jul 15, 2004 11:54 pm Post subject: MsgSet for RFH2?! |
|
|
 Centurion
Joined: 26 Feb 2003 Posts: 120 Location: Italy - Milan
|
Is it possible to define a message set for an RFH2 header or is this possible only for the body?
This is because I work with WBI FN (Financial Networks) where commands are sent via RFH2 'XML-like' commands and I would like to create a message structure also for these headers...
Thanks,
Andrea Tedone
IBM IT Specialist |
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Jul 16, 2004 7:07 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
The RFH2 header should automatically be parsed, and be in the message tree at InputRoot.MQRFH2 or some such. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
shanson |
Posted: Fri Jul 16, 2004 7:26 am Post subject: |
|
|
 Partisan
Joined: 17 Oct 2003 Posts: 344 Location: IBM Hursley
|
I think Testo wants the ability to use a model of his 'extended' RFH2 definition in the toolkit, for ESQL code assist purposes? Only the skeleton IBM-defined RFH2 folders appear in the 'pre-canned' RFH2 model in the tooling.
The best way to do this is to create an XML schema for the RFH2 and import this into a new message set with MQRFH2 as the runtime parser message set property. Then you can the message editor to add the extended definitions.
To save you the first step, here's the XML schema for the IBM-defined RFH2:
<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<xsd:complexType name="MQRFH2_TYPE">
<xsd:sequence>
<xsd:element maxOccurs="1" minOccurs="1" name="StrucId" nillable="false">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="4"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="1" name="Version"
nillable="false" type="xsd:int">
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="1" name="StrucLength"
nillable="false" type="xsd:int">
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="1" name="Encoding"
nillable="false" type="xsd:int">
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="1"
name="CodedCharSetId" nillable="false" type="xsd:int">
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="1" name="Format" nillable="false">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:maxLength value="8"/>
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="1" name="Flags"
nillable="false" type="xsd:int">
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="1"
name="NameValueCCSID" nillable="false" type="xsd:int">
</xsd:element>
<xsd:sequence maxOccurs="unbounded" minOccurs="0">
<xsd:element maxOccurs="1" minOccurs="0" name="mcd">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Msd" minOccurs="0" maxOccurs="1" type="xsd:string"/>
<xsd:element name="Set" minOccurs="0" maxOccurs="1" type="xsd:string"/>
<xsd:element name="Type" minOccurs="0" maxOccurs="1" type="xsd:string"/>
<xsd:element name="Fmt" minOccurs="0" maxOccurs="1" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="0" name="psc">
<xsd:complexType>
<xsd:sequence>
<xsd:any/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="0" name="pscr">
<xsd:complexType>
<xsd:sequence>
<xsd:any/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element maxOccurs="1" minOccurs="0" name="usr">
<xsd:complexType>
<xsd:sequence>
<xsd:any/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="MQRFH2" type="MQRFH2_TYPE">
</xsd:element>
</xsd:schema>
Last edited by shanson on Fri Jul 16, 2004 7:37 am; edited 1 time in total |
|
Back to top |
|
 |
JT |
Posted: Fri Jul 16, 2004 7:28 am Post subject: |
|
|
Padawan
Joined: 27 Mar 2003 Posts: 1564 Location: Hartford, CT.
|
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Jul 16, 2004 7:40 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
shanson wrote: |
I think Testo wants the ability to use a model of his 'extended' RFH2 definition in the toolkit, for ESQL code assist purposes? Only the skeleton IBM-defined RFH2 folders appear in the 'pre-canned' RFH2 model in the tooling. |
Can you explain this a little more?
Do you mean that only some predefined fields will be available for Code Assist... ?
Or that only some predefined fields will be parsed and exist as elements in the MQRFH2 message subtree? _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
shanson |
Posted: Fri Jul 16, 2004 7:48 am Post subject: |
|
|
 Partisan
Joined: 17 Oct 2003 Posts: 344 Location: IBM Hursley
|
jefflowrey wrote: |
Do you mean that only some predefined fields will be available for Code Assist... ? |
Exactly.
jefflowrey wrote: |
Or that only some predefined fields will be parsed and exist as elements in the MQRFH2 message subtree? |
Absolutely not. The whole RFH2 will appear. |
|
Back to top |
|
 |
jefflowrey |
Posted: Fri Jul 16, 2004 7:53 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
That's what I expected, but it was a little unclear.
So, if Testo wanted, he could spend the time and effort to create a Schema and debug it and import it... all so he could get field names to show up when he hit Ctrl-space.  _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
Testo |
Posted: Fri Jul 16, 2004 8:36 am Post subject: I've been unwired a bit... |
|
|
 Centurion
Joined: 26 Feb 2003 Posts: 120 Location: Italy - Milan
|
I spent the whole day at the customer site and I was not able to see all your useful comments.
My idea to create a message structure for the RFH2 header is to be able to perform a sort of validation of the incoming message against a message set (and setting it in the MQInput node for instance) or a XML validation node.
But you added so many useful inputs that I'm going to study a bit about it...
Cheers,
Andrea |
|
Back to top |
|
 |
|