ブール関数
名前が@ISで始まるEssbase計算関数のほとんどは、ブール値(TRUEまたはFALSE)を返します。ブール関数は、条件付きIFテスト、およびメンバー式のロジックを定義する場合に役立ちます。
ブール関数はTRUEまたはFALSEを返します(それぞれ1または0)。ブール関数は通常、条件付きテストを提供するためにIFコマンドと組み合せて使用されます。ただし、数値を生成するため、ブール関数をメンバー式の一部として使用することもできます。
ブール関数は、現在のメンバーの組合せの特性に基づいて適用する式を決定できるため、便利です。たとえば、入力データを含むディメンション内のメンバーに計算を制限する場合があります。この場合、@ISLEV (dimName, 0)に基づくIFテストを使用する計算を前置きします。
関数パラメータの1つが、@@ISMBR (Sales->Budget)のようなディメンション間メンバーであるとします。このときTRUEの値を返すには、ディメンション間メンバーのすべての部分が現在のセルのすべての部分と一致する必要があります。
次のクイックリファレンス表で、「現在のメンバー」とは、現在関数が計算中のメンバーを意味します。memberなどのイタリック体の単語は、関数に提供する情報を大まかに示します。詳細は、個々の関数のトピックを参照してください。
表3-5 ブール関数
関数 | 条件テスト |
---|---|
@ISACCTYPE | 現在のメンバーが特定のaccounts tagを持っているかどうか。 |
@ISANCEST | 現在のメンバーがmemberの祖先であるかどうか。 |
@ISCHILD | 現在のメンバーがmemberの子であるかどうか。 |
@ISDESC | 現在のメンバーがmemberの子孫であるかどうか。 |
@ISGEN | 現在のメンバーのdimensionがgeneration内であるかどうか。 |
@ISIANCEST | 現在のメンバーが、memberと同じメンバーまたは祖先であるかどうか。 |
@ISICHILD | 現在のメンバーが、memberと同じメンバーまたは子であるかどうか。 |
@ISIDESC | 現在のメンバーが、memberと同じメンバーまたは子孫であるかどうか。 |
@ISIPARENT | 現在のメンバーが、memberと同じメンバーまたは親であるかどうか。 |
@ISISIBLING | 現在のメンバーが、memberと同じメンバーまたは兄弟であるかどうか。 |
@ISLEV | 現在のメンバーのdimensionがlevel内であるかどうか。 |
@ISMBR | 現在のメンバーがmemberであるか、member list内で見つかるか、別の関数で返されるrange内で見つかるかどうか。 |
@ISMBRUDA | 指定したmemberに対して指定したユーザー定義属性文字列が存在するかどうか。 |
@ISPARENT | 現在のメンバーがmemberの親であるかどうか。 |
@ISRANGENONEMPTY | 指定した範囲にデータ値が存在するかどうか。 |
@ISSAMEGEN | 現在のメンバーが、memberと同じ世代内であるかどうか。 |
@ISSAMELEV | 現在のメンバーが、memberと同じレベル内であるかどうか。 |
@ISSIBLING | 現在のメンバーがmemberの兄弟であるかどうか。 |
@ISUDA | 現在のメンバーのdimensionに、特定のユーザー定義属性文字列があるかどうか。 |