HTTP セッション詳細はサービス・アクセス変数で保持されます。 リクエスターのセッションの存続期間は、変数が宣言されている場所によって異なります。例えば、関数呼び出しで 変数が宣言されている場合、リクエスターのセッションは、 その関数がスコープ内にある間存続します。変数がライブラリーで宣言されている 場合は、リクエスターのセッションは、そのライブラリーがスコープ内にある間 保持されます。EGL ステートフル REST サービスにアクセスする場合は、変数がスコープから 外れるのが早すぎることがないように変数を宣言してください。
ExternalType GETREC type HostProgram {platformData=[@i5OSProgram{ programName="GETREC",
programType=NATIVE, isServiceProgram=false, libraryName="*LIBL"}]}
function GETREC(CUST CUSTa10, EOF char(1), COUNT decimal(2,0)){ hostName="GETREC"};
end
hostName プロパティーは、関数プロトタイプで使用可能で、プログラム関数の名前を識別します。デフォルトは関数プロトタイプの名前です。
ワークベンチでは、IBM i のデータ型を、ホスト・ソースから Program Call Markup Language (PCML) 定義に変換します。次に、ワークベンチはこの定義を使用して、 外部型およびレコードを作成します。
PCML ファイルが保持される理由は 2 つあります。 第 1 に、以降のウィザードの実行で入力として使用するために このファイルを更新できます。例えば、複数のプログラムのエントリー・ポイントに対応 する PCML 定義をまとめることができます。 この定義を入力ファイルとして使用すると、ウィザードによって作成される外部型 では、すべてのエントリー・ポイントを反映できます。第 2 に、IBM 技術サポートの 担当者は、保持された PCML ファイルを、必要に応じてデバッグ・ツールとして 使用できます。
次の表に、IBM i 構造化レコードと EGL 構造化レコードの対応するデータ型をリストします。
| IBM i | 規則 | EGL 外部型の EGL データ型 | |
|---|---|---|---|
| char | charType = 1 バイト | CHAR (PCML の長さ) | |
| charType = 2 バイト | UNICODE (PCML の長さ) | ||
| int | 2 バイト (符号付き) | 精度 != 16、長さ = 2 | SMALLINT |
| 2 バイト (符号なし) | 精度 = 16、長さ = 2 | INT | |
| 4 バイト (符号付き) | 精度 != 32、長さ = 4 | BIGINT | |
| 4 バイト (符号なし) | 精度 = 32、長さ = 4 | BIGINT | |
| 8 バイト (符号付き) | 長さ = 8 | BIGINT | |
| packed | DECIMAL (PCML の長さ、PCML の精度) | ||
| zone | NUM (PCML の長さ、PCML の精度) | ||
| float | 長さ = 4 | SMALLFLOAT | |
| 長さ = 8 | FLOAT | ||
| byte | HEX (PCML の長さ * 2) | ||
EGL ではサポートされず、PCML によって変換されることもない IBM i のデータ型に対応する、ワークベンチにより作成された EGL レコードのフィールドを更新する必要がある場合があります。PCML の詳細は、IBM WebSphere Development Studio Client for iSeries® のオンライン・インフォメーション・センターにあります (http://publib.boulder.ibm.com/infocenter/iadthelp/v7r0/topic/com.ibm.etools.iseries.webtools.doc/topics/rdtcattr.html)。
01 P1 PIC 9(5) USAGE BINARY.
01 P2.
02 P2A PIC X(5) OCCURS 1 to 10 TIMES
DEPENDING ON P1.
次の表に、構造化レコードと非構造化レコードの、対応するデータ型をリストします。データ型が HEX または INTERVAL である、ワークベンチにより作成された非構造化レコード・フィールドを更新する必要がある場合があります。
| 構造化レコードのデータ型 | 非構造化レコードのデータ型 |
|---|---|
| BOOLEAN | BOOLEAN |
| CHAR、DBCHAR、MBCHAR、STRING、UNICODE | STRING |
| HEX | HEX |
| DATE | DATE |
| TIME | TIME |
| TIMESTAMP | TIMESTAMP |
| INTERVAL | INTERVAL |
| DECIMAL、BIN(長さ)、BIGINT、INT、MONEY、NUM、SMALLINT、SMALLFLOAT | 対応する数値型 |
| BIN(長さ、小数点以下の桁数)。ただし、小数点以下の桁数 > 0。 | NUM(長さ、小数点以下の桁数) |
| NUMC(長さ、小数点以下の桁数) | NUM(長さ、小数点以下の桁数) |
| PACF(長さ、小数点以下の桁数) | NUM(長さ、小数点以下の桁数) |