Closed cube lattice drawer

I've made this simple web-based closed cube drawing tool to explain what closed cubes are and how they're good in removing redundant aggregates from storage. I've wrote this for myself initially to get better insights on different aggregate situations and thought somebody might get interested as well.
Go check it out, if you're interested in how future olap engines will be working )))

Look how bad it is with all dense cubes, like (copy-paste these values)
R2;spring
R2;autumn
R1;spring
R1;autumn

and how good with more or less sparse ones

R2;spring;store1
R2;autumn;store2
R1;spring;store1
R1;autumn;store3

Technicalities and my ru_blog

New digest:

1 This blog changed hosting once more. Now it's ultra speed webfaction instead of Yahoo.
Speed, ssh, svn are main switch reasons

2 I've started a more light-weighted blog in russian ykud.ru (who'd guess).

3 And I'm thinking about this blog's future. I've got only one post laying in drafts (it's called "Testing in EP") and after publishing it I'll be out of ideas to write about. Temporatily, I hope.

Maybe I'll publish my current OLAP-research ideas, since I've already been beat-up by some china research group.

Enterprise PLanning Objects Naming Convention.

As I've promised, here are naming conventions I tend to follow in EP projects.
Setting up naming rules doesn't seem so crucial at project start, but generally hits on you on the head on final phase, when development turns to support. And trying to support your colleagues model will leave you thinking about naming objects the same way more than once ;) So naming conventions are one of main project documents for me now.

I really expect and encourage comments on this naming proposal. Maybe together we will create something like Sun Java Code Conventions )
Continue Reading »

Cognos Forum podcasts

All thanks to Shawn Rogers for recording.
Rob Ashe Interview
Southwestern Energy Company
CFO at the US Army's Armament Research Development and Engineering Center (ARDEC)

Last "Cognos-only" forum, they say. Next will be more IBMish.
And they didn't invite me ;)

A simple enchancement for Cognos 8 BI

I just thought that it'd be nice to have a built-in url shortener (like tinyurl or is.gd) for Cognos Reports.
It's not always possible to apply html tags while sending a report link to a colleague, so such a simple thing would help me a lot.
Such an url shortener can be added as an external j2ee application even now, but a built-in feature is better.

Am I missing some nice&simple way to send links to reports?

Contributor transactional logic example

Finally, we've solved problem stated in communities. And Robert allowed me to publish resulting library here as well. See attached zip file.

Problem statement

We have 2 cubes, one containing product groups sales (for example) and the other containing detailed product data. Users should be able to correct overall group totals and correct detailed product distribution.
If group A contains Product 1 and Product 2 and if Total(A) is 100, it's initially split 50\50.
User should be able to modify Product 1 to 75, yielding result of 75\25.
Normal break back won't work this way, because it'll see 75\50 as profile for break back and will produce 60\40 as a result.

So you'd need to create an own break back. That's easy )
Continue Reading »

Sitekeeping

During site cleanup renamed EP cookbook into EP&BI cookbook: now it contains links to bi advices and topics as well.
Added some other site modifications. Though I guess I'd have to move to another hosting to make it work faster. But compared to cognos communities it's a f1 car even now (kicking the dead horse, heh-heh).

Modeling transactions in Contributor

There are some situations when you definitely need some way of recognizing new input from user. These are rather rare occasions, but when it's nice to have such a tool is sack.

One of the applications was discussed in this communities topic. By the way, I'm spending much time on communities these days (it's a very slow site, so no surprise) and I recommend it as a valuable resource for finding cognos-related answers. A steady pace of 10 topics a day gives a rather solid knowledge base now, after 4 months of uptime. If only it was faster, sigh...

So how to catch the fact that user changed this specific cell?

Simple, you just have to remember about virtual dimensions and calculation rules to build a "trigger".

1 You add a simple dlist {value, old_value, new_value_flag}, with new_value_flag = (value?=old_value). new_value_flag is a dlist-formatted element with (yes\no) elements.
2 After user inputs new data into cell, this flag will change to yes (by IF formula) and you can use this data by writing an accumulation dlink using only new data (select yes value from new_value_flag virtual dimension).
3 When you've finished processing freshly inputed data, you just run another link that copies value to old_value, and that sets the flag back.

Ps: It's too bad we didn't follow that topic on communities to a logical end.

Using Oracle Model clause in real-life )

I've been a long-term fan of oracle model by clause, talking about here and there, doing some small&funny examples (like eight queens solution in one select) but lacked some real-life necessity to use it. It always turned out that partition by was enough, or some tricky analytical function was already built-in (like trend calculations I wrote about).
And at last, I've encountered a suitable problem.

Task is quite simple&straightforward: calculate number of periods in which current stock will be sold in a store. Like: today we have sales enough for 3 weeks. That's a very common sales demand analysis parameter (Months of Sales (MoS), Weeks of Sales (WoS), DoS and etc).

Formula is quite simple: Current Stock / Average Sales over some period

But there were some difficulties in my case.
Continue Reading »

Panorama integrates in Google Docs to provide BI capabilities

This is really great. For Panorama, in my opinion. Getting up a giant user-base accustomed to their tools, getting a huge attention.
Where was Cognos IBM, one wonders

Official links
Panorama blog comments

FireStats icon Powered by FireStats