LOOKUP 関数
LOOKUP 関数は、指定した管理項目の値から、異なるビューにおけるデータの管理項目の値をコピーできる関数です。
計算結果の型は、コピーした管理項目に応じます。
LOOKUP 関数を使うと、例えば次のような計算ができるようになります。
- 社員番号が一致する「氏名」を設定する
使い方
キーとなる値
を使って、参照元ビュー
に指定したビューの参照元ビューのキー管理項目
の値を参照します。
一致するデータがあれば、関数を設定している管理項目に、参照元ビューのコピー管理項目
の値がコピーされます。
一致するデータがなければ、見つからなかったときの値
が設定されます。
LOOKUP(参照元ビュー, 参照元ビューのキー管理項目, 参照元ビューのコピー管理項目, キーとなる値, 見つからなかったときの値)
引数 | 設定する値 | 説明 | 備考 |
---|---|---|---|
参照元ビュー | コピーされる管理項目が存在するビュー名 | 参照元のビューです。 | ビュー名を'(シングルクォート)で囲みます。 マルチアプリケーションを利用している場合、指定できるビューは次のとおりです。
|
参照元ビューのキー管理項目 | 参照元ビューのキーとなる管理項目名 | 参照のキーとなる管理項目です。 | 管理項目名を '(シングルクォート)で囲みます。 |
参照元ビューのコピー管理項目 | 参照元ビューでコピーされる管理項目名 | コピーされる管理項目です。 | 管理項目名を '(シングルクォート)で囲みます。 |
キーとなる値 | 文字列または数値 LOOKUP を設定したテーブルの管理項目 |
参照のキーとなる値です。 | 文字列を指定する場合は、値を '(シングルクォート)で囲みます。 管理項目を指定する場合は、「$項目名」のように、管理項目名の先頭に $(ドル記号)を付けます。 |
見つからなかったときの値 | 数値または文字列 | 一致するデータが見つからなかったときに設定する値です。 | 文字列を指定する場合は、値を '(シングルクォート)で囲みます。 |
例えば、次の関数が「注文履歴」テーブルの「商品名」に設定されているとします。
LOOKUP を設定したテーブルの「コード」の値と、「商品マスター」ビューの「コード」の値が一致するデータがあった場合に、「商品名」の値がコピーされて設定されます。
一致するデータがなければ「未登録」が設定されます。
LOOKUP('商品マスター','コード','商品名',$商品コード,'未登録')
「商品マスター」が次のようなデータの場合、「注文履歴」の「商品コード」が 00002 のとき、LOOKUP を設定している管理項目にノートという値が設定されます。
コード | 商品名 | 単価 |
---|---|---|
00001 | ボールペン | 100 円 |
00002 | ノート | 150 円 |
使用例
社員番号が一致する「氏名」を設定する
「メンバーテーブル」に、「社員番号」「氏名」という管理項目があったとします。
管理項目の「氏名」に次の関数を設定すると、 データが更新されたときに、社員番号が一致する「メンバーテーブル」の「氏名」の値が反映されます。
LOOKUP('メンバーテーブル','社員番号','氏名',$社員番号,'未登録の社員番号です。')