ESQL によるメッセージ・コレクションの作成

ESQL を使用してメッセージ・コレクションを作成できます。 メッセージ・コレクションの使用は、メッセージを構文解析のためにグループ化する必要がある場合、または特定のデータ構造 ( CICS® Transaction Server for z/OS® チャネル・データ構造など) を表すようにメッセージ・コレクションを構成する必要がある場合に役立ちます。

始める前に

  • アプリケーション、ライブラリー、または 統合プロジェクトを作成します。
  • 背景情報については、 メッセージ・コレクションを参照してください。

このタスクの概要

メッセージ・コレクションは、Properties ヘッダーと、Collection という 1 つのドメイン・エレメントで構成されるメッセージです。 Collection フォルダーには多数の子メッセージが含まれていて、それぞれには Properties フォルダーを 1 つと、多数のヘッダー (MQMD など)、および本体を入れることができます。 また、メッセージ・コレクションには、0 個以上の属性 (名前と値のペア) を指定できます。 属性名は、メッセージ・コレクションで固有でなければなりません。 メッセージ・コレクションの標準属性は、CollectionName と呼ばれる属性です。

以下の図は、メッセージ・コレクション構造の例を示しています。
これは、メッセージ・コレクションのツリーの図です。 その内容は、周囲のテキストで説明されています。

ESQL を使用してメッセージ・コレクションを作成して、構文解析のためにメッセージをグループ化したり、 CICS チャネル・データ構造などの特定のデータ構造を表すために構成する必要があるメッセージ・コレクションを作成したりすることができます。

ESQL を使用してメッセージ・コレクションを構成するには、以下の手順を実行します。

手順

  1. 以下の ESQL ステートメントを使用して、コレクションの Properties フォルダーを作成します。
    CREATE FIRSTCHILD of OutputRoot domain 'Properties' NAME 'Properties';
  2. 以下のステートメントを使用して、 Collection ドメイン・エレメントを作成します。
    CREATE LASTCHILD OF OutputRoot DOMAIN 'Collection';

    メッセージ・フォルダーと同様、ドメイン・エレメントは必ずメッセージの最後の子になります。

  3. 以下のステートメントを使用して、 CollectionNameというコレクション内の属性を設定します。
    SET OutputRoot.Collection.CollectionName = 'myCollectionName';
  4. 次の ESQL は、コレクション内にメッセージを作成するプロシージャー例を示しています。
    SET OutputRoot.Collection.foldername.Properties.MessageSet     = set;
    SET OutputRoot.Collection.foldername.Properties.MessageType    = type;
    SET OutputRoot.Collection.foldername.Properties.MessageFormat  = format;
    SET OutputRoot.Collection.foldername.Properties.Encoding       = encoding;
    SET OutputRoot.Collection.foldername.Properties.CodedCharSetId = ccsid;
    
    SET OutputRoot.Collection.foldername.domain.content=some data;