Friday, February 10, 2012

A blast from the (not so distant) past!

Some time last week I got an email from someone who'd googled "extensible attributes" and stumbled upon my presentation at Collaborate '08. It's nice to know that he found this useful. 
I haven't dealt with TCA Extensible attributes since late 2007. 


Here's the link to the presentation - http://cdmsig.oaug.org/file/Collab08SIGTCAEXT1209951946.pdf

Friday, February 3, 2012

Ubuntu - I am because we are

I just installed Ubuntu 10.04 on my 7 year old Dell Inspiron 6000 that was running Windows XP and had become virtually unusable. I am kicking myself for not having gone the Ubuntu route earlier because I am extremely impressed with the ease of installation, setup and running. I feel like a kid with a new toy - one that I "built" myself and the best thing is that it's free!

I now have a LAMP environment - Linux Apache MySQL PHP - that I can play with.

Next - loading some Oracle software !


Wednesday, January 25, 2012

When developers have too much time on their hands..


I can attest to that, it's not microwave safe. Pierce with a spoon and you should be good to go.


Never tried that.



Thursday, January 5, 2012

Happy 2012!

So another year has passed and another one begun! More resolutions made going in through one year and out the other! 
Every year I make a list of things I'd like to get done but this year I'm going to stick to just a few.


- Keep learning
- Keep sharing
- Experiment
- Read a lot
- Enjoy life!


Hope 2012 is a happy and prosperous year!

Sunday, December 25, 2011

Wednesday, December 21, 2011

Sortable Excel Output - Rows to Columns using RTF templates in BI Publisher

I had a math professor who said stuff like "The problem is always tough until you find the solution", which makes sense, if you don't think about it. 


I was tasked with solving what seemed like a tough problem. An existing BIP report used this XML structure to generate MS Excel output using an RTF template.


G_MAIN
  G_CUSTOMER
    CUSTOMER
    TOTAL_SALES
    G_PRODUCTS
       G_PRODUCT
           PCT_TOTAL
           SALES_AMT


The output from a BIP report needed to be changed so that it went from this


Customer
Total $

Breakdown by Product



Product
% of Total
Sales $
Cust1
100,000.00
Prod1
25.00%
25,000.00


Prod2
30.00%
30,000.00


Prod4
45.00%
45,000.00
Cust2
200,000.00
Prod2
40.00%
80,000.00


Prod3
25.00%
50,000.00


Prod5
35.00%
70,000.00
Cust3
1,000,000.00
Prod1
30.00%
300,000.00


Prod3
40.00%
400,000.00


Prod4
15.00%
150,000.00


Prod5
15.00%
150,000.00
Cust4
2,000,000.00
Prod1
20.00%
400,000.00


Prod2
20.00%
400,000.00


Prod3
20.00%
400,000.00


Prod4
20.00%
400,000.00


Prod5
20.00%
400,000.00








to this

Customer
Total $
Prod1

Prod2

Prod3

Prod4

Prod5



% of Total
Sales $
% of Total
Sales $
% of Total
Sales $
% of Total
Sales $
% of Total
Sales $
Cust1
100,000.00
25.00%
25000
30.00%
30000
0.00%
0
45.00%
45000
0.00%
0
Cust2
200,000.00
0.00%
0
40.00%
80000
25.00%
50000
0.00%
0
35.00%
70000
Cust3
1,000,000.00
30.00%
300000
0.00%
0
40.00%
400000
15.00%
150000
15.00%
150000
Cust4
2,000,000.00
20.00%
400000
20.00%
400000
20.00%
400000
20.00%
400000
20.00%
400000



Getting the XML data to include all products, even ones that the customer did not purchase, was easy - good old data densification. In addition, an independent group of all products was required to display product names in the labels. Effectively, the XML structure changed (a little) to



G_MAIN
 G_ALLPRODUCTS
  G_CUSTOMER
    CUSTOMER
    TOTAL_SALES
    G_PRODUCTS
       G_PRODUCT
           PCT_TOTAL
           SALES_AMT



To get the XML rows to appear as columns wasn't too bad either. All that was needed was a <?for-each@cell:grpname?> directive and the BIP engine takes care of the rest.


 The RTF template looks like this:


Customer #
 Total $
F PRODUCT
end
F % of Total
Sales $
end
FECust1
9,999.99
F
0.00%
99.99
end  E


where F = <?for-each@cell:grpname?> , end = <?end for-each-group?> 
FE = <?for-each:groupname?>, E =  <?end for-each?>

Friday, December 9, 2011

Free X Windows Emulator to run Oracle Installer

After getting frustrated with 30-day trial licences for X windows emulators like X-Win32, Hummngbird etc, I googled "Oracle Installer xwindows emulator" and the first hit was to Andrew Fraser's blog post.  Nifty little DSL (Damn Small Linux) tool that makes installing Oracle products that much easier. Thanks Andrew!