25 February 2010

What Is Dodeca And Why Should You Care?

Everyone knows Tim
You know who I’m talking about, don’t you? 
Over the years, you could hardly have missed him at oh, Arbor Dimensions , Hyperion Solutions, Oracle OpenWorld, OAUG Collaborate, and ODTUG Kaleidoscope.  He’s omnipresent, and gives freely of his time, expertise, and knowledge.  He’s also one heck of a nice guy.  And kind of a rock star.
He’s been deeply involved with ODTUG's board and is currently on the ODTUG Hyperion SIG board.
Did I mention that he has this company called AppliedOLAP?
Did I also mention that when I met his mother, I (for real and for true) told her that I wanted to be just like Tim when I grew up?  (This was at the tender age of 38, I best get cracking).  I’ve never wanted to be like anybody else, ever.  Not in the real world, at least. 
Did I mention that Tim and his team have graciously, generously, and for free taken over maintenance of OlapUnderground’s Outline Extractor, Advanced Security Manager, and Substitution Variable Manager.
Lastly, he’s an Oracle Ace Director.  That honorific isn’t exactly handed out like popcorn at a movie.
So, have you guessed yet?  I hope so – if you haven’t, I wonder if you have a Hyperion pulse.
The drama ends, and for many of you, there wasn’t a bit of a guessing game – the Tim I’m talking about is none other than Tim Tow.
And he has this product that I’m going to spend the next few blog posts reviewing in some depth.  I’m going to do a John Goodwin on this – come back to the same product again and again from different angles.  I think it will be fun.
NB – This won’t be a marketing review of the product, but rather a practical guide to the product and how you can use to build your most awesome Oracle EPM/Hyperion system ever.  E-v-e-r. 

Dodeca – what is it?

Here’s AppliedOLAP’s official description of Dodeca:
Dodeca is software that supports interactive analysis, planning, and reporting activities performed by business users and decision makers at all levels within an organization.
And here’s how I see it:
1)   It is the best Excel that Essbase ever met.
2)   It isn’t Excel.

Simple, eh?  And of course that description doesn’t touch all of the frankly amazing work under the covers that makes it such an awesome tool.  It’s all cool stuff, but from the sharp end of the stick, while it’s important to understand how Dodeca works and why, the most important part is what it can do for you when you implement it.

I’m just wild about Excel

Excel is wonderful, great, powerful, flexible, extendible, and customizable.  It is arguably the most widely used part of Office bar Outlook and more value sits in Excel worksheets than in annoying emails.  I love Excel.  Everyone who works in Accounting/Finance loves it.  It is warm, and cuddly, and just all around great.

And the problem is?

Alas, the “powerful, extendible, customizable” attributes are what causes so much trouble when Excel is used as a reporting tool against Essbase.
I’ve seen (and written) three kinds of Essbase/Excel reporting systems:  templates, templates with a wee bit o’code, and a super-duper locked down environment.
There are problems, big problems, with all three of these approaches, and I’m probably guilty of perpetrating all of them.  Former clients – I’m sorry, I did my best, but all I had was Excel.

98 lb weaklings, or have you thought about protein shakes

These are just templates that users retrieve into, or lock and send from.  Can this be broken?  Oh yes, and how.
The basic kind of “system” is an Essbase database, however derived using Excel files with high level retrieves.
Somehow this workbook, or series of workbooks, is distributed to users.
In turn, they connect to Essbase, retrieve/send, and change the report to their needs.

The Good

  • Simple to create.
  • Simple (sort of, your users have to understand the add-in or SmartView) to use.  Simple for you, at least.
  • No code, so quick to create.
  • Er, that’s about it.

The Bad

  • The templates can get out of date and need to be redistributed.
  • There isn’t a tremendous value in simple reports that need to be manually and uniquely modified by the user.
  • It’s easy to break the Excel report with a pivot (or the flip side of not being able to pivot at all) – that will generally blow up the entire report and may really get ugly if you have hidden retrieve ranges and nicely formatted presentation ranges.
  • The reports also break (or worse, still retrieve, but give different information than you anticpate) if rows or columns are deleted or even a member in a POV is deleted and replaced with a top-of-dimension member.

Spends time at the gym,  but not enough

Templates again, but with some automation, like an automatic log on and retrieve.  These templates are still rickety and prone to user error.

The Good

  • Connecting to an Essbase database is a controlled act – at least you can be sure your users are connecting to Sample.Basic instead of some other database.
  • You get to exercise your coding skills.  Do more, and one day you’ll be the Mr. Universe of programming.  This attribute may actually fall under The Bad – one programmer’s dream is another’s maintenance nightmare.
  • Did I mention that this stuff is custom code either in the workbook or in an add-in – it has to be distributed, somehow.
  • Once you get past the crude automation, the actual creation of reports isn’t too bad.

