Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

$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" の "動的配列"

FeedbackOpens in a new tab