Database Reference
In-Depth Information
Finally, you can pass an alias name from any alias table as the argument to IEssCube.
getMember and the method will successfully return the correct member. however, calls
to IEssMember.getName on the instance returned will not return the member name, but
rather will return the alias name passed as the argument.
// get the member object using the alias
member = cube.getMember("Cola");
Depending on how you intend to use the information from the object, this behav-
ior could cause you to get incorrect information. here are the results from getting an
IEssMember using the alias. note how the name property should contain the mem-
ber name, 100-10. Instead, the method call returned the alias used to query for the
member.
=== IEssCube.getMember ===
Name: Cola
Level: 0
Related Members-Parent: Error: Cannot perform operation. The cube
outline is not open. This operation is not allowed on member objects
obtained using IEssCube.getMember and is allowed only on member
objects obtained using open outline or member selection sequence.
8.7.3 Getting IEssMember Objects Using IEssCubeOutline.findMember
Partially described IEssMember objects are a problem in the Java API, but there are rea-
sons that they exist. Partially-described IEssMember objects were originally designed to
allow access to some member information while maintaining a relatively low amount
of processing overhead. you can get a fully described IEssMember from the Java API as
well, but not directly from the IEssCube object. Instead, you must get the member from
the Essbase outline, which is represented in the Java API by the IEssCubeOutline class.
you can get the IEssCubeOutline instance using the IEssCube.openOutline method.
// open the outline
IEssCubeOutline outline = cube.openOutline();
have you ever opened a large outline in EAS and then left to get coffee while EAS
spent several minutes completing the process? Essentially, this is the same thing the line
above is doing, which is the cause of the increased overhead level, and perhaps slow per-
formance, that you may see using IEssCubeOutline.findMember . The good news is that
once you have opened the outline, you can query as many members as you like and you
will get fully described IEssMember objects. here is a simple example.
// get the member object from the outline
member = outline.findMember("100-10");
here is the output. notice that this version of the IEssMember object does not throw
an exception when accessing the getRelatedMembers method.
=== IEssCubeOutline.findMember ===
Name: 100-10
Level: 0
Related Members-Parent: 100
Search WWH ::




Custom Search