$MVTRANS
MultiValue ファイルからフィールド・データを読み取ります。
Synopsis
$MVTRANS(mvfile,recID,fieldno,code)
パラメータ
mvfile | 引用符付きの文字列として指定される、VOC で定義されている MultiValue ファイル名。データ・ファイルが複数ある場合は、"dirname,datafile" または単に "datafile" のいずかで、mvfile を指定できます。 |
recID | 整数として指定される目的のレコードのレコード ID。 |
fieldno | 整数または数値でない文字列のいずれかです。整数の場合、fieldno は読み取るフィールドのフィールド番号を指定します。-1 の場合は、レコード全体のコンテンツを返します。このような使用方法は、ほとんどの MultiValue システムに対応しています。数値でない文字列の場合、fieldno はファイルのディクショナリを検索する属性を指定します。その属性が “D” データ定義エントリの場合、$MVTRANS はディクショナリに記録された対応するフィールド番号を使用してデータを検索します。このような使用方法は、UniData システムに対応しています。 |
code | 要求されたレコードが存在しない場合の動作を指定する文字コード。この文字コードは引用符付きの文字列として指定する必要があります。 |
説明
$MVTRANS 関数は、MultiValue ファイルからフィールド値を返します。READ 文とは異なり、$MVTRANS を発行する前に MultiValue ファイルを開くために OPEN 文を使用する必要はありません。
code パラメータは、無効なフィールドが要求されたときの $MVTRANS の応答方法を決定します。有効な文字コードは以下のとおりです。
"X" | 指定されたレコードまたはフィールドが見つからない場合、空の文字列を返します。 |
"V" | 指定されたレコードまたはフィールドが見つからない場合、空の文字列を返してからエラー・メッセージを返します。 |
"C" | 指定されたレコードまたはフィールドが見つからない場合、recID 値を返します。 |
"N" | 指定されたフィールド値が NULL の場合、recID 値を返します。 |
ObjectScript $MVTRANS 関数は、Cache MultiValue Basic TRANS 関数に相当します。
例
以下の例は、$MVTRANS 関数の使用法を示しています。TEST.FILE が存在しないため、code パラメータで指定されたエラー値を返します。
SET mydyn=$MVTRANS("TEST.FILE",6,1,"X")
WRITE !,"the field value:",mydyn
SET mydyn=$MVTRANS("TEST.FILE",6,1,"V")
WRITE !,"the field value:",mydyn
SET mydyn=$MVTRANS("TEST.FILE",6,1,"C")
WRITE !,"the field value:",mydyn
関連項目
-
"Caché MVBasic Reference" の "TRANS" 関数
-
"Caché MVBasic Reference" の "READ" 文
-
"Caché MVBasic Reference" の "STATUS" 文
-
"Caché MVBasic Reference" の "動的配列"