This version of the Dodeca 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 2017 (8.1.58.102), NetAdvantage 2011, Volume 1 (11.1.20111.2042), Aspose.Cells 19.5.0.0, Syncfusion Essential Studio 13.4.0.63, and GdPicture.NET 11.0.6.
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 11.1.1.3 are supported and tested on Java 1.5. The Dodeca-Essbase service for all Essbase versions 11.1.1.4 and higher is supported and tested on Java 1.6. Both services are known to run on Java 1.7, 1.8, 1.9, and 1.10.
This release contains the following changes:
The Essbase Connections Editor now supports the ability to determine the versions of various server components associated with a given connection, including the version of the Essbase server, the Java API, and the Dodeca Essbase servlet. The server locale is also available.
The following properties represent the versions and locale information:
DodecaEssbaseServletVersion
, EssbaseJAPIVersion
, EssbaseJAPIVersionDetail
,
EssbaseServerLocale
, and EssbaseServerVersion
Since the properties are read-only and are not persisted with the Essbase connection metadata in the metadata repository, the versions and locale values will typically be displayed as blank unless the connection has been used within the current session and has not been changed. The values can also be refreshed by using the Refresh Versions and Locale or the Test Connection tool. #2417
Similar to the existing SendBlanksAsZero
option, new Essbase option,
SendBlanksAsMissing
, supports the ability to send blank data cells as missing
data. #2397
The SendBlanksAsMissing
option is not supported for ASO databases.
To facilitate the ability of customers to provide the Dodeca support team with Essbase outlines when needed to, for instance, reproduce issues or address workbook script-related questions, an outline file can now be extracted and automatically saved as a binary artifact.
This capability is available in the Essbase Connections Editor with the Create Outline File Binary Artifact tool.
The type of the generated binary artifact is Essbase Outline File, and the ID is
the same as the ID of the Essbase connection. A new version of the artifact is
created with each extraction. The value of the OutlineFileExtractMessage
property
contains the ID and the version of the last Essbase Outline File binary artifact
created for the database.
The Binary Artifacts Editor has also been modified to accommodate the Essbase Outline File type. Although the editor supports the ability to explicitly create an Essbase Outline File binary artifact by importing an outline file, the recommended workflow is to use the Essbase Connections Editor.
The Binary Artifacts Editor also supports the ability to filter on this type, as well as export an outline from an Essbase Outline File binary artifact.
As with other binary artifact types, an Essbase Outline File binary artifact can be exported using the Export Metadata to Local Zip File utility. #2153
To provide more control over Essbase outline XML extraction on the server,
a new setting, OutlineExtractXmlVersionRetentionCount
has been added to the
Essbase connection metadata. The property controls the maximum number of extracted
XML versions to keep for a given Essbase connection. By default, the value is -1,
which indicates there should be no maximum limit on the number of extracted XML
versions to retain for the Essbase connection.
In addition, the way the OutlineExtractEnabled
setting is applied has been
revised. The property still controls whether caching of the Essbase outline
in XML format is automatically processed when the configured interval of time elapses.
The dodeca.outline.xml.cache.check.interval is specified in the dodeca.properties file,
and defaults to 1440 minutes (24 hours.) However, the property no longer has to be
set to True in order to use the Update Outline XML or Outline Viewer buttons
in the Essbase Connections Editor. #2390
OutlineExtractEnabled
is set to True for a
given Essbase connection, the Dodeca metadata service checks for changes to the
outline at the configured time interval. When a change is detected, the outline
is extracted as XML and saved in the metadata repository as an Essbase Outline XML
binary artifact. The issue, which has been addressed, is that the XML was
being extracted even when no changes had been made to the outline. #2390Node0
, Node1
, etc. #2427The ability to access HFM data from within a Dodeca application is now supported. The HFM Connector architecture actually allows for utilizing this capability with any version of the Dodeca framework, but the 7.8 release supports a more explicit definition of an HFM connection. #2410
The following article provides an overview as well as the steps required for setting up and configuring an HFM Connector: https://www.jasonwjones.com/2019/11/dodeca-hfm-connector-getting-started/.
When using 7.8 and subsequent releases, defining an HFM connection (as described article section titled Configuring a Dodeca HFM Connection) has been slightly revised.
The Essbase Connections Editor now supports two types of Essbase connections: EssbaseConnection and HFMConnection. When a new connection is created, the New Essbase Connection dialog displays a Type dropdown listing both options.
The properties displayed for an HFMConnection include only those applicable to HFM.
As described in the article, an HFM connection is represented and generally treated as an Essbase connection by the Dodeca client. So, for instance, when selecting an Essbase connection for a view, connections that are configured for HFM are listed along with connections that are configured for Essbase.
Other utilities, namely Search Metadata Properties and Metadata Dependency Explorer, treat an HFM Connection as an Essbase Connection.
The following tools and utilities are not supported for HFM Connections:
AddDataCache.EssbaseMDXScript
method overload is used. #2414Fixed Issue - When using the SQLStandardizationPolicy
FullStandardization
for a SQLPassthroughDataSet
query, block comments that are closed on the same
line and immediately following a line comment are corrupted, resulting in the
block comment being left open. This issue would occur for a comment similar to
the following:
select column1, column2, /* -- column3, */ column4 from table1
In this release, the FullStandardization policy has been updated to ensure that block comments are properly handled, regardless of their content. This issue was introduced in 7.0.0.6870. #2396
ViewSelectorItemToolTipPolicy
is set to
Description, views without a description will display the description of the
previous view with a description, which was hovered over in the view selector.
#2387Substitute
function has been deprecated. The function will continue to
be supported, but has been replaced with the new Replace
function. The Substitute
function has a known issue with multiple quoted arguments, which results in
a "Missing arguments" error. The Replace
function does allow for multiple
quoted arguments. #2394New Function: The Base64Decode
function returns a decoded representation
of a given Base64-encoded string. #2407
@Base64Decode(<EncodedString>)
New Function: The Base64Encode
function returns a Base64-encoded representation
of a given string. #2407
@Base64Encode(<String>)
New Function: The DataTableRangeColumnInfo
function returns the name or
data type of a data table range column. The data must be retrieved before calling this function.
#2408
@DataTableRangeColumnInfo(<Type>,[<Address>])
New Function: The DataTableRangeColumnInfoByIndex
function Returns the name or
data type of a data table range column. The data must be retrieved before calling this function.
#2408
@DataTableRangeColumnInfoByIndex(<Type>,<SQLPassthroughDataSetID>,<DataTableName>, <Index>)
New Function : The Replace
function replaces existing text with new text
in a text string. Unlike the Excel Substitute
function, this function does not
limit the text argument values to 255 characters, and also allows for specifying
whether a match is based on a case-sensitive or a case-insensitive comparison. #2394
@Replace(Text, OldText, NewText, [CaseSensitive], [InstanceNumber])
New Function Argument: An optional parameter, UseCache, has been added to the
DimensionUDAs
function control whether the UDAs are returned from the session
cache, if contained in the cache, or from the database. #2392
@DimUDAs(<DimensionName>,[<ConnectionID>],[<DefaultValue>],[<Matching>], [<UseCache>])