☝️Small business or a startup? See if you qualify for our special offer.
+
All documentation

getMembers

getMembers(uniqueName: String, memberName: String, callbackHandler: Function): Object[]

Returns a list of members for the specified field. Note that getMembers has an async equivalent — getMembersAsync.

Parameters

Parameter/TypeDescription
uniqueName
String
The field’s unique name.
memberName
String
optional The field member's name. This property is used for the multilevel hierarchies. Specify the memberName to get children of the specified member. Learn more in the Usage section.
Only for the "api", "elasticsearch", and "microsoft analysis services" data sources types.
callbackHandler
Function
optional A JS function that is called when a list of members is loaded. The following data is passed to the callbackHandler:The callbackHandler is needed when working with server-side data sources since they do not provide all the data at once but on demand.
If the required field members are already loaded to the component (e.g., when the field is selected in the slice), the callbackHandler will return the result instantly.
Only for the "api", "elasticsearch", and "microsoft analysis services" data sources.

Usage

JSON and CSV data sources

When using the "json" or "csv" data source type, only the uniqueName parameter is needed. Other parameters will be ignored.

If the field is a multilevel hierarchy, getMembers() returns a tree where each field member has a full list of its children.

Other data source types

When using the "api", "elasticsearch", or "microsoft analysis services" data source type, call getMembers() with the uniqueName, memberName, and callbackHandler parameters.

If the field is not a multilevel hierarchy, set the memberName to an empty string.

If the field is a multilevel hierarchy, setting the memberName to an empty string returns members of the first hierarchy level. If you want to get the children of a specific member, specify its name in the memberName. Check out an example.

Returns

An array of ResultMemberObjects that describe the field members.

For server-side data sources, if data loading is in progress and the callbackHandler is not specified, an empty array will be returned.

ResultMemberObject

This object describes a member of a field. It has the following properties:

Property/TypeDescription
uniqueName
String
The member's unique name.
caption
String
The member's caption.
dimensionName
String
The name of the dimension to which the field member belongs.
hierarchyName
String
The unique name of the field to which the member belongs.
hierarchyCaption
String
The field’s caption.
parentMember
String
The name of the member’s parent in the hierarchy.
isLeaf
Boolean
Indicates whether the member is a leaf node (true) or not (false).
children
ResultMemberObject[]
Сhildren of the current member. If there are no children (isLeaf: true), the children property is equal to [].
Only for "json" and "csv" data sources.

Examples

1) CSV data source, where the Category field has only one level:

pivot.getMembers("Category"); 

/* method returns an array of ResultMemberObjects
[
{
"uniqueName": "category.[accessories]",
"caption": "Accessories",
"dimensionName": "Category",
"hierarchyName": "Category",
"hierarchyCaption": "Category",
"parentMember": "category.[(all member)]",
"isLeaf": true,
"children": []
},
{
"uniqueName": "category.[bikes]",
"caption": "Bikes",
"dimensionName": "Category",
"hierarchyName": "Category",
"hierarchyCaption": "Category",
"parentMember": "category.[(all member)]",
"isLeaf": true,
"children": []
},
// ...
]
*/

Live example

2) CSV data source, where the Geography field has more than one level:

pivot.getMembers('Geography'); 

/* method returns an array of objects
[
{
"uniqueName": "geography.[midwest]",
"caption": "Midwest",
"dimensionName": "Geography",
"hierarchyName": "Geography",
"hierarchyCaption": "Geography",
"parentMember": "geography.[(all member)]",
"isLeaf": false,
"children": [
{
"uniqueName": "geography.[midwest].[illinois]",
"caption": "Illinois",
"dimensionName": "Geography",
"hierarchyName": "Geography",
"hierarchyCaption": "Geography",
"parentMember": "geography.[midwest]",
"isLeaf": false,
"children": [
{
"uniqueName": "geography.[midwest].[illinois].[chicago]",
"caption": "Chicago",
"dimensionName": "Geography",
"hierarchyName": "Geography",
"hierarchyCaption": "Geography",
"parentMember": "geography.[midwest].[illinois]",
"isLeaf": true,
"children": []
},
{
"uniqueName": "geography.[midwest].[illinois].[springfield]",
"caption": "Springfield",
"dimensionName": "Geography",
"hierarchyName": "Geography",
"hierarchyCaption": "Geography",
"parentMember": "geography.[midwest].[illinois]",
"isLeaf": true,
"children": []
}
]
},
// ...
]
},
// ...
]
*/

Live example

3) OLAP data source, where the [Product].[Product Categories] hierarchy has more than one level:

pivot.getMembers('[Product].[Product Categories]', '', onGetMembers); 

function onGetMembers(members) {
  for (var i = 0; i < members.length; i++) {
   console.log(members[i]);
  }
}

/* the output will be the following:
[
{
caption: "Accessories",
dimensionName: "[Product]",
hierarchyCaption: "Product Categories",
hierarchyName: "[Product].[Product Categories]",
isLeaf: false,
parentMember: "[Product].[Product Categories].[All Products]",
uniqueName: "[Product].[Product Categories].[Category].&[4]"
}
{
caption: "Bikes",
dimensionName: "[Product]",
hierarchyCaption: "Product Categories",
hierarchyName: "[Product].[Product Categories]",
isLeaf: false,
parentMember: "[Product].[Product Categories].[All Products]",
uniqueName: "[Product].[Product Categories].[Category].&[1]"
}
{
caption: "Clothing",
dimensionName: "[Product]",
hierarchyCaption: "Product Categories",
hierarchyName: "[Product].[Product Categories]",
isLeaf: false,
parentMember: "[Product].[Product Categories].[All Products]",
uniqueName: "[Product].[Product Categories].[Category].&[3]"
}
{
caption: "Components",
dimensionName: "[Product]",
hierarchyCaption: "Product Categories",
hierarchyName: "[Product].[Product Categories]",
isLeaf: false,
parentMember: "[Product].[Product Categories].[All Products]",
uniqueName: "[Product].[Product Categories].[Category].&[2]"
}
]
*/

Live example

See also

getMembersAsync