ClosingPeriod

EssbaseのMDX ClosingPeriod関数は、レイヤーの最後の子孫、または時間ディメンションの最後の子を返します。

構文

ClosingPeriod ( [ layer [,member ]] )

パラメータ

layer

レイヤー仕様。

member

オプションのメンバー仕様。省略した場合、時間ディメンションの最後の子が想定されます(たとえば、Sample BasicのQtr4)。

ノート

この関数の戻り値は、入力によって異なります。

  1. layer引数とmember引数の両方が入力として指定された場合、Closingperiodは、入力レイヤーの入力メンバーの最後の子孫を返します。たとえば、Closingperiod(Year.generations(3), Qtr3)Sepを返します。入力memberlayerが同じレイヤーである場合、出力は入力メンバーです。たとえば、Closingperiod(Year.generations(3), Sep)Sepを返します。

  2. layer引数のみが指定された場合、入力メンバーは、layer引数で使用されたディメンションの現在のメンバーであると見なされます。Closingperiodは、入力レイヤーで、そのディメンションの最後の子孫を返します。たとえば、Closingperiod(Year.generations(3))Decを返します。

  3. 引数が指定されない場合、入力メンバーは時間ディメンションの現在のメンバーであると見なされ、ClosingPeriodはそのメンバーの最後の子を返します。時間としてタグ付けされたディメンションがない場合、引数なしでこの関数を使用しないでください。

次の問合せ:

WITH
MEMBER [Measures].[Starting Inventory] AS
'
IIF (
 IsLeaf (Year.CurrentMember),
  [Measures].[Opening Inventory],
  ([Measures].[Opening Inventory],
   OpeningPeriod (
     [Year].Levels(0),
     [Year].CurrentMember
   )
  )
)'

MEMBER [Measures].[Closing Inventory] AS
'
IIF (
   Isleaf(Year.CurrentMember),
    [Measures].[Ending Inventory],  
   ([Measures].[Closing Inventory],
    ClosingPeriod (
    [Year].Levels(0),
    [Year].CurrentMember
    )
)
)'
SELECT
CrossJoin (
 { [100-10] },
 { [Measures].[Starting Inventory], [Measures].[Closing Inventory] }
)
ON COLUMNS,
Hierarchize ( [Year].Members , POST)
ON ROWS
FROM Sample.Basic

返すグリッド:

表4-46 MDX例からの出力グリッド

(軸) 100-10 100-10
(軸) Starting Inventory Closing Inventory
Jan 14587 14039
Feb 14039 13566
Mar 13566 13660
Qtr1 14587 13660
Apr 13660 14172
May 14172 15127
Jun 15127 15580
Qtr2 13660 15580
Jul 15580 14819
Aug 14819 14055
Sep 14055 13424
Qtr3 15580 13424
Oct 13424 13323
Nov 13323 13460
Dec 13460 12915
Qtr4 13424 12915
Year 14587 12915