Release Notes for SASŪ Activity-Based Management 7.2

This file contains late-breaking notices regarding:

Additions for SAS Activity-Based Management 7.2

  1. The server-side of all SAS Activity-Based Management 6.x versions was written in a combination of .NET and C++ programming languages. The SAS Activity-Based Management 7.2 server-side is written in Java, except for small portions written in .NET to support Microsoft SQL Server Analysis Services. This change has a large impact on system prerequisites. Please refer to the "SAS Activity-Based Management 7.2 System Requirements" and the "SAS Activity-Based Management 7.2 Installation, Configuration, and Migration" instructions for more information.
  2. SAS Activity-Based Management 7.2 uses a new, improved algorithm for merging dimensions and reducing dimension levels than was available in 6.4.3. The new algorithm in Activity-Based Management 7.2 more efficiently merges unneeded accounts in certain circumstances. Thus, most models will either produce fact tables with fewer rows than they did in 6.4.3 or with the same number of rows. However, some models may produce more fact table rows than they did in 6.4.3. Regardless, both algorithms produce identical results in terms of costs.
  3. SAS Activity-Based Management 7.2 adds a new feature for creating SSAS cubes that are unprocessed. This allows users to run manual optimization steps on the cubes, such as designing custom pre-aggregations, and then manually process the cubes. These cubes cannot be viewed in SAS Activity-Based Management until they have been processed, though their names are displayed in the list of available cubes for viewing. If you attempt to view an unprocessed cube, you will receive an error message of the form, "Object reference not set to an instance of an object". The resolution is to rebuild the cube with the "Process cube" option enabled on the Cube Configuration or to use SQL Server Management Studio to process the cube manually.
  4. If you import model data from a Microsoft Access database that was exported from a version of SAS Activity-Based Management prior to 6.3, you may encounter errors. In SAS Activity-Based Management versions 6.2 and earlier, the "ValueAttributeAssociation" table was exported with a column named "Value". This column contained either Numeric or String values depending upon the type of the attribute. To support this, the column was of type "Memo". But if the column contains numeric values and its type is "Memo" then import may fail while retrieving some values. To resolve this problem you need to change the column type as follows:

    1) If all the values in the the "Value" column are numeric, go to the design view of the "ValueAttributeAssociation" table and change the column type to "Number".
    2) If all the values or some of the values in the "Value" column are strings, go to the design view of the "ValueAttributeAssociation" table and change the column type to "TEXT".

    This problem has only been identified on the WebLogic application server. It was not reproduced on WebSphere and was not tested on JBoss.
  5. SAS Activity-Based Management 7.2 does not allow certain punctuation marks to be used in cube names. In particular, this impacts European languages where apostrophes are commonly used. For example: "CUBE L'APOSTROPHE". SAS Activity-Based Management 6.4 also has this limitation. SAS will investigate this for the next release to see if the limitation can be removed.
  6. SAS Activity-Based Management 7.2 provides a new feature that allows users to modify and re-organize the hierarchy of dimension members within a dimension. When a dimension is modified, the model is marked as "Not calculated". This requires a model re-calculation, fact table regeneration, and cube regeneration because the modifications to the dimension have rendered the existing fact tables out-of-date. A re-calculation is necessary, in particular, because other dimension-related data used by Activity-Based Management reports is also out-of-date. Of course, the existing cubes can still be viewed, but they will not reflect the dimension changes until they are re-created.
  7. SAS Activity-Based Management 7.2 supports importing and exporting model data from Microsoft Office applications. However, users should be aware that the Office applications have size restrictions that may limit their usefulness for managing large amounts of data. The points below list the limitations SAS is aware of. Others may exist.

    1) Excel 97-2003 Workbook (*.XLS) does not allow more than 65536 rows or more than 256 columns in a table/worksheet.
    2) Excel 2007 Workbook (*.XLSX) does not allow more than 1048576 rows or more than 256 columns in a table/worksheet. The Microsoft support web site mentions that the column limit for *.XLSX is 16384 but SAS has only programmatically created up to 256 columns.
    3) Access supports a virtually unlimited number of rows but only allows 255 columns in an Access database table. Additionally, an Access table is limited to 1GB of storage and an Access database (*.MDB) is limited to 2GB of storage for all its tables.
  8. If your SAS Activity-Based Management mid-tier is installed on AIX, the server diagnostic tool may not run properly after installation. This problem is caused by a missing Java .jar file definition in the "picklist." You can resolve this problem by adding these two lines to the end of the "picklist" file located at: "/SASActivityBasedManagement/7.2/Diagnostic"
    This problem does not affect all SAS Activity-Based Management installations on AIX and is dependent on what SAS software you have installed.
  9. SAS Activity-Based Management 6.x occasionally failed to build very large cubes using SAS OLAP Server. The work-around for this problem in SAS Activity-Based Management 6.x was to manually build the cubes in Base SAS by specifying additional parameters to the PROC OLAP statement. Typically, a "hint" about the cube design was needed, in the form of an NWAY parameter, to resolve the problem. SAS Activity-Based Management 7.2 allows the Cube Configuration for SAS OLAP Server to directly specify these parameters.
  10. The default configuration of some versions of Microsoft SQL Server 2008 on certain versions of Windows allows SQL Server to consume all available RAM on your computer. This may leave other processes "starved" for memory. SAS suggests changing this setting so that SQL Server does not consume more than 50% of the available RAM on a shared computer and no more than 80% of the available RAM on a dedicated database computer. This setting can be changed in SQL Server Management Studio on the "Memory" configuration page on the "Properties" for your SQL Server instance.
  11. If you rerun the SAS Deployment Wizard to reconfigure an existing SAS deployment or to install additional SAS software, you must rerun the SAS Deployment Wizard in the "Custom" prompting level to ensure that it properly recognizes and reconfigures all the web application servers that are configured on that computer.

