ORDER BY (拡張)
PCFT 3 BASIC SEQUENTIAL FILE
そのフィールドのデータに関連した小数点以下の桁数がある場合には、長さの指定 の後にスラッシュ (/) を入れてから、小数点以下の桁数を入れる必要があります。
長さ、スラッシュ、小数点以下の桁数の指定の間にスペースがあってはいけませ ん。
小数点以下の桁数を指定するときは、小数の数値の右端バイトからの桁数を参照し ます。データ・タイプが以下のいずれかでない限り、浮動小数点の数値に小数点の 位置を指定してはいけません。
v ASCII 数値
v 2 進数
v パック 10 進数
v ゾーン 10 進数
注: フィールドの小数点以下の桁数の範囲は、0〜9 またはその数値の小数点以下の 最大桁数のいずれか小さい方までです。転送機能では、フィールドに入るよう に数値を四捨五入することがあります。詳細については、83 ページの『データ の変換』を参照してください。
コメント項目: 次の制約事項に従って、ファイル記述ファイルにコメント行を入力 してください。
v フィールド記述子で最後に指定する項目はコメントです。コメントはオプション で、情報を提供するためだけの項目で、サイズの項目と 1 個のスペースで区切る 必要があります。データ転送機能によって作成される PCFL 項目 (RTOPC) に は、コメント・フィールドが含まれていません。
v コメントは、その行のスペース以外の最初の文字としてアスタリスク (*) で始め ます。
v 長さは 80 文字を超えてはいけません。
v コメントをファイル記述ファイルの最初のレコードにしてはいけません。
次にコメントの例を示します。
* This is a comment
ファイル記述ファイルの例
在庫ファイルのファイル記述ファイルの例です。
PCFDF
データの変換
転送機能では、AS/400 システムからワークステーションに、またはその逆に、デー タを転送するためにはデータの変換が必要です。どちらのタイプの転送の場合に も、必要な変換はレコードのサイズ、転送するデータのタイプ、使用しているワー クステーションのファイルのタイプ、システムのデータ・タイプ、およびデータ長
(場合によって) で決まります。
レコード・サイズ
転送される各レコードには、各フィールドにヌル値が含まれているかどうかを示す データが含まれています。このデータが原因で、iSeries システムとの間で送受信で きる最大データ・レコードの制限があります。
以下の式を使って、転送可能な最大レコード長を算出します。
v 4096 - (レコード内のフィールド数 + 2) = (最大レコード長)
データ・タイプ
転送機能によって、次のシステム・データ・タイプがサポートされます。
v 日付
v 時刻
v タイム・スタンプ
v 2 進データ
v 文字データ
v 16 進データ
v パック 10 進データ
v ゾーン 10 進データ
転送機能によって、次のワークステーション・データ・タイプがサポートされま す。
v BASIC 数値データ (以下を含む) – 倍精度データ
– 整数データ – 単精度データ
v 2 進データ
v 文字データ (以下を含む) – ASCII
– EBCDIC
v 16 進データ
v パック 10 進データ
v ゾーン 10 進データ
v ASCII 数値データ
日付、時刻、およびタイム・スタンプのデータ・タイプ
日付、時刻、およびタイム・スタンプの値は、特定の算術演算と文字演算で使用す ることができ、特定の文字定数と互換性がありますが、それらは文字でも数字でも ありません。
日付は、3 つの部分 (年、月、および日) から成り、暦のある時点を示しています。
年の範囲は、0001 〜 9999 です。非 SAA 形式の場合の年の範囲は、1940 〜 9999 です。月の範囲は、1 〜 12 です。日の範囲は、1 〜 x であり、x はその月により ます。
時刻とは、3 つの部分 (時、分、および秒) から成り、24 時間時計のある時刻を示 しています。時間の範囲は 0 〜 24 であり、他の値の範囲は 0 〜 59 です。
タイム・スタンプは、7 つの部分 (年、月、日、時、分、秒、およびマイクロ秒) か ら成り、日付と、指定されたマイクロ秒を含む時刻を表します。タイム・スタンプ の最大長は、26 の文字ストリングです。
日付、時刻、およびタイム・スタンプは、結果フィールドに割り当てることができ ます。日付を表す有効な文字ストリングを日付フィールドと比較したり、時刻を表 す有効な文字ストリングを時刻フィールドと比較したりすることができます。
BASIC 数値データ
倍精度データ: 倍精度データは、ワークステーションでしか定義されません。
iSeries システムでは、このデータ・タイプはサポートされません。倍精度データは
BASIC のアプリケーションで使用されます。このデータ・タイプは、
2.938735877055719 x 10-39 から 1.701411834604692 x 1038 までの正数または負数で す。倍精度の数値は 8 バイトで記録され、7 バイトが仮数を表し、1 バイトが指数 を表します。
整数データ: 整数データは、ワークステーションでしか定義されません。整数デー
タは BASIC のアプリケーションで使用されます。整数データは 2 バイトで保管さ
れ、-32768 〜 32767 の範囲の整数を表します。
単精度データ: 単精度データは、ワークステーションでしか定義されません。
iSeries システムでは、このデータ・タイプはサポートされません。単精度データは
BASIC のアプリケーションで使用されます。このデータ・タイプは、
2.938736 x 10-39 から 1.701412 x 1038 までの正数または負数です。単精度の数値は 4 バイトで記録され、3 バイトが仮数を表し、1 バイトが指数および符号を表しま す。
2 進データ
このデータは、2 の補数形式で符号つきまたは符号なしの数値を表します。ワーク ステーションでは長さが 1、2、3、または 4 バイトの 2 進数を使用することがで きますが、 iSeries システムでは、長さ 2 バイトまたは 4 バイトの数値しか使用す ることができません。高位ビットの左側のビットで、その数値の符号が決まります
(正の場合には 0、負の場合には 1)。AS/400 システムではフィールドの左側の高位
バイトにデータが記録され、ワークステーションではフィールドの右側の高位バイ トにデータが保管されます。
小数点以下の桁数 (ファイル記述で指定されている場合) は、小数点の右側の小数部 分の桁数を表します。小数点以下の桁数があることは、ファイル記述で指定しま す。
たとえば、2 進数の 3BF5 は 10 進数の 15349 と同じで、 2 進数の FFB4 は 10 進数の -76 と同じです。
SBCS の文字データ
このデータは、特定の文字および記号を表すビット・ストリングと考えることがで きます。
文字を ASCII から EBCDIC に、また EBCDIC から ASCII に変換するために使用 するテーブルには、次のような値が含まれます。
v ワークステーションの ASCII 文字と iSeries の EBCDIC 文字が正確に一致する 値。
v 変換できない文字に置換文字が選択される値。
転送機能では、このテーブルを使用してデータが ASCII から EBCDIC に、また
EBCDIC から ASCII に変換されます。これらのデフォルト・テーブルを変換するに
は、変換テーブル・ユーティリティー (TRTABLE) を使用します。
注: 変換される場合、ASCII (SBCS) データには日付、時刻、タイム・スタンプが含 まれます。変換されない場合、EBCDIC データには日付、時刻、タイム・スタ ンプが含まれます。
16 進データ
このデータは、16 を基底とする数値を表すビット・ストリングと考えることができ ます。たとえば、次のビット・ストリングは X’3D’ で表すことができます。
0011 1101