Think Small
When I were a lad, VW Bugs (or Beetles – take your pick) were thick on the ground. My parents’ friends had them; my father drove one of these bad Squareback boys, picked up direct from the VW factory at Wolfsburg and a fine car till it caught on fire. Twice. In fact my grandmother drove a 1969 one in her favorite color – red. In the 1960s, small was beautiful. It still can be.
Small is definitely not one of these:
It’s rather more like this:
That’s history. What do I drive? I walk the automotive walk. Hmm, that’ s a bad analogy because the point of having a car is that one doesn’t have to walk but no matter. Here’s my lead sled:
Yup, there it is in all its glory, parked right next to my favorite trailhead. I like to think that I’ve driven off road more than 98% of SUVs even if it’s just grass. I’m quite the reverse snob.
My so-called friends have deemed this really quite cheap, gets great mileage, and irredeemably geeky hatchback as: The Mustard Cruiser, The Short Bus, and most cruelly, The Dorkmobile. All true, alas, but at the same time it’s all I need and gets me that much quicker to enjoying my 401k. Small is beautiful if that’s all you need.
Why Cameron, why oh why oh why have you illustrated your point – wait for it, it’s almost upon you oh Gentle Reader – with a series of cars? ‘Cos it’s illustrative of how you can address Free Form Planning aka Essbase SaaS’ limitation of needing an Essbase outline to start things off.
Small is beautiful
What if you don’t want all of those “required” Planning dimensions? Maybe Time and Scenario and Entity (eh, this one is debatable as you can just treat it as a custom dimension) aren’t needed? Planning requires them. Does Free Form Planning aka Essbase SaaS? What happens if you should happen to Think Small? Could you in fact create the smallest of all possible Essbase outline files and use it as a path to a truly custom Essbase SaaS application? In other words, create a stub outline in Essbase proper and use it again and again and again across Essbase SaaS applications. That would give you close to truly custom Essbase applications as traditional on-premises Essbase.
Remember, this isn’t a Planning (E/PBCS) reporting app, this is Essbase SaaS and Essbase means we can do what we want, when we want. That at least is the theory.
So what if I started out with the smallest Essbase outline evah (in my best Kscope 2020 Bostonian accent)?
Whoops, one thing to note: EVERYTHING BELOW IS YR. OBT. SVT.’S “GENIUS” AND IS NOT SUPPORTED BY ORACLE. The below (sort of) works right now and is an interesting exercise, but I imagine functionality will change in the future so the experimentation may (heh, probably-definitely but who knows) be for naught. This is my version of a Safe Harbor statement so don’t lose your marbles if it doesn’t work for you or Oracle disallows it or it isn’t needed in future or if that hoped-and-prayed-for comet hits Earth and we have the Big Reset. It’s a funny old world and who can predict the future. Not me. You Have Been Warned.
I’ll also note that this testing is incomplete: it’s BSO only, I haven’t tried to load data, or add security, or do much of anything with it. This is theoretical science, not applied science.
With those enormous caveats, let’s explore.
No dimensions at all
It looks just like this completely empty outline with the oh-so-clever name of “0Dim”:
What happens when I create a new application and try to import that outline as a brand spanking new Essbase SaaS app? The only way to know is to try:
It’s an .otl file – I don’t think any analysis has taken place yet:
Looks good:
And…FOOM!
Bugger, that didn’t work.
Really? Is it really all for naught?
Hah! I can get into the app, but I can’t actually do much of anything.
If I go to Jobs I see that in fact a database of some sort was created (I am in an app so yeah, must’ve done):
But alas:
So much for that moment of brilliance.
Just the one
Let’s add a dimension with one of the five different outlines I’ve created. I am nothing if not thorough albeit lazy. Also, I have no idea if this will work or not.
Here it is in its antediluvian 11.1.2.4 glory:
Oooh, not the Account dimension, despite the name.
Create again:
Off it goes:
What ho! It didn’t fail. That’s something. I hope.
Yes, yes, yes, a dimension called “Account”:
Let’s add a custom dimension. I use the word “custom” but this is Free Form Planning aka Essbase SaaS. Aren’t all dimensions by definition custom? We shall see.
Sure, why not:
Add a member:
That seemed to work. Let’s do the same for Account:
Hmmmm. We seem to have a problem. This isn’t really the Account dimension.
Here’s “real” Planning:
Oh my, there do seem to be a lot of properties that my Account dimension does not have. Back to the drawing board.
But wait, before I do that (and after I refresh the database), can I in fact use this application? At least at the form level, yes:
Two’s the charm
That’s a start but not enough. Let’s try this with two dimensions and this time actually tag them as dimension types:
I shall spare you – and me as taking screenshots of creating an application and then pasting them into this deathless prose takes time and has begun to pall – the mechanics of deleting and then recreating an application. Let’s see what we get:
Ah, a real Accounts type dimension. Essbase SaaS does pick up properties from an Essbase outline which I suppose in retrospect isn’t all that surprising.
What do we have over in Period?
Ugh.
Okay, I’ll add the periods of the year:
If you squint just so, you see that while I can click on YearTotal, I can’t actually assign the months to that member. So double ugh: I don’t want BegBalance and I can’t move months. I don’t really like YearTotal so it’s triple ugh. Can I fix it? Sure, Cameron, sure you can fix it if you will but stumble through.
It’s time
This time I’m going to create a dimension that matches Good Old Sample Basic:
Recreate the app and…
Better, but still not what I need. BegBalance is great for planning with a small or large “P” but not for my purposes. And the quarters don’t add up to YearTotal and I still can’t add them as children. Trying again…
I think I need to learn to live with BegBalance, but at least I have a proper Period dimension.
What happens if I saw I don’t care about a proper Period dimension and instead go down the path of a custom dimension for time. Will it work? Note that Year is not tagged as Time within Essbase in this copy of Sample.Basic.
Let’s do a validate outline:
Bugger, I can’t go down that path. Learn to like BegBalance, I suppose.
Coming back to a two dimension approach, can I actually get any numbers into my application?
Enter ad hoc:
I can at least send and retrieve data:
So what do we have?
As noted way back at the tippy-top of this screed, all of the super important concepts in Essbase like loading data, security, etc. have yet to be tested. Also, this is BSO only (hint: it’s similar but different in ASO). I would not take what I’ve done as a way to create a starting point for Essbase databases with as little forced dimensionality as possible. Maybe, but further testing on my part is required.
All of that aside, yes, we can use a stub outline from on-premises Essbase to go off and Do Great Things. Per the above, does this cripple other important bits of Free Form Planning? Maybe it’ll kneecap truly Planning functionality that we don’t care about in an analytical database. Time and testing will tell which is what will come in the next few posts on this exciting (really) topic.
Be seeing you.