SAS Activity-Based Management Server - All Databases

  1. SAS Activity-Based Management 7.2 brings forward a fix first implemented in SAS Activity-Based Management 6.4.3 that fixes a defect in SSAS 2008 (and 2005) support which may require users to rebuild all their cubes for any models where "6.3 compatible" cubes and fact tables were created. The error message generated by SAS Activity-Based Management in 6.4.2 for this defect mentions "Errors in the high-level relational engine." The problem arises because SSAS 2008 (and 2005) made column names in the cube "fact definitions" case sensitive (MSAS 2000 was not case sensitive). Since these definitions are shared between cubes within a model, the proper definitions must be propagated to all cubes for the model by rebuilding all the cubes if you attempt to rebuild the "6.3 compatible" cube. Fact tables do not need to be re-created. To regenerate the cubes for any affected models, use the Manage Cubes and Permissions dialog to delete the existing cubes. Then rebuild them using your cube configurations. This defect only affects sites using SSAS 2008 that created "6.3 compatible" cubes and fact tables. Sites using MSAS 2000 and SAS OLAP are not impacted. Sites using SSAS 2008 that did not create "6.3 compatible" cubes and fact tables are also not impacted. If you are currently using SAS Activity-Based Management 6.4.2 and you did not upgrade to 6.4.3 and you use SSAS 2008 and you created "6.3 compatible" cubes but you completed work on those cubes, and hence do not plan to rebuild them in 7.2, you do not need to delete the existing cubes and rebuild them. This step is only necessary if you built the cubes using 6.4.2 and you wish to continue working on those cubes using 7.2.
  2. Due to default heap sizes in the Java Virtual Machine (JVM), some tasks on large models may fail in SAS Activity-Based Management 7.2. In particular, importing large models via XML or staging tables may fail due to insufficient heap space. These problems can be resolved by increasing the heap space available to Activity-Based Management "operations". This setting is in the "" file located in the <SASCONFIGHOME>\Applications\SASActivityBasedManagement7.2\config directory. You need to specify a larger Xmx value in the line "OutOfProcessJavaOptions=-server|-Xms256m|-Xmx1024m|". SAS suggests trying a value of 2048 as a starting point for Xmx if you are on a 64 bit operating system and a value of 1500 if you are on a 32 bit operating system. You may need to increase it further for very large models.
  3. If you want to export data to a database type that is different than the primary database used by SAS Activity-Based Management, it is necessary to install the required database drivers on the SAS Activity-Based Management mid-tier server. For more information, please see the "SAS Activity-Based Management 7.2 Installation, Configuration, and Migration" instructions.
  4. When creating attributes to define stages for calculation/cube generation, the Name and Reference for each attribute must be identical or model export will fail by giving an error regarding "Invalid stage qualifier".
  5. Due to the mechanism used by SAS Activity-Based Management to store dimension level names and period & scenario level names, some user-specified names will cause conflicts with the underlying database (regardless whether SQL Server, Oracle, or MySQL is used). These conflicts will appear as obscure error messages when calculating a model. Level names that will cause conflicts are reserved words in the SQL query language. Some of the more common reserved words are: level, group, function, drop, and join. Such words will cause errors regardless of their case. For example, using LeVEl will cause errors. For a workaround, add a descriptive prefix or suffix.
  6. When using SAS Activity-Based Management 7.2 to create reports in the Adobe Acrobat format while using any of the Language Packs, you must also install the appropriate language-specific version of the Adobe Acrobat Reader to ensure that all locale-specific characters will be displayed correctly.
  7. If you are installing SAS Activity-Based Management 7.2 and any of the Language Packs, you must make sure that the locale of your Language Pack, your operating system, your Adobe Acrobat Reader locale version (if applicable), and your Base SAS language configuration (if applicable) are compatible. Failure to do this may cause the SAS Activity-Based Management 7.2 import, export, and/or reporting mechanisms to incorrectly handle locale-specific characters or to fail to operate entirely.
  8. Additional documentation for SAS Activity-Based Management generated Information Maps is available in TW9750.pdf at
  9. When using SAS Activity-Based Management with the SAS Metadata Server on non-English systems, the SASV9.CFG file typically located in "C:\Program Files\SASHome\SASFoundation\9.3\nls\" (where is the language code for your installation) must have a line added of the form "validvarname=any". This addition is necessary to ensure that the column names in registered tables appear with correct localized text. If this option is not added to the .CFG file, column names may appear with default names such as _COL1_, _COL2_, etc. which causes subsequent operations such as cube generation to fail.
  10. SAS OLAP Server locks cubes when they are being viewed. This includes viewing tools of all types, not just the viewer in SAS Activity-Based Management. For example, a SAS Activity-Based Management cube on the SAS OLAP Server will be locked when viewed in SAS Enterprise Guide. Cubes that are locked cannot be updated from the SAS Activity-Based Management client application. If you attempt to recreate a locked cube, you will receive an error from the SAS OLAP Server warning that the operation cannot be performed. In order to recreate the cubes, the locks must be removed. This can be done by closing the viewing tools (such as SAS Enterprise Guide) or in the case of the SAS Activity-Based Management client, by selecting the close cube view button, [X], at the upper-right of the OLAP viewing page.
  11. SAS Activity-Based Management can optionally create Information Maps (IMAPs) in the SAS Metadata Server for use by other SAS applications. If other tools use these IMAPs in SQL "joins", the resulting tables may perform poorly due to a lack of SQL Passthru functionality in the SAS IMAP facility. This problem can be resolved by creating the required SQL joins in the SAS Activity-Based Management database and registering the resulting database views as IMAPs on the SAS Metadata Server.

