Python Tools
I've been playing around with python/jython a lot lately and have thrown together a small set of tools. These tools can be found on GitHub. Below I'll try to explain the purpose of each. This may end up being a mutlipart post as I plan to add to the repo when I find new useful ways to use python in EPM.
bulkreplace.py
This script does muliple replacement on a file using a set of delimited mappings. The default delimiter for the maps is tab.
Parameters:
-f, --file Essbase extract file (required)
-m, --map Mapping file for replacements (required)
-d, --delim Delimiter used to separate source and target in map
Flags:
- h Help
Example: python bulkreplace.py --file=test-data\replace-source.txt --map=test-data\replace-maps.txt
essbase-dataextract-parse-members.py
Extracts all the member names that appear in a non column format essbase extract file (the only format currently suppored in ASO.) This can be especially useful for finding problems before load when compared to a list containing members names in the outline.
Parameters:
-f, --file Essbase extract file (required)
-o, --output Output file
Flags:
-h Help
-s, --stats Include statistics on number of occurrences in file
Example: python essbase-dataextract-parse-members.py --file=test-data\essbase-extract-data.txt
essbase-xml-otl-compare.py
This assumes that the user is using a version of EPM that supports the MaxL command to export an xml extract of the outline and they know how to use it. When run it creates a "diff" report between two xml outline extracts. Currently it only compares parent, child, consolidation operator and aliases for differences but I hope to add member formulas soon. It's been quite useful to me as of late and I have to thank Jake Turrell for the idea.
Parameters:
-s, --source Source XML File (required)
-t, --target Target XML File (required)
-o, --output Output File
Flags:
-h This Help
-v, --verbose Creates source.txt and target.txt files
Example: python essbase-xml-otl-compare.py --source=test-data\source-outline.xml --target=test-data\target-outline.xml
Alright that's it for now thanks for watching ;)