Saturday, March 5, 2011

Hacking EIS for Fun (and Profit)

I have been doing some cool work on our Dodeca Essbase server and am at the point where I am working on Linked Reporting Objects. Of course, one type of LRO is the EIS Drillthrough Report. It has been years since I had EIS running on my machine, so I decided to get it running to help my development efforts.

Needless to say, this is the first time I have installed EIS since I converted my laptop over to Essbase 11.1.2 running on Windows 7 64-bit. Everything seemed to be going along very smoothly building the EIS Sample until I ran the Create Sample menu entry in the EIS console. Error! And it was a very strange one at that:
Contact your AIS administrator because the Java runtime environment may not be set appropriately on the server machine.., IMPORTMODEL failed NULL.

After some quick research, I found I am not alone with this issue as there are a couple of posts on OTN on the subject. With a bit of searching, I found this item on support.oracle.com:

Contact your AIS administrator because the Java runtime environment may not be set appropriately on the server machine..." EIS XML Import /Export Fails on Unix [ID 1086979.1]

The symptoms listed include:
  • Cannot use the Import/Export feature of Models from the AIS console.
  • The XML import/export feature in 64bit EIS 11.1.2 on 64bit Windows 2008 doesn't work.
  • When trying to import or export any OLAP model or metaoutline to a XML file, the following error occurs: "Error -1: Contact your EIS administrator because the Java runtime environment may not be set appropriately.."
I finally got it to work by going to a 32-bit Essbase 11.1.2 VM, configuring the TBC and TBC_MD DSN’s to point to the relational database on my 64-bit server, then running the Create Sample menu item on the 32-bit machine. The import worked and inserted the data into the tables on my 64-bit system.
Once this was complete, I opened the TBC metaoutline and tried the Verify menu item. OUCH! I remember hating this issue:


According to my friends in tech support, I needed to create the tables under the TBC username. In other words, wipe the databases and start over. It was painful enough getting to this point, so I decided to figure out why the TBC username was required.

I looked at the data in all of the tables of the TBC database and found some columns where the TBC prefix existed in the data.


As this is just a test system, I decided I would try to modify the data in my effort to get the EIS sample application to work. In the end, I had to update the ‘TBC’ string to ‘dbo’ in the following tables/columns:
  • OA_INFO – PHYSICAL_TABLE
  • OA_INFO – ATTRIBUTE_EX_RULE
  • MO_INFO – MO_OWNER
  • OM_INFO – MODEL_OWNER
  • OVP_REL_INFO - PHY_TABLE_1
  • OVP_REL_INFO - PHY_TABLE_2
Hopefully, I didn’t miss any of the changes I made as I put this list together after getting the Verify function to work. Once this was complete, the TBC sample loaded successfully. After this brief distraction, back to work on my Java code!

2 comments:

SickSkilz said...

I would encourage moving away from EIS unless you have to use that for outline generation. We use MDM (aka Razza) for building the base outlines and for about 10 years have used EIS for adding drill through tags and performing the Drill throughs. With allt eh issues we have had we are going to be movign to encorporating the concept of drill through functionality via a separate Excel Addin. In testing, the performance is better and we have more control over the sql that is generated.

Tim Tow said...

I had to setup EIS for testing with our Dodeca product. Of course, we support non-EIS drillthrough in Dodeca as well (including the ability to include Excel functions in subtotal blocks in breaks in column values).

Tim