SAS Activity-Based Management Server - SQL Server Database

  1. When installing SQL Server, the collation sequence must be set to case insensitive.

SAS Activity-Based Management Server - Oracle Database

  1. When installing Oracle, the collation sequence must be set to case insensitive.
  2. If Oracle is installed on a different computer than the one used for the SAS Activity-Based Management mid-tier server, it is necessary that the OracleService service be operational on the database server. If this service is not operating the SAS Activity-Based Management application server will not be able to attach to the database.
  3. Oracle 11g has a new feature that allows recovering data after queries. This is accomplished by creating "dummy" tables in your Oracle schema that hold the necessary information to roll-back changes. These tables have names of the form: "BIN$+HQXPwmySkCtpdSzeQKKgA==$0". These tables are not used by SAS Activity-Based Management and are not created by SAS Activity-Based Management. However, they may become very large as they contain enough data to roll-back large database updates made by made by SAS Activity-Based Management. To prevent this unnecessary waste of disk space on your database server, this Oracle data recovery feature may be turned off for an entire Oracle instance. Turning off the feature will not impact SAS Activity-Based Management in any way.

SAS Activity-Based Management Server - MySQL Database

  1. When installing MySQL, the collation sequence must be set to case insensitive.
  2. A MySQL database will perform more slowly on large models than either Microsoft SQL Server or Oracle databases. This happens because MySQL does not have an external "bulk load" interface that is optimized for loading large amounts of data.
  3. MySQL has a limit of 61 tables in a SQL "join" statement. If you build a cube and add many user-defined attributes, you may exceed this limit and receive an error unrelated to the problem. Examination of the Log file on the server reveals a long query including many tables. Each user attribute adds one additional table to the "join" statement. To work-around this problem, remove user attributes from the cube definition until the cube creation succeeds.

