Tuesday, February 8, 2011

Use of Information and BI Maturity Levels


This is a redesign of a chart I came across, a chart that reminded me the state of BI we are in.
The original chart can be found at the excellent book “The Profit Impact of Business Intelligence”.
The aforementioned book is not a tech savvy’s choice. Its oriented towards BI project managers and for anyone who wants to create manage and leverage the BI asset on his organization.

The majority of organizations out there at level1 and struggling to move to the next league. This opens a window for opportunity that enterprises can reap in order to outperform competitors.  Unfortunately this is not the case. Most of the BI initiates are being seen as the poor relevant of the ERP/OLTP system. There is a lack in communicating the real profit of BI to the business stakeholders. Further more its gains are indirect and business process change is required in order for BI to shine in the IT portfolio.
 
Level1
It’s the most common Maturity stage. Indeed the majority of the BI initiates are just delivering information specified by the end users in a managed way.  There is no direct tie between information provided and decisions taken.
This is nothing more than a mere improvement at the process of delivering information prior the BI implementation.

Level 2
At the next level the company must provide a context of information rather than a simple list of required fields. That is we must seek why the information its being requested by the end-user community. By promoting the question “Why we need this kind of information” we can discover flaws to the process or to the information provided.  The major difference between level 1 and level 2 is that Level 2 leverages ROI by aligning supported processes and the Information provided by the BI environment.

Level 3
Based on the previous level the organization leverages the BI asset. This is the stage at witch process restructure take place. At this level we must ask how the information its being used by the end-user community. That means decisions are structured and standardized based on information rather than intuition based on the corresponding user. 

Friday, February 4, 2011

Excel Reports Formater

I have made a simple utility, that formats all reports in a folder (and) sub-folders as well. The purpose of this command line utility is to make the report width adjusted for printing.
It is written on VB .NET 2008 using express (Free) edition.
The BORF (Business Objects Report Formater :-) ) is taking 3 arguments

1. Target Path (e.g C:\Business Objects Pubication\ )
2. File pattern (e.g *.xls )
3. Include Sub-directories (Y/N)
Arguments are separated by space e.g:

BORF C:\temp *.xls Y

In the particular project we have a publication of around 1000 reports as XLS. Managers wanted the reports ready for printing. That is one button print without any modifications at the provided excel files.
Codding its not my forte so don't be harsh on me :roll:
Feel free to check it and provide changes.

Download From BOB Forums

p.s: I have combined the above with an excellent renaming utility in order to get rid of the instance ID on the published documents name. The command line utility BRC its free and can be found here http://www.bulkrenameutility.co.uk/Command.php

Sybase IQ: How to alter the size/type of an existing column


Sybase IQ does not support alter table with change column data type functionality. I don’t know if this is the case with the new version (15). If you are using a version prior 15 you must do the following:
  • First create a table similar to the source but with updated the column to the new data type.
                create table tmp_old_table_name 
                /* unchanged column definitions here */ 
                , old_column  new_type 
                ;
  • Then we must copy the contents of the original table to the newly created one.
                insert tmp_old_table
                (/* column list here */)
                select /* column list here */
                from old_table
                ;

  • Now that the data's there, create any other indexes you want.
                create index extra_index /* blah blah */
                ;
  • Drop or rename old table to backup
                drop table old_table
               
;
  • Rename new table to old table name
                sp_rename tmp_old_table, old_table
                ;