ソース モジュールやリストでの値の検索、ターゲット モジュールでの値の表示に LOOKUP 関数を使用します。
たとえば、評価と地域に基づいて、モジュール内で各従業員の給与を検索できます。その後、結果モジュールに給与を表示できます。
Values to lookup[LOOKUP:Mapping, LOOKUP:Mapping 2]
引数
引数 | データ型 | 説明 |
Values to lookup | 数値、ブール値、日付、時間軸、リスト、又はテキスト形式のライン アイテム | 値を検索するデータ ソース。モジュールのライン アイテムかリスト プロパティを指定でき、すべてのデータ形式に対応しています。 ソースは次の構文にすることができます。
または
|
Mapping | リスト、日付、時間形式のライン アイテム、又はソースのプロパティ | マッピングとは、相互参照条件のことです。データ型がリスト又は時間軸のライン アイテムを指定できます。ソースのプロパティ又は日付データ型も指定できます。マッピングでは、ソースのライン アイテムまたはプロパティをターゲット ライン アイテムにマッチングします。 共通のディメンションでソースとマッピングの相互参照をリンクする必要があります。詳細については「LOOKUP の例」を参照してください。 複数の引数をマッピングとして入力できます。引数はカンマで区切る必要があります。例:
|
LOOKUP 関数はソースの引数と同じデータ型で結果を返します。
LOOKUP と時間軸
マッピング ライン アイテムのデータ型よりソース ライン アイテムのタイムスケールが細かい場合に LOOKUP を使用できます。また、マッピング ライン アイテムのディメンションよりもターゲット ライン アイテムのディメンションのタイムスケールが細かい場合にも LOOKUP を使用できます。
ただし、結果で使用するタイム スケールがソースにない場合、LOOKUP で 0 が返されます。 たとえば、結果で半年の合計を選択し、それをソースで選択しなかった場合、LOOKUP では 0 が返されます。
LOOKUP を使用するための手順
LOOKUP を使用するための手順は以下のとおりです。
- ターゲット モジュールでターゲット ライン アイテムの数式エディターを開きます。
- (ターゲットと異なる場合は) ソース モジュールを開き、ライン アイテムかリスト プロパティの見出しを選択します。
- ターゲット モジュールのエディターに「
[LOOKUP:
」と入力します。 - ターゲットと異なる場合はマッピング条件を含むモジュールを開き、マッピングに使用するライン アイテムを選択します。以下のいずれかを選択します。
- リスト データ型
- 時間軸または日付データ型
- リスト プロパティ
module.lineitem
又はlist.property
という形式でマッピング条件を入力することもできます。
- マッピング条件が複数ある場合は、条件ごとにカンマで区切って末尾に
]
を付けます。例:Pay Table.BasicPay[LOOKUP:Grade, LOOKUP: Region]
構文の例
Pay Table.BasicPay[LOOKUP:Grade, LOOKUP: Region]
各パラメーターの説明は以下のとおりです。
Pay Table
: ソース モジュールBasicPay
: ソース モジュールのライン アイテムGrade
、Region
: それぞれ、ソース モジュールのディメンションと結果モジュールのライン アイテム
追加情報
LOOKUP を使用する状況の詳細については「数式の使用上のヒント」を参照してください。
計算エンジンの機能の違い
Polaris では、LOOKUP 関数で複合階層と非複合階層の集計アイテムの値が返されます。Classic エンジンでは複合階層の集計アイテムの値、及び非複合階層のライン アイテムのデフォルト値が返されます。
Polaris では、検索する値より大きいタイム スケールで結果ライン アイテムに LOOKUP 関数を使用することはできません。Classic エンジンではこの場合に値 0 が返されます。
Polaris では、ターゲット ライン アイテムでマッピング ライン アイテムを参照できない場合、LOOKUP が無効になります。