Dodeca Version 6.7.6

July 22, 2014 - Build 4528

This version of the Dodeca Framework uses the .NET Framework, version 2.0, Service Pack 1 and higher on the desktop. The components used in this version of Dodeca are SpreadsheetGear 2012 (, NetAdvantage 2011, Volume 1 (11.1.20111.2042), Aspose.Cells, Syncfusion Essential Studio 11.3035.0.30, and GdPicture.NET

This version of Dodeca has two server-side services that run inside a Java Application Server. The Dodeca service is supported and tested on Java 1.6. The Dodeca-Essbase service for all Essbase versions prior to, and including, Essbase are supported and tested on Java 1.5. The Dodeca-Essbase service for all Essbase versions and higher are supported and tested on Java 1.6. Both services are known to run on Java 1.7, although extensive testing has not been performed on that Java version.

This version contains the following:

Application Culture

As part of the infrastructure that is required to provide support for non-English versions of the Dodeca Framework, two properties have been added to the Application metdata: CulturePolicy and CultureName. (#1301)


CulturePolicy is a policy that controls the language/culture used by the application.

  • UseSpecifedCulture - Makes the application use the culture specified by the CultureName setting

The CultureName property allows an administrator to select an application culture from the list of available cultures when the CulturePolicy is set to UseSpecificCulture.

  • UseWindowsCulture - Makes the application use the culture of the client Windows operating system

If the CulturePolicy is set to UseWindowsCulture, the application will use the culture of the client Windows operating system. If the client’s operating system is set to use a culture for which there is no Dodeca language pack installed, the invariant string table (en-US) will be used.

  • UseUserSpecifiedCulture - Allows the user to choose from a list of available cultures at startup

If the CulturePolicy is set to UseUserSpecifiedCulture, the application will prompt the end-user to choose a language from the list of available cultures at startup, which includes only the Dodeca language packs installed on the client, as well as the client’s Windows UI culture.

From the prompt, the user can check "Remember this choice?" in order not to be prompted during future application startups.


To change the User-Specified Culture from within Dodeca, a tool has been added to the default Admin toolbars as well as the Essbase Admin Console and View Console Toolbars Configurations in the SAMPLE and STARTER_KIT metadata.

Simply navigate to "Utilities > Change User-Specified Language…​" in order to reset the user-specified culture.


This is a screenshot of Dodeca using the Chinese (Hong Kong S.A.R.) culture and Essbase Admin Console Toolbars Configuration:


Authentication Services

Authentication services were introduced in July 2009. The services are primarily used to control access to an application and (optionally) to the views to which a user has access within an application as determined by the role or roles the user is assigned. An application can be configured to specify which view hierarchy (or hierarchies) is associated with a given role, and the application can also be configured to prevent a user who is not assigned a role from starting the application.

However, prior to this release, a user who is assigned a role which is not associated with a hierarchy was not prevented from starting the application. To address this issue, two new properties, RolesRequiredForStartup and RolesRequiredForStartup_SpecificRoles, have been added to the authentication services.

The RolesRequiredForStartup is a policy that determines whether or not a user is granted access to the application, based on the user’s assigned role(s). The policy options are as follows:

  • AnyRole - Allows any user with an assigned role to start the application

  • AnySpecificRole - Allows any user with an assigned role that matches any of the specified roles to start the application

  • AllSpecificRoles - Allows any user who matches all of the specified roles to start the application

The RolesRequiredForStartup_SpecificRoles property identifies the specific role requirements to start the application when the RolesRequiredForStartup property is set to AnySpecificRole or AllSpecificRoles.

The default setting for RolesRequiredForStartup is AnyRole, which means that the current value of the AllowStartupForUserAssignedNoRoles is honored.

  • If AllowStartupForUsersAssignedNoRoles is True, no role requirements will be honored for startup.

  • If AllowStartupForUsersAssignedNoRoles is False, the RolesRequiredForStartup property will be honored, and by default, that property’s setting acts identically to having

AllowStartupForUsersAssignedNoRoles set to False in past versions. (#1300)

Comments Key Hash Update Utility

Dodeca comments are stored and queried based on a hash key that is computed from the comment key/value pairs. The use of a hash key reduces the number of items that have to be passed to the server, and also eliminates the need to perform relational joins to return the comments for a given intersection.

The CommentsKeyHashUpdateUtility utility can be used when any of the key items, which are used to unique identify a comment, are changed. For example, if a member name is used as a key item and the member name changes, the utility can be used to retain the comments with the newly renamed member. The utility may also be used to copy a comment to another dimensionality, such as when a comment needs to be copied to the next month. (#1290)

To obtain a copy of the utility, contact

PDF View

In version, released November 22, 2013, the PDV View type was introduced. A user control developed by Syncfusion was used for rendering and displaying the PDF. The control has proven to not be up to the task, and has been replaced with a user control developed by GdPicture.NET, which is a vast improvement in terms of performance, accurate rendering, and text search/extraction. (#1252)





Relational Functionality

  • Fixed Relational Issue: When attempting to save relational data, escaped invalid XML characters may appear in relational row errors, such as '. (#1292)

    Before fix:


    After fix:

  • Relational Optimization: Under certain conditions, as detailed below, building a SQL view or an Essbase Excel view, which uses the relational functionality, has been optimized. The optimization is most apparent when:

    1. One or more SQLPassthroughDataSets contain multiple queries and all or most of the DataTableRanges have the associated sheet range on the same sheet, and

    2. The token table contains a large number of tokens, and

    3. The used range on the sheet is large and/or the sheet contains a lot of formulas, especially when a DataTableRange is configured to use a DataBlockSheetRangeName, which typically contains formulas that are calculated when the data is copied to the sheet. (#1291)

Search Metadata Properties Utility

  • Added the Last Updated By and Last Updated Date to the search results. (#1293)


View Template Designer

  • Fixed issue in Name Manager — When attempting to change a name, which is defined as a formula that contains an explicit sheet reference, such as


the value is not detected as being valid, and the following message is displayed: The formula contains one or more invalid references. Verify that the formula contains a valid path, range name, and cell reference. (#1299)

Workbook Scipting

  • This is a BREAKING CHANGE, but only when a view’s workbook script calls the BuildView method from the SelectorSelectionChanged event and the view’s toolbars configuration contains the Save View As and/or Save View tools. (#1294)

In build #1234, which was released on October 17, 2008, an issue with the Save View As and Save View tools becoming disabled when the BuildView method was called from the SelectorSelectionChanged event was addressed.

In version, which was released on November 10, 2011, the MemberToTokenConversionRule capability was introduced, which allows a drill-though from an Essbase Excel view to expand to related members in the target view. The combination of the change in Build #1234 along with the ability to drill-through to level 0 members has resulted in a possible long delay when the target view is opened and built. The delay can also be encountered when an Essbase Excel view has many "last used item" default selections.

To avoid the possible delay, the change introduced in #1234 has been removed. However, to allow for customers who may be calling BuildView from SelectorSelectionChanged, new Save View As and Save View tools are now supported, which retain the #1234 change. To use these tools, the toolbars configuration designer can be used to change the tool keys to SaveViewAsForWbsBuildViewOnSelectorSelectionChanged and SaveViewForWbsBuildViewOnSelectorSelectionChanged.

_Please note that in general, we recommend that the BuildView method not be called from the SelectorSelectionChanged event, since building a view reinitializes the workbook script. This can cause unintended consequences. _

Please contact if you have any questions regarding this change.

  • New Workbook Script Event Link: Added AfterCascadeSheetBuild event link, which is raised after a cascade sheet is inserted and the tokens have been replaced. The event argument is SheetName, which can be accessed using the @EPVal() function. The cascade sheet is the active sheet when the event is raised. This event allows, for example, a workbook script to rename the sheet. (#1297)

  • New Workbook Script Event Link: Added AfterInitialRetrieveFromBuild event link, which allows a workbook script to perform any necessary logic only after the retrieve is performed while building an Excel Essbase view, but not when an explicit retrieve is initiated either by the user or by the workbook script. (#1298)

  • Revised WriteMessageLog workbook script method to support an Encoding argument, which allows for either UTF-8, which is the default, or ANSI encoding for the log file. (#1296)