XMLAMemberList

In XMLA, each hierarchy has a list of members. Use BI#'s XMLAMemberList data type to store a list of these members. This example code prints the number of all members of all hierarchies that belong to an XMLA connection:

#define EngineVersion 3.0
#define RuntimeVersion 3.0

void XmlaPrintMemberList(XMLAConnection connection)
{
	XMLACubeList cubes = XMLAGetCubeList(connection);
	foreach (XMLACube cube in cubes)
	{
		XMLADimensionList dimensions = XMLAGetDimensionList(cube);
		WriteLine("Found cube " + XMLAGetCubeName(cube) + ". It has " + Count(dimensions) + " dimensions.");		
		foreach (XMLADimension dimension in dimensions)
		{
			XMLAHierarchyList hierarchies = XMLAGetHierarchyList(dimension);
			WriteLine("    Found dimension " + XMLAGetDimensionName(dimension) + ". It has " + Count(hierarchies) + " hierarchies.");
			foreach (XMLAHierarchy hierarchy in hierarchies)
		    {
			    XMLAMemberList members = XMLAGetMemberList(hierarchy);			    
     			WriteLine("        Found hierarchy " + XMLAGetHierarchyName(hierarchy) + ". It has " + Count(members) + " members.");
	    	}
		}
	}	
}