SAS Activity-Based Management Client

  1. When importing data from a Microsoft Access database or a Microsoft Excel spreadsheet, the file must be visible and accessible from the client. Previous versions of SAS Activity-Based Management required that the file be visible from the server. SAS changed the way this import process operates due to changes in Microsoft's Office support strategy.
  2. Accounts with dimension intersections No <Dimension1> x No <Dimension2> x ... No <DimensionN> can be exported but cannot be imported.
  3. Deleting period and scenario data might require a long time when there is a large amount of data to delete.
  4. On rare occasions, the Windows Script Host can become corrupted. This corruption produces the following error message:

    WScript.exe - Entry point not found.
    The procedure entry point DoOpenPipeStream could not be located in the dynamic link library ScrRun.dll.

    To correct this problem, reinstall Windows Script Host version 5.6 from the following location:
  5. Do not set the monitor display font size to anything larger than 96 DPI.
  6. If the SAS Activity-Based Management server is updated to version 7.2 and any clients that have not been updated attempt to logon to the updated server, they will receive an obscure error message. The message reads, "The request failed with HTTP status 404: /SasSolutions/ABM/Services/LogonService.asmx". The message means that the requested web page does not exist. This happens because SAS Activity-Based Management 7.2 uses a different mechanism to attach to the server than was used by Activity-Based Management 6.x.
  7. If you are using SAS Activity-Based Management with non-English languages, you may encounter instances where strings containing extended characters imported from SAS Data Sets do not import correctly. The extended character data is usually displayed as '?' (question marks). This can be resolved by setting your SAS Share Server session locale to the desired language.
  8. Users of the Accessibility capabilities of SAS Activity-Based Management often use the JAWS screen-reading program. There is a known bug in JAWS causing it to occasionally lock input fields of HTML pages, preventing users from entering data. If this happens while you are using JAWS, press Alt+N to re-enable screen input.

Upgrading from a Previous Version

  1. After uninstalling the previous version of SAS Activity-Based Management Server it is important that you reboot your computer. Failure to reboot will cause SAS Activity-Based Management 7.2 to fail to install completely. The failure will appear as error messages during installation that several COM components do not register correctly. This problem can be corrected by uninstalling SAS Activity-Based Management 7.2, rebooting your computer, and re-installing SAS Activity-Based Management 7.2. This problem only affects Windows-based servers.