I have long been a fan of open source software and its ability to benefit the world. Among other things, open source software is consistent with my philosophy of “a rising tide lifts all boats”. Much of the software we use on a day-to-day basis is based on or incorporates open source software in some way. I enjoy working on projects that I can contribute back to the community and in particular if those tools benefit my fellow Hyperion colleagues. To those ends, I have the following projects available:
Hyperpipe
Hyperpipe is a simple command-line Java program that can be used to fetch data from a SQL database using given credentials, driver, and query and then pipe the data directly into a Hyperion Essbase cube without using a load rule.
Jessub
Jessub is a small utility meant to ease updating automation variables for Essbase that are based on timing of some kind. It’s quite frequently necessary and useful to roll automation variables forward and base them on the day of the week or the month of the year or simply be “two days ago” and use that value. Jessub allows you to easily perform math with dates and then use those values to generate a MaxL script file that you can run and update variables with.
cubedata
cubedata is a simple utility that allows you to generate test data for a cube. Given a small input file that defines what members and what dimensions you need data for, it will generate a text file that has all of the permutations of that data. This can be useful if you want to test the load or calc performance of a cube but don’t yet have (or won’t have) access to a relational database or other data source that has data to play with. This might save you some time having to generate a file by hand or even locking and sending data. Massive amounts of test data can be generated for an arbitrary number of dimensions.
Tieout
Tieout was designed to be used in the Essbase automation process to validate data in the cube. As it turned out, the data in the cube could be matched up against data in a relational data store at several high intersection levels. Tieout allows you to configure a test (in an XML file) that parameterizes a SQL query to one source and an MDX query to another source, comparing the results. I image this would only be useful to a small handful of people in the world but nonetheless it is available to anyone that would be interested in it.