Skip to content
Adam Gardiner edited this page May 16, 2014 · 2 revisions

Many HFMCmd operations take a list of members to operate on. There are many different ways in which these lists of members can be specified:

Single members

A single member is the simplest kind of member specification. A single member is specified simply by entering the member name:

Scenario: Actual

For Entity members, it may be necessary to qualify the member by its parent name, depending on the operation being performed. However, if the parent is omitted, HFMCmd will use the default parent member for the Entity.

Entity: UnitedStates.NewYork

List of specific members

When multiple members are required, the simplest form is to simply list out the individual members. This can be done using the YAML array syntax, which has two variants:

  • In-line:

    Account: [Assets, Liabilities, Net_Profit]
    
  • Element-per-line:

    Account:
        - Assets
        - Liabilities
        - Net_Profit
    

Member ranges

When all members in a range are required, the member range syntax can be used. This consists of a start and end member, separated by either a colon or a dash:

Period: Jan-Dec

This will expand out to include the 12 months from Jan to Dec.

Level vs Generation Ranges

There is a subtle difference between the colon and dash forms for specifying a range. The colon form means a member range based on common generations, whereas the dash form means a member range based on common levels. This only makes a difference when a dimension contains a ragged hierarchy.

For example, if your Accounts dimension looks like this:

Account
    NetProfit
        NetIncome
            GrossMargin
                Sales
                Costs
                   ...
            AdminExpenses
            InterestCharges

Then the member range GrossMargin:InterestCharges would yield GrossMargin, AdminExpenses, and InterestCharges, whereas the member range GrossMargin-InterestCharges would be an error, as GrossMargin and InterestCharges do not share a common level number.

System Member Lists

Members can be specified using any of the built-in member lists, such as [Hierarchy], [Base] etc:

Entity: {[Hierarchy]}
Custom: {[Base]}
Period: {[Third Generation]}

System member lists can also be qualified to operate only a certain subset of the dimension, by prefixing the member list name with a member name:

Entity: {Regional.[Base]}
Account: {Assets.[Children]}

Application Member Lists

Finally, members can be specified using any of the application-defined member lists, defined through the Member List rules:

Account: {ProfitAndLoss}

Clone this wiki locally