Use an Essbase Substitution Variable in a Shell Script

A couple of weeks back I was writing some automation scripts on a *nix system (using KornShell, in this case) and needed to do something I haven’t previously tried – grabbing the value of a couple of Essbase substitution variables to use elsewhere in the shell script. I’m sharing a generic version since (as a relatively inexperienced programmer on Unix-like systems) I was pleasantly surprised by how simple the toolset made meeting this requirement, and more generally, the solution I came up with demonstrates several useful techniques from which other *nix neophytes may benefit:

  • Command substitution
  • Inline redirection
  • Filtering multiple lines with grep
  • Extracting tokens from a single line with AWK

Constructive criticism and comments are most welcome!

Continue reading

Essbase Security Filters and ‘Background’ Access Levels

Security filters can be difficult beasts at the best of times, especially when it comes to the interaction of multiple filter rows / multiple filters (I glaze over on reading the DBAG statement that “a filter that defines a more detailed dimension combination list takes precedence over a filter with less detail”). In this post I’m going to discuss a particularly confusing behavior involving the interaction of calculation privileges with filter access. I’m not the first to discover or comment on the following phenomenon, but I don’t think it’s been written up comprehensively. The DBAG entry for filters certainly doesn’t make any mention of it, which seems like an oversight.

Continue reading

Deleting Essbase Applications that Won’t Start

A very quick post on a perennial Essbase problem: the application that refuses to be deleted. Generally this happens when an application has been corrupted, due either to a bug, a crash or some clown’s1 too-smart-for-own-good file system monkey business.  The application then can’t be started, and deleting an application requires that it be started first.  I ran into this today with an application that had somehow been created as BSO before an ASO backup was restored into its folder structure.

Continue reading

Making Sense of Versioning and Support Policy

EPM Support Documentation

Thanks to Oracle’s well-worth-following Business Analytics – Proactive Support blog, I’ve been introduced to a couple of interesting support policy documents relating to the EPM stack:

These documents also reference the more widely applicable Lifetime Support Policy: Oracle Applications (‘LSP’).

With no disrespect intended, I’d guess that many EPM practitioners are unaware of some finer points of support policy. I know that I was! And without understanding the content of these documents, it’s impossible to give comprehensive answers to questions such as ‘For how much longer is Oracle committed to providing fixes for my 11.1.2 system?’ (the answer may be more complicated than you think). However, the documents themselves tend towards legalese, and they don’t always make completely clear what the real-world implications of the policies are. The GPEC document was updated on March 6th to include information, so this is an opportune time for a plain-English review.

Continue reading

Firing Up with John A. Booth’s Amazon Image

Update 9th October, 2015

John has decided to remove the Amazon Image discussed in this post because of Oracle licensing concerns. This post remains for reference and may still be of use with respect to opening an AWS account etc., but without the AMI it is not possible to follow the full process to set up an EPM environment.

Busman’s Holiday

I haven’t posted to this blog for six weeks or so, because most of my free time has been taken up with a slightly different Essbase project: I’ve been writing a chapter (and co-writing another) for volume two of ‘Developing Essbase Applications’. It has been a great, if intense, experience and the book is shaping up to be a worthy successor to the first volume with a combination of new and returning authors. The print version will be available later this year. Follow a Twitter search on the hashtag #DevelopingEssbase or check back here for more updates! is Here

Oracle EPM appeared for download on OTN earlier this week. The arrival of a new EPM version is always exciting, with a flurry of social media activity as people install and test it (my initial observations were posted on the Qubix blog). The testing is the fun part, but the prospect of a from-scratch install never fills me with joy. Fortunately for me John A. Booth has already done the hard work, and released a Metavero AMI (Amazon Machine Image – essentially, a virtual machine snapshot from which any number of identical instances can be spun up on Amazon Web Services). Thanks John! In this post I’m going to explain how to make use of the AMI.

Continue reading

Another ‘New to Me’ Oracle Support Feature

I seem to be spending a lot of time in My Oracle Support (MOS) recently, and I’m going to say this is due to the vast quantity of helpful information contained therein, not because everything I touch has broken for past three months.  It has been an opportunity to explore some MOS functionality.  One nice feature I hadn’t seen before is the configurable ‘Hot Topics’ email, which provides a great way to keep up to date with new support information. Continue reading

Productivity Tip – Firefox Smart Keywords

No MDX, Essbase or ASO internals in the post (you may be relieved to read).

Instead, I want to highlight a very simple but wonderful feature of the Firefox browser – using Smart Keywords (aka ‘Smart Bookmarks‘) to perform custom searches. In brief, ‘Smart Keywords’ allow you to associate the search function of a web page with a text keyword.

If you’re already familiar – as many ‘tech’ types will be – you can stop reading now. If you aren’t, I think you’ll be very pleasantly surprised by how easy this makes accessing your go-to EPM online resources. Continue reading

Use MDX for Custom ASO Roll-Ups that Respect Ratios and Variances

Snappy title, huh?

This post is a quick note on a powerful but hopefully non-obvious feature of MDX against Essbase, inspired by an interesting thread on the Network54 Essbase board.  That discussion is about implementing custom groupings from the reporting layer – i.e. being able to retrieve roll-ups that don’t exist in the underlying cube.  For example, the ASOsamp.Sample Products dimension looks like this:ASOsamp.Sample Product dimension



Suppose that you want to do some reporting on the total of [Personal Electronics] and [Home Entertainment], for which there is no roll-up in the cube.  MDX can do the summing, of course.  But won’t that mess up any ratio- or variance-type measures, by adding the values for [Personal Electronics] and [Home Entertainment] together?  As it turns out, the answer is ‘not necessarily’. Continue reading

Automatic CALCTASKDIMS and Empty Tasks

Some Old News

One relatively unsung enhancement to Essbase in was a change to CALCTASKDIMS behavior.  Before, CALCTASKDIMS defaulted to a value of 1.  From,  Essbase selects a value for CALCTASKDIMS automatically unless overridden by the user with either the CALCTASKDIMS .cfg file setting or the SET CALCTASKDIMS calculation command.

So why am I blogging about this years after came out?  First, there is a good theoretical reason why the above Essbase ‘enhancement’ might have a seriously negative effect on calculation performance, which can be especially surprising when it occurs following a supposed upgrade.  Second, this actually bit a coworker a few days ago, and it’s always satisfying (for me, if not my coworker) when empirical data and theory coincide.
Continue reading