ソース モジュールやリストでの値の検索、ターゲット モジュールでの値の表示に LOOKUP 関数を使用します。 

たとえば、評価と地域に基づいて、モジュール内で各従業員の給与を検索し、それらを結果モジュールに表示できます。 

Values to lookup[LOOKUP:Mapping, LOOKUP:Mapping 2]

同じ式で SUM と LOOKUP を同時に使用しないでください。これに従わなかった場合、計算時間が極めて長くなることがあります。詳細については、「式とモデルのパフォーマンスへの式の影響 」を参照してください。

引数データ型説明
Values to lookup数値、ブール値、日付、時間軸、リスト、又はテキスト形式のライン アイテム値を取得するデータ ソース。モジュールのライン アイテム module.lineitem かリスト プロパティ list.property を指定でき、すべてのデータ形式に対応しています。
Mappingリスト、日付、時間形式のライン アイテム、又はソースのプロパティ

マッピングとは、相互参照条件のことです。データ型がリスト又は時間軸のライン アイテムを指定できます。ソースのプロパティ又は日付データ型も指定できます。マッピングでは、ソースのライン アイテムまたはプロパティをターゲット ライン アイテムにマッチングします。 

共通のディメンションでソースとマッピングの相互参照をリンクする必要があります。

複数の引数をマッピングとして入力できます。引数はカンマで区切る必要があります。例:  

Pay Table.BasicPay[LOOKUP:Grade, LOOKUP: Region, LOOKUP: Period, ...]

LOOKUP 関数は Values to lookup と同じデータ型で結果を返します。 

注記: Classic では、LOOKUP は複合階層の集計アイテムの値、及び非複合階層のライン アイテムのデフォルト値を返します。

マッピング ライン アイテムのデータ型よりソース ライン アイテムのタイムスケールが細かい場合に LOOKUP を使用できます。マッピング ライン アイテムのディメンションよりもターゲット ライン アイテムのディメンションのタイムスケールが細かい場合にも LOOKUP を使用できます。

ただし、結果で使用するタイム スケールがソースにない場合、LOOKUP で 0 が返されます。 たとえば、結果で半年の合計を選択し、それをソースで選択しなかった場合、LOOKUP では 0 が返されます。

LOOKUP を使用するための手順は以下のとおりです。

  1. ターゲット モジュールでターゲット ライン アイテムの数式エディターを開きます。
  2. (ターゲットと異なる場合は) ソース モジュールを開き、ライン アイテムかリスト プロパティの見出しを選択します。 
  3.  ターゲット モジュールのエディターに「[LOOKUP:」と入力します。
  4. ターゲットと異なる場合はマッピング条件を含むモジュールを開き、マッピングに使用するライン アイテムを選択します。以下のいずれかを選択します。
    • リスト データ型
    • 時間軸または日付データ型
    • リスト プロパティ

      module.lineitem 又は list.property という形式でマッピング条件を入力することもできます。
  5. マッピング条件が複数ある場合は、条件ごとにカンマで区切って末尾に  ] を付けます。例: Pay Table.BasicPay[LOOKUP:Grade, LOOKUP: Region]

Polaris では、LOOKUP 関数で複合階層と非複合階層の集計アイテムの値が返されます。Classic エンジンでは複合階層の集計アイテムの値、及び非複合階層のライン アイテムのデフォルト値が返されます。 

Polaris では、検索する値より大きいタイム スケールで結果ライン アイテムに LOOKUP 関数を使用することはできません。Classic エンジンではこの場合に値 0 が返されます。

Polaris では、ターゲット ライン アイテムでマッピング ライン アイテムを参照できない場合、LOOKUP が無効になります。

Polaris では、ターゲット ライン アイテムのディメンションに関連付けられていないディメンションがマッピング ライン アイテムにある場合、LOOKUP は無効になります。これには、マッピング ライン アイテムがライン アイテム サブセットによってディメンション化される場合が含まれます。 

Pay table.Basic pay[LOOKUP:Grade, LOOKUP: Region]

各パラメーターの説明は以下のとおりです。

  • Pay table: ソース モジュール
  • Basic pay: ソース モジュールのライン アイテム
  • GradeRegion: それぞれ、ソース モジュールのディメンションと結果モジュールのライン アイテム

LOOKUP を使用する状況の詳細については「数式の使用上のヒント」を参照してください。 

ソース モジュールやリストでの値の検索、マッピング条件を使用したターゲット モジュールでの値の表示に LOOKUP 関数を使用します。次の例は、モデル内のさまざまなシナリオでどのように LOOKUP を使用できるかを示したものです。各例を選択して展開します。