Dodeca Version 6.1.1
November 10, 2011 - Build 3193
This version uses SpreadsheetGear 2010 (6.0.3.190), NetAdvantage 2011, Volume 1 (11.1.20111.2042), and Aspose.Cells 6.0.1.0.
Upgraded from NetAdvantage 2011, Volume 1 (11.1.20111.1003) to NetAdvantage 2011, Volume 1 (11.1.20111.2042).
The release notes for this version contain the following sections:
Application Authentication Services
Command-Line Arguments
Commentary
Essbase — Display Unknown Members Option
Essbase to Relational Drillthrough
Workbook Scripting
Application Authentication Services
-
An authentication service is used to obtain a user’s roles at startup, and then allow or deny access to the application based on whether or not any roles are assigned to the user. The user’s roles can also be used to determine which view hierarchy or hierarchies are displayed in the view selector. The view selector’s HierarchyToRoleMapping property is used to define the associations between hierarchies and roles. (#1030)
The HierarchyToRoleMapping editor user-interface has been modified with the following changes:
-
The Role dropdown list is automatically populated with the list of available roles, as determined by the authentication service. For the EssbaseUserRolesFromGroupNames authentication service, the available roles include all the Essbase group names that are defined on the server associated with the authentication service’s Essbase connection.
_Note: When using Shared Services security to define the groups, the group names are appended with a '@' sign and the directory name, such as MyGroupName@Native Directory. _
For the EssbaseUserRolesFromSqlPassthroughDataSet and WindowsUserRolesFromSqlPassthroughDataSet authentication services, the available roles are retrieved from the database using the SqlPassthroughDataSet assigned to the service’s AllRolesSqlPassthroughDataSetID setting. The SqlPassthroughDataSet should define a query that selects all distinct/unique roles from the appropriate database table.
-
An empty row is automatically added as the last grid row, which eliminates the need for an "Add" button, which was removed.
Command-Line Arguments
-
A default view ID can be specified as a command-line argument (or query string parameter). A default view is opened automatically when the application starts up. When a default view ID is specified on the command-line and the application’s DefaultViewID property is also specified, the command-line value takes precedence. The default view ID argument or parameter is specified as "view" or "v", such as in the following URL:
Custom command-line arguments can also be specified, and used in conjunction with the workbook script function @CommandLineArg(<argument name>), which returns the value of the specified argument. A custom command-line argument name should not begin with any of the following letters, which are reserved for the standard command line arguments: a, p, s, t, u, and v. To allow for the possibility of the addition of standard command line arguments in the future, the following letters are reserved for future use: x, y, and z. (#1031)
Commentary
-
Comments Explorer — When the user activates a Comment cell, the width of the edit area is now automatically sized to extend to the right edge of the Comments Explorer. (#1032)
Essbase — Display Unknown Members Option
-
Unknown Members — As described in the release notes for Version 6.1.0.3142, the option for displaying unknown members, which was initially only supported for Adhoc views, is now also supported for Essbase Excel Views. (#1029)
Essbase to Relational Drill-through
One of the core features of Dodeca is Intelligent Navigation, which supports, for example, the ability to drill-through from a data point in an Essbase view to a relational view that contains the associated transactional data, which is stored in a relational database. The context of the selected data point, which consists of the associated member for each dimension that intersects at the data point, is relayed to the relational view by way of tokens. Unless the user is only allowed to drill-through from a data point for which all of the contributing members are at level zero, it may be necessary to get the descendant level zero members related to one or more of the data point members to pass as the context to the relational view. (#1033)
So, for example, when a user drills through from the data point at the intersection of Sales, Actual, Colas, and East in an Essbase view, the target relational view represents the transactions for all the level zero descendants of Colas (i.e. Cola, Diet Cola, and Caffeine Free Cola) and East (i.e. New York, Massachusetts, Florida, Connecticut, and New Hampshire.)


This behavior can be accomplished using workbook scripting, or alternatively, with this release, by defining one or more member to token conversion rules. The rules control the values assigned to the tokens that are passed as the current context to the target relational view.
For an Excel Essbase view, the drill-through can be configured as an action initiated when a user double-clicks a data cell with the left mouse button. A drill-through can also be configured as an option on the context menu that is shown when the user clicks a data cell with the right mouse button.
To configure a view to drill-through when the user double clicks a data point, the view’s DataCellDoubleClickPolicy is set to OpenViewForDrillthrough. The DataCellDrillthroughMemberToTokenConversionRules setting is used to define the member to token conversion rules.

When a context menu option is configured to use the OpenViewForDataCellsToolController to drill-through from the selected data point to a specified target view, the tool controller’s MemberToTokenConversionRules setting is used to define the member to token conversion rules.


The Member to Token Value Conversion Rules Editor is used to define the rules on a dimension-by-dimension basis. In this example, a rule is defined for Market and for Product. Both rules indicate that the members assigned to the token, which is passed to the target relational view, should be the bottom level members that are related to the selected member.

The token value is a string that contains a delimited list of the members. By default, the delimiter is a semi-colon, such as: New York;Massachusetts;Florida;Connecticut;New Hampshire. When the target view contains a selector for a given dimension, this is the appropriate delimiter and formatting. When the target view does not contain a selector for a given dimension, the delimiter and formatting should conform to the syntax required for the SELECT statement used to retrieve the relational data. Typically, the query contains a WHERE <column> IN clause, in which values are comma delimited and each value is enclosed in single quotes, such as: 'New York','Massachusetts','Florida','Connecticut','New Hampshire'.
A rule supports the specification of the delimiter used to separate the individual member names and the format used for each member name. So, for example, a comma can be specified as the delimiter, and a '{0}' can be specified as the Format String, where {0} is a placeholder for a given member name. If necessary, the format string can also contain string functions, as supported by the relational database, to transform the member name into the appropriate relational value. For instance, a string function can be used to remove a prefix from a member name to match the equivalent and corresponding value in the relational database.
Member Filters Editor
The Member Filters Editor has been around for a while, but has gotten a slight facelift. Member filters control whether the drill-through action is allowed for a selected data point based on the level number, level name, member name, or UDA’s of the contributing members. The editor is used to set an Excel Essbase view’s DataCellDoubleClickMemberFilters property as well as the OpenViewForDataCellsToolController’s MemberFilters property. The modifications include the following: 1) The Essbase connection, which is used to populate the Dimensions dropdown list and to validate the filter settings, now applies to all the filters. Previously, an Essbase connection had to be selected for each row. 2) A member filter can now be defined for an attribute dimension. 3) A description of the active property is presented in the help area.

Workbook Scripting
-
Fixed Issue with DelimitedStringFromRangeValues Function — Error encountered when a cell within the range is blank. Resolution: Blank cells are now skipped, and text values are trimmed. A semi-colon can now be specified as the row delimiter. (#1034)
-
Fixed Issue with SetControl Method — When the method is called from within a cell-by-cell or for-each loop and an event procedure argument, such as OnClickProcedure, is specified, the procedure is executed only for the last control. (#1035)
In addition to fixing the issue, an event property, ControlName, is now available from within the procedure that is assigned to the OnClickProcedure argument, as well as the other On<action>Procedure arguments. This allows the methods in the executed procedure to use the EventProperty function, @EPVal(ControlName), to obtain the name of the control on which the action was performed.
-
New Function — The CommandLineArg function, @CommandLineArg(<argument name>), returns the value of a standard or custom command-line argument. The standard command-line arguments include tenant, servletPath, userDomain, username, machineName, appID, defaultViewID, and savedViewID.