OpeningPeriod (MDX)
指定したレベルの子孫間の最初の兄弟を返します。必要に応じて、指定したメンバーを返します。
構文
OpeningPeriod( [ Level_Expression [ , Member_Expression ] ] )
引数
Level_Expression
レベルを返す有効な多次元式 (MDX) 式。
Member_Expression
メンバーを 1 つ返す有効な多次元式 (MDX) 式です。
解説
この関数は、主に時間ディメンションを使用することを目的としていますが、任意のディメンションで使用できます。
レベル式が指定されている場合、 OpeningPeriod 関数は、指定されたレベルを含む階層を使用し、指定したレベルの既定のメンバーの子孫間の最初の兄弟を返します。
レベル式とメンバー式の両方が指定されている場合、 OpeningPeriod 関数は、指定したレベルを含む階層内の指定されたレベルにある指定されたメンバーの子孫の最初の兄弟を返します。
レベル式もメンバー式も指定されていない場合、 OpeningPeriod 関数は、Time 型のディメンションの既定のレベルとメンバーを使用します。
Note
ClosingPeriod 関数は OpeningPeriod 関数に似ていますが、ClosingPeriod 関数は最初の兄弟ではなく最後の兄弟を返します。
例
次の例では、Date ディメンションの FY2002 メンバーの既定のメジャーの値を返します (Time 型)。 Fiscal Year レベルが [All] レベルの最初の子孫であり、Fiscal 階層が既定の階層であるため、このメンバーが返されます。これは、階層コレクションの最初のユーザー定義階層であり、FY2002 メンバーがこのレベルのこの階層の最初の兄弟であるためです。
SELECT OpeningPeriod() ON 0
FROM [Adventure Works]
次の例では、Date.Date 属性階層の Date.Date.Date レベルの 2001 年 7 月 1 日のメンバーの既定のメジャーの値を返します。 このメンバーは、Date.Date 属性階層の [All] レベルの子孫の最初の兄弟です。
SELECT OpeningPeriod([Date].[Date].[Date]) ON 0
FROM [Adventure Works]
次の例では、January, 2003 メンバーの既定のメジャーに対応する値が返されます。これは、Calendar ユーザー定義階層の Year レベルにある 2003 メンバーの子孫の最初の兄弟です。
SELECT OpeningPeriod([Date].[Calendar].[Month],[Date].[Calendar].[Calendar Year].&[2003]) ON 0
FROM [Adventure Works]
次の例では、July, 2002 メンバーの既定のメジャーに対応する値が返されます。これは、Fiscal ユーザー定義階層の Year レベルにある 2003 メンバーの子孫の最初の兄弟です。
SELECT OpeningPeriod([Date].[Fiscal].[Month],[Date].[Fiscal].[Fiscal Year].&[2003]) ON 0
FROM [Adventure Works]