The Bad

  • These reports are still wide open, and are easy to break for all of the reasons listed in the 98 lb weakling section.
  • The system is just barely one step above templates against Essbase – your users have to be proficient with retrieves, sends, report writing, etc.  Honestly, was it worth the candle?

Dude, lay off the steroids

A completely locked down Excel environment.  In fact your users wouldn’t even know you were in Excel, save for the grid.

The Good

  • You are the Mr. Universe of programming.  Nice code, nice approach, nice functionality.  This is cool stuff.
  • Excel is locked down tighter than a drum head.  No user errors are going to happen here.  I don’t even see the File menu.
  • You have accounted for every bone-headed/honest mistake a user can make.  This system is solid.

The Bad

  • You’ve got to be a really, really good VBA programmer, and spent a lot of time thinking about how retrieves and sends are going to work.
  • Did I mention you wrote a lot of code.  A lot.  And it took time.  A lot.  Maybe way more than you anticipated.
  • The cool code you wrote is probably a bit specific to the database.  Did you plan for portability to other applications?  Whoops, you forgot.  Yeah, me too.
  • Uh-oh, your company just migrated from Excel 2003 to 2007.  Toolbars don’t really work any more, nor do custom menus (okay, they work, sort of, but not the way they used to).  What are your thoughts on the Ribbon UI?
  • ·Whoa, you just got hit by a SEPTA bus.  You are hors de combat.  Does your company have a good succession plan?  Who’s going to maintain your ultra cool application?

If you think Excel is good, check this out

No, this is not one of those “Hold my beer and watch this” moments.  Instead I’m going to list the ways Dodeca fixes the above problems.  I’ll end this post with just a list of what Dodeca can do for you with this post – the next one will dive deep into specific features.
Oh, and lest anyone with a reddened neck takes offense to the above link, let me tell you about my time in 4-H.  And the unpasteurized milk (how oh how did we survive?) we used to get from the beefalo that tasted like onions when she ate onion grass.  And all about the tour of Hatfield Quality Meats to see where our 4-H pigs and cows ended up.  That was certainly an education.  Now I know why you never name the animals you eat.  :)  In short, I may look like a geek, but I am from Pennsyltucky, and proud of it.
Okay, so a Yankee redneck (really just pinkish nowadays, I don’t even have a garden) is telling you to forget the beer, hold my coffee, and see how Dodeca solves the problems I listed above:

Distribution

Dodeca pushes Excel templates across the web.  If you’ve got Internet Explorer, you can use Dodeca.

Bulletproof

We’re talking Level IV, baby.  These reports can be just as protected as you like.  Or not.  The power is in your hands.  Did I mention this product is awesome?
POVs, dimensions, subsets of dimensions – these are all customizable and the Dodeca user can have just as much or as little control as you want.

Automation 

Logins, disconnects, multiple databases, user types, sends, calcs, dimension selectors (Ever write one of these?  Somewhat painful, isn’t it?) – anything you can think of, it’s already been thought of by Tim, et al., and frankly, it’s better than what you could do.  A painful blow to the ego for this particular programmer, but I have to bow to superior intellect and effort.  (Be honest, even if you thought you could write a better mousetrap, would you?  Really?  You have nothing else to do with your time?  Yes?  If so, I envy/pity you.)

Code

Nope, Tim, Amy, and the rest of the talented crew at AppliedOLAP wrote lots, and lots, and lots of code so that you can create template reporting systems with no code, unless you want to. 
There is an code framework called workbook scripts that allow you to customize behavior, and the entire product is extensible, but I’ll bet you never have call to go that far.  Unless you want to.  Again, I mention the awesomeness of Dodeca.  It is an implementer’s dream.

Excel Versions

Nope.  Did you miss the bit where it uses Excel templates but doesn’t use Excel?  Magical, isn’t it?

Hard to believe?

Are you a little scared of the time commitment to do all of this?  You shouldn’t be.  It’s still the same Excel templates that you know and love.  Incredible, isn’t it, because you aren’t using Excel one little bit when you’re in Dodeca.

Coming next time

So I’ve made big promises about what Dodeca can do, and why it’s the best Excel you’ll ever tie to Essbase.  Talk is cheap. 
The next post is going to provide a basic view of what Dodeca looks like from a developer’s perspective, how to hook it up to Essbase, and what simple template reports look like.
In the following posts we’ll dive down, down, down into the product and show you how you can make it sing.
This product is the best, and I’m determined to make sure that every Essbase hacker out there knows it, covets it, and implements it.  Thank goodness I don’t set unrealistic goals.  :)