リスト内の特定のアイテムの位置を決定するには、ITEMLEVEL を使用します。リストはアイテムのデータ型に基づいて識別されます。この関数を使用すると、アイテムからそのルート祖先または最も遠い最下層の子孫までの距離を見つけることができます。
構文
ITEMLEVEL(Item [, Direction])
引数
| 引数 | データ型 | 説明 |
| Item | リスト アイテム | ルート祖先または最も遠い最下層の子孫までの距離が返されるリスト アイテム。 |
| Direction (オプション) | キーワード | 距離を測定する方向を決定します。 キーワードは
|
ITEMLEVEL 関数は数値を返します。
計算エンジンの機能の違い
この関数は Polaris 計算エンジンでのみ使用できます。
構文の例
ITEMLEVEL(Product1)
「Products」というリストに属するアイテム「Product1」を例に考えてみましょう。この関数は、「Product1」からそのルート祖先までの「Products」リスト内のアイテムの数を返します。カウントにはそのアイテム自体も含まれます。
ITEMLEVEL(Category1, LEAF)
「Categories」というリストに属するアイテム「Category1」を例に考えてみましょう。この関数は、「Categories」リスト内の「Category1」からその最も遠い子孫までのアイテム数を返します。カウントにはそのアイテム自体も含まれます。
追加情報
関数の結果は、リストの種類とリスト内のリスト アイテムの位置によって異なります。主なポイントは以下のとおりです。
- この関数ではリスト内のアイテムのみをカウントします。リストはアイテムのデータ型に基づいて識別されます。
- 次の場合は 0 が返されます。
ROOT方向で Item にルート祖先がない。LEAF方向で Item に最下層の子孫がない。
- 指定されたリスト内にリスト アイテムのルート ノードまたは最下層ノードがない場合、結果は 0 になります。
- リスト アイテムが空白の場合、結果は 0 になります。
- トップレベル アイテムは、対応するリストの (一意の) ルートとして扱われます。
例
次の表は、ツリー ビューから表示されるリスト「Products」の構造を表しています。
| All products | |||
| Electronics | |||
| Laptops | |||
| Gaming laptop | |||
| Phones | |||
| Furniture | |||
| Chairs |
- 「
All products」には「Electronics」と「Furniture」という二つの子があります。 - 「
Electronics」には「Laptops」と「Phones」という二つの子があります。 - 「
Laptops」には「Gaming laptop」という一つの子があります。 - 「
Furniture」には「Chairs」という一つの子があります。
三つのライン アイテムがある次のモジュールを例に考えてみましょう。
- 「
Item」 には「Products」のすべてのリスト アイテムが含まれています。 - 「
Result 1」と「Result 2」には、「Item」のデータを含むITEMLEVEL式があります。
| Item | Gaming laptop | Laptops | Phones | Electronics | Chairs | Furniture | All products |
Result 1 | 4 | 3 | 3 | 2 | 3 | 2 | 1 |
Result 2 | 1 | 2 | 1 | 3 | 1 | 2 | 4 |
ITEMLEVEL(Item)では、Item のルート祖先の数とそれ自体をカウントします。ITEMLEVEL(Item, LEAF)では、Item の最も遠い子孫までのパスにあるアイテムの数と、それ自体をカウントします。
ここでは「All Products」がトップ レベルにあり、その最も遠い子孫は 4 レベル下の「Gaming laptop」であるため、ITEMLEVEL(All Products, LEAF) は 4 を返します。「Gaming Laptop」は最も遠い最下層アイテムであるため、そのルート祖先は 4 レベル上にあり、最下層値は 1 です。