汎用方式の要求: IMS

汎用方式の要求で File Manager ファイルにアクセスするために、IMS Service Provider は次の JSON を受け入れます。

{
    "resource" :
    {
        "ssid" : "string",
        "database" : "string",
        "psbMember" : "string",
        "pcbNumber" : "string",
        "pcbName" : "string",
        "regionType" : "string",
        "dataCcsid" : integer,
        "dbcsCcsid" : integer
    },
    "view" : 
    {
        "viewName" : "string",
        "viewCcsid" : integer
    },
    "operation" : 
    {
        "numSegments" : integer,
        "session" : Boolean,
        "token" : "string",
        "timeout" : integer
    },
    "position" : 
    {
        "segmentKeys" :
        [
            {
                "segmentName" : "string",
                "keyValue" : "string",
                "operator" : "string"
            }
        ]
    }  
}

汎用方式の要求のキー・フィールドについて、次の表で説明します。

注: (必須) という印が付けられているパラメーターは、初回の要求でのみ必要です。
キー 説明
resource (必須) IMS データ・リソースに関連するパラメーター。resource パラメーターは、データ・リソースからの単一または初回の読み取りを実行するときにのみ必要です。トークンが渡されるときの後続の読み取り要求では resource パラメーターは必要ありません。
ssid (必須) IMS サブシステム ID。
database (必須) IMS データベースの名前。
psbMember IMS プログラム仕様ブロック (PSB) メンバー名。これは、File Manager PSB データ・セット連結のメンバーです。psbMember が指定されていない場合、File Manager は、動的 PSB を生成しようとします (この生成が許可されている場合)。
pcbNumber プログラム連絡ブロック (PCB) の番号これは、PSB メンバー内での PCB の相対的な位置であり、数値でなければなりません。関連する PCB を pcbNumber または pcbName を使用して識別できます。デフォルトは 1です。
pcbName プログラム連絡ブロック (PCB) の名前。これは、PSB メンバー内の PCB ラベル名です。関連する PCB を pcbNumber または pcbName を使用して識別できます。
regionType (必須) IMS 領域タイプ。「BMP」または「DLI」にする必要があります。
dataCcsid リソース英数字データの CCSID。デフォルト値は 037 です。
dbcsCcsid グラフィックまたは 2 バイト・データの CCSID。デフォルト値は 930 です。これは dataCcsid と同じである可能性があり、GRAPHIC および DBCS フィールドをサポートするために必要になります。
view (必須) view パラメーターは IMS データベース・セグメントをマップします。view パラメーターは、IMS リソースから単一または初回の読み取りを実行する場合に必要です。トークンが渡されるときの後続の読み取り要求では view パラメーターは必要ありません。
viewName (必須) File Manager/IMS ビューの名前。例: MVS.DATASET(MYVIEW)。
viewCcsid ビューの CCSID。デフォルト値は 037 です。
operation operation パラメーターは、サービス・プロバイダーの動作に影響します。すべての operation パラメーターはオプションですが、パフォーマンス上の理由により、session および token パラメーターの正しい使用を理解するために役立ちます。
numSegments 取得するデータベース・セグメントの数。許容範囲は 0 から 10000 です。デフォルトは 1です。
session File Manager/IMS セッションを継続するか終了するかを示します。値 true はセッションを開始し (まだ開始していない場合)、後続の API 呼び出しにもアクティブ状態を維持するようサービス・プロバイダーに指示します。値 false は API 呼び出しが完了したらセッションを終了するようサービス・プロバイダーに指示します。
token 以前の API 応答で返されるセッション・トークン。トークンはアクティブな FM/IMS セッションを表し、"session" : true を設定する初回読み取りに続く以降の読み取りに使用できます。"session" : true の初回読み取り要求が成功すると、応答でトークンが返されます。
timeout FM/IMS 表示セッションを終了する前に非アクティブにできる時間 (秒)。0 から 28800 (8 時間) までの任意の値を指定できます。デフォルトは 300 (5 分) です。

この値が server.xml 構成の max_timeout より大きい場合、timeout 値は無視され、max_timeout 値が代わりに使用されます。

position position パラメーターは、IMS データベース内の読み取り位置に影響します。位置設定では、関連するデータベース・セグメントの名前とそのセグメントまでの階層パス、およびセグメント・キーの長さが判明している必要があります。位置設定は、読み取り要求が満たされる前に実行されます。
segmentKeys データベース・セグメント名と関連するキー値の配列。データベースの階層順で配列エレメントを指定します。配列にリストされる最後のセグメントが、位置設定先のセグメントとなるので注意してください。
segmentName 位置設定先またはその後のデータベース・セグメントの名前。
keyValue 位置設定先またはその後のセグメントのキーの必須値。
operator segmentKeys 配列内のセグメント/キー値エレメントに基づき位置設定するための論理演算子。operator には EQ (等しい) または GE (以上) を指定できます。デフォルトは、EQ です。

operator パラメーターは、segmentKeys 配列の最後のエレメント (つまり、位置設定先のセグメント) に対して指定した場合にのみ有効ですが、配列で指定されているすべてのセグメント/キー値割り当てに対して適用されます。

  • EQ を指定した場合、位置設定時に、配列内のすべてのセグメント/キー値エレメントの等価性が検査されます。
  • GE を指定し、データベースのルート・セグメントがキーによって順序付けられている場合、位置設定時に、テスト 次より大きいか次に等しい場合 が配列内のすべてのセグメント/キー値エレメントに対して適用されます。
  • GE を指定し、データベースのルート・セグメントがキーによって順序付けられていない場合、位置設定時に、ルート・セグメントの等価性が検査され、テスト 次より大きいか次に等しい場合 が配列内の他のすべてのセグメント/キー値エレメントに対して適用されます。