⚠️ Bedrock 5 is still under development and will be released on the 30th of September, click here for the upcoming webinar. Please wait for the upcoming official release to use it in your projects. ⚠️
This next-generation release of Bedrock has been refactored and tested to support IBM Planning Analytics TM1 Database 12.4+. Bedrock 5 does not support earlier versions of the TM1 Database. These versions are supported by Bedrock 4
Bedrock 5 is the latest evolution of the Bedrock library, specifically updated for compatibility with IBM Planning Analytics TM1 Database 12.4+. This release reflects the ongoing commitment to maintaining best practices for IBM Planning Analytics development, providing optimized, standardized, and scalable TurboIntegrator (TI) code assets that align with changes introduced in the IBM Planning Analytics TM1 Database 12.
In this article:
Bedrock is a community-driven IBM Planning Analytics best practice framework. It provides modular, reusable TI processes, tools, documentation, and training resources designed to:
- Accelerate model development
- Increase maintainability
- Improve auditability
- Reduce administration and support overhead
The Bedrock library is built on years of global IBM Planning Analytics implementation experience and is widely adopted in complex, enterprise-level IBM Planning Analytics environments.
Bedrock 5 brings targeted updates to support IBM Planning Analytics TM1 Database 12.4+, including:
- Compatibility Fixes: Adjustments for updated IBM Planning Analytics system behavior and function changes.
- Deprecated Processes: Clear documentation of processes no longer required or supported in the latest version of IBM Planning Analytics.
- Modified Processes: Existing processes updated to maintain their original functionality while aligning with new IBM Planning Analytics features and syntax.
- Updated Installation Guide: Step-by-step instructions for deploying Bedrock 5 into your IBM Planning Analytics environment.
Note: Bedrock 5 is intended only for the IBM Planning Analytics TM1 Database 12.4+. For TM1 11.x or IBM Planning Analytics 2.0.x, use Bedrock 4
With growing IBM Planning Analytics adoption, standardization is critical. Bedrock provides:
- A standardized TI codebase for reuse across models and teams.
- Faster development cycles through proven, modular processes.
- Lower learning curve for new developers.
- Reduced black-box risk through increased transparency and logging.
- Improved scalability to handle complex business models with large datasets and high concurrency.
The first place for further information is the code.cubewise.com/bedrock website.
Key resources:
- Check out the What's New page to familiarize yourself with what is different versus the previous version.
- Bedrock Wiki. Each process has a full documentation of what it does, the intended purpose, needed parameters, and dependencies within the library.
White Papers:
- Bedrock Modular Approach
- Best Practice Turbo Integrator
- Best Practice Cube Design
- Best Practice Rules
Anyone is free to copy, modify, use, compile, sell or distribute the original Bedrock code, documents and information (the information), either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means, with the exception that you may not reproduce or publish the information on any web site, online service or printed media without prior express permission.
Where the information is copied, modified, used, compiled, sold or distributed, credit to the original author or authors must be left intact in the code or document.
All of the deliverable code on this site has been written from scratch. No code has been taken from other projects or from the open internet. Every line of code can be traced back to its original author. So the Bedrock code base is clean and is uncontaminated with licensed code from other projects.
All of the code, documents and information in Bedrock for TM1 are to be deemed without warranty.
The source code is hosted at github.com/cubewise-code/bedrock-5. If you find a bug or feel like you can contribute please fork the repository, update the code and then create a pull request so we can merge in the changes.
IBM Planning Analytics TM1 Database 12 has several deprecated functions when compared to the earlier versions of the TM1 Database. Because of this, the following Bedrock processes have now been deprecated:
Bedrock Process | TM1 Deprecated Function |
---|---|
}bedrock.cube.data.save |
CubeSaveData |
}bedrock.dim.attr.swapalias |
SwapAliasWithPrincipalName |
}bedrock.hier.create.fromrollup.aliasswap |
SwapAliasWithPrincipalName |
}bedrock.security.client.password.reset |
AssignClientPassword |
}bedrock.server.dir.backup |
ExecuteCommand |
}bedrock.server.dir.listcontents |
ExecuteCommand |
}bedrock.server.encrypt.directory |
ExecuteCommand |
}bedrock.server.encrypt.file |
ExecuteCommand |
}bedrock.server.executecommand |
ExecuteCommand |
}bedrock.server.logfile.delete |
ExecuteCommand |
}bedrock.server.savedataall |
SaveDataAll |
Due to the deprecation of the above functions in the IBM Planning Analytics TM1 Database 12, the following Bedrock processes have been modified to ensure compatibility with the IBM Planning Analytics TM1 Database 12.4+. The functionality of these processes has not changed.
Changes in the Bedrock processes were primarily due to:
- Deprecation of
CubeSetLogChanges
. - Inability to access the
.rux
file. - Deprecation of
ExecuteCommand
when used to delete a file (replaced withASCIIDelete
). - Deprecation of the
}DimensionProperties
cube. - Deprecation of
AssignClientPassword
. - Deprecation of the
}ApplicationSecurity
cube.
Process Name | Change Description |
---|---|
}bedrock.cube.clone |
Replaced the attempt to read rules from the .rux file with the CubeRuleGet function. |
}bedrock.cube.data.clear |
Removed the CubeSetLogChanges function. |
}bedrock.cube.data.copy.intercube |
Removed the CubeSetLogChanges function. Replaced the use of ExecuteCommand to delete a file with ASCIIDelete . |
}bedrock.cube.data.copy |
Removed the CubeSetLogChanges function. Replaced the use of ExecuteCommand to delete a file with ASCIIDelete . |
}bedrock.cube.data.export |
Removed the CubeSetLogChanges function. |
}bedrock.cube.data.import |
Removed the CubeSetLogChanges function. |
}bedrock.cube.dimension.add |
Replaced the attempt to read rules from the .rux file with the CubeRuleGet function. |
}bedrock.cube.dimension.delete |
Replaced the attempt to read rules from the .rux file with the CubeRuleGet function. |
}bedrock.cube.dimension.replace |
Replaced the attempt to read rules from the .rux file with the CubeRuleGet function. |
}bedrock.cube.rule.manage |
Replaced the attempt to read rules from the .rux file with the CubeRuleGet function. Replaced the use of ExecuteCommand to delete a file with ASCIIDelete . |
}bedrock.dim.attr.create |
Bug fix: The process parameters indicated that the default value for pAttrType was 'S', but this was not the case. The default has now been added. |
}bedrock.dim.clone |
The }DimensionProperties cube has been deprecated, and all references to it have been removed. Note: As a result, a dimension’s sort order can no longer be cloned. |
}bedrock.dim.create |
Implemented the }bedrock.dim.create function. |
}bedrock.hier.clone |
The }DimensionProperties cube has been deprecated, and all references have been removed. Note: Because of this, the hierarchy's sort order cannot be cloned. |
}bedrock.hier.create.fromsubset |
The }DimensionProperties cube has been deprecated, and all references have been removed. Note: Because of this, the hierarchy's sort order cannot be cloned. Removal of CubeSetLogChanges function. |
}bedrock.hier.export.script |
The }DimensionProperties cube has been deprecated, and all references have been removed. Note: Because of this, the dimension's sort order cannot be exported. |
}bedrock.hier.export |
The }DimensionProperties cube has been deprecated, and all references have been removed. Note: Because of this, the dimension's sort order cannot be exported. >Bug fix: String attribute values of "0" would not be exported. |
}bedrock.hier.import |
The }DimensionProperties cube has been deprecated, and all references have been removed. Note: Because of this, the dimension's sort order cannot be imported. |
}bedrock.hier.unwind |
Removed the CubeSetLogChanges function. |
}bedrock.process.template |
Removed the CubeSetLogChanges function. |
}bedrock.security.client.clone |
Removed the AssignClientPassword function. Note: Because of this, a client's password cannot be set. |
}bedrock.security.client.create |
Removed the AssignClientPassword function. Note: Because of this, a client's password cannot be set. |
}bedrock.security.object.assign |
The }ApplicationSecurity cube has been deprecated, all references have been removed. Note: Because of this, an application's security cannot be set. |
A full list of all process modifications from Bedrock 4 to Bedrock 5 can be found here: Bedrock Compare Pull Request.