Sunday, 23 July 2017

EPMINS-01050: Cannot install a selected product because IIS is not installed. You must install IIS before you can proceed with the installation.

In this blog, I would be talking about an error I encountered and how to resolve it. I was trying to install Hyperion EPMA on a Windows Server. When I try to install the EPMA component, I get an error as shown in the below snapshot.


The error says:

EPMINS-01018: Cannot install the selected component Performance Management Architect Dimension Server Service. Click Help to see possible reasons.
EPMINS-01050: Cannot install a selected product because IIS is not installed. You must install IIS before you can proceed with the installation.
Now, the error message tells you what the fix is supposed to be i.e. install the IIS Web Server.

In order to install IIS, go to Control Panel -> System and Security -> Administrative Tools

Click on the Server Manager in the above snapshot.

Click on the Roles in the Server Manager tab and click on the Add Roles link as shown in the next snapshot. 
The next snapshot shows the installation of the IIS role. This is pretty straightforward and I have kept the default settings as is.






     
The above snapshot shows that the IIS Web Server has been installed successfully.

The next snapshot shows that after the installation of the IIS Web Server, the Hyperion EPM install proceeds successfully.

Hyperion Error: EPMINS-01094: User Account Control is enabled. Installation may lead to unpredictable results and thus will be stopped

In this blog, I will be talking about an error I encountered while doing a Hyperion install on Windows Server 2008. Now the error I received while doing the install is as shown in the below snapshot:

 
The error says “EPMINS-01094: User Account Control is enabled. Installation may lead to unpredictable results and thus will be stopped

Now the issue is because the User Account Control is enabled. User Account Control is a security feature in Windows which helps to prevent unauthorized changes to the operating system. Now the problem with a Hyperion install is that it updates the system values and registry settings. And these are the precise things that UAC is designed to prevent. Now in order to fix the error, you need to go to Control Panel and disable the UAC.
Go to Control Panel. This is shown in the next snapshot.

Click on User Accounts in the above snapshot.


On clicking the User Accounts in the above snapshot, a window pops up which allows the user to disable the UAC Feature. This is shown in the next couple of snapshots.

The default UAC settings is as shown in the following snapshot.

Change it to “Never Notify” as shown in the next snapshot.

Running the install goes ahead successfully as shown in the next couple of snapshots.



I would recommend that you turn back the UAC once the install and configuration has been completed successfully since it is designed to keep the system secure. Turning UAC off may compromise a system.

Sunday, 16 July 2017

Hyperion Planning application – Getting information about application from your plain old LCM

In this blog, I would be talking about getting information about Hyperion Planning applications out of an LCM extract. Now suppose it’s a normal business day and you get an LCM extract that you need to import and create a new application in say your test or dev environment. This happens quite often that you need to test out some data issue or so on. Now, the thing is you have no idea how the application is setup since you do not know the start month and the end month, how many years are there in the application and if it supports the multiple currencies or not. Since these are important to define an application, let us see if we can dig into the LCM extract of a Planning application and get this information.

The following snapshots shows me creating a standard Hyperion Planning application.







  
Now, let us take an LCM extract of the application. Expand this path in LCM as shown in the below snapshot:
Configuration->Properties->Application Definition
Configuration->Properties->Application Settings

The LCM has executed successfully.

Now if you open the zipped folder, and navigate to the path, you will find a file called as “Application Definition.xpad”. This is shown in the next snapshot.

Open this file and you will see that all the options that you had chosen initially while creating the application is available in this file in an XML format. The contents of the file is shown in the next couple of snapshots.


So the next time you get a Planning LCM extract for an application that you don’t know much about, just go through the XPAD file to see how the application has been defined.

Sunday, 9 July 2017

Universal Data Access in FDMEE - How to go about it in a step-by-step way

This blog contains links to the separate blogs I had posted on how to do Universal Data Access in FDMEE...

Installing Oracle Data Integrator for enabling Universal Data Access in FDMEE  - http://exploitsinhyperion.blogspot.in/2017/04/installing-oracle-data-integrator-for.html

Connecting to FDMEE Work Repository using Oracle Data Integrator  - http://exploitsinhyperion.blogspot.in/2017/04/connecting-to-fdmee-work-repository.html

Applying OPATCH for enabling Universal Data Access in FDMEE - http://exploitsinhyperion.blogspot.in/2017/05/applying-opatch-for-enabling-universal.html

Defining the Physical and Logical schema for Oracle data source  - http://exploitsinhyperion.blogspot.in/2017/06/universal-data-access-defining-physical.html

Importing Adapters and Universal Data Access Models - http://exploitsinhyperion.blogspot.in/2017/06/fdmee-universal-data-access-importing.html


Defining the Oracle Database Source System and Source Adapters  - http://exploitsinhyperion.blogspot.in/2017/07/universal-data-access-defining-oracle.html

Defining an Import Format and pulling data from an Oracle Data Source -
http://exploitsinhyperion.blogspot.in/2017/07/universal-data-adapter-defining-import.html

Essbase Report Scripts – Did my Essbase report script just mess up my downstream?

In this blog, I would be talking about good design practices which if ignored may have potential impact on downstream systems. Now, a gist of the problem. I was using Essbase report script to extract data from one of my Essbase applications in a tab delimited format. This data then goes to a downstream system which replaces the tabs with commas and then uses the new file to create a dashboard using Oracle Data Visualization Desktop.

Now, the below snapshot shows the output of my Essbase report script.

Now, when the reason I used a tab delimited file is because it was easier for me to copy paste it into a spreadsheet. Classic example of ease becoming a design choice without forethought. Now, when this file when to the downstream system, it replaced tab with comma. However, when I tried to import this file into the system, I got an error.

The reason for the error is this. The file is supposed to be a comma delimited file with 8 fields. However, my Essbase report script was adding a comma whenever the data value crossed 999. Thus, for some rows the number of columns became 9 or 10. So, the rejection from my downstream.
Now, the below snapshot show the report scripts I was using.


In order to fix the issue, I added the SUPCOMMA formatting command to the report script as shown in the below snapshot.

On running the report script, the data is now coming as expected.

The law of unintended consequences always holds. A simple design choice may very well break your entire system. For me this was ignoring the SUPCOMMA.

Tuesday, 4 July 2017

Universal Data Adapter – Defining an Import Format and pulling data from an Oracle Data Source

In the final blog about Universal Data Adapter, we are now going to define an Import Format that maps to the relational Oracle data source and pulls data from the table into FDMEE. This will be a pretty small post since we have finished most of the customization for enabling FDMEE to access the data source in the previous steps.

Link to previous blogs is present here:

Installing Oracle Data Integrator for enabling Universal Data Access in FDMEE  - http://exploitsinhyperion.blogspot.in/2017/04/installing-oracle-data-integrator-for.html

Connecting to FDMEE Work Repository using Oracle Data Integrator  - http://exploitsinhyperion.blogspot.in/2017/04/connecting-to-fdmee-work-repository.html

Applying OPATCH for enabling Universal Data Access in FDMEE - http://exploitsinhyperion.blogspot.in/2017/05/applying-opatch-for-enabling-universal.html

Defining the Physical and Logical schema for Oracle data source  - http://exploitsinhyperion.blogspot.in/2017/06/universal-data-access-defining-physical.html

Importing Adapters and Universal Data Access Models - http://exploitsinhyperion.blogspot.in/2017/06/fdmee-universal-data-access-importing.html

Defining the Oracle Database Source System and Source Adapters  - http://exploitsinhyperion.blogspot.in/2017/07/universal-data-access-defining-oracle.html


The FDMEE Import format is as shown in the below snapshot.

Observe the Source, Source Type and the Source Adapter are all pointing to the Oracle data source that we had created previously.

The next snapshot shows me mapping the fields to the corresponding fields of the Target application.


Once the mapping is done, click on the “Regenerate ODI Scenario” button. The snapshot after clicking the button is as shown in the below snapshot.
The next snapshot shows that the ODI Scenario has been generated successfully.

I now define a location for the import format. This is shown in the next snapshot.

I now define a data load rule as shown in the below snapshot.

Observe the Source Options that I only want data to come through for Entities which are like E-1. This customization was done from the Source Adapter.

The Calendar setup for this is as shown in the below snapshot.

In the data load workbench, when I go an click on the Import button, the data gets successfully imported from the Oracle database table as shown in the below snapshot.

Just to ensure that the data is actually coming through as expected, I insert another record for E-1 entity in the FINRPT_STAGING table.

The data in the FINRPT_STAGING table is as shown in the below screen grab from the relational table.
On clicking the Import button once again, the data is pulled from the relational table as shown in the below couple of snapshots.


 Thus, we have now used Universal Data Adapter to integrate data from Oracle database table into FDMEE.
 

Monday, 3 July 2017

Universal Data Access – Defining the Oracle Database Source System and Source Adapters

In this blog, I would be talking about defining Oracle database source system and source adapters for enabling Universal Data access. Now, the data we plan to load into an application using FDMEE is present in a table called FINRPT_STAGING. The contents of the table is shown in the below snapshot.

The table definition of the FINRPT_STAGING table is as shown in the below snapshot.

The Setup tab of FDMEE is as shown in the below snapshot.

The next step is to define the Source System for the Oracle table. This is as shown in the below snapshot.

The next step is to define the Source Adapter for the Oracle database.

A source adapter is an integration framework in Oracle Hyperion Financial Data Quality Management, Enterprise Edition that enables you to extract data from the source system in a flexible and customizable manner.
The Source Adapter tab is as shown in the below snapshot.

I click on the add button to add a new Source adapter. The details of the new source adapter is as shown in the below snapshot.

  • The Adapter key is named as “FINRPT”
  • Given a name to the adapter called “FINRPT_STAGE_ORCL_ADPT”
  • The Source system reflects the Oracle data source to which I want to connect.
  • Table name is pointing to FINRPT_STAGING which reflects the Oracle table that I want to connect to.
After hitting the save button, the new source adapter is added as shown in the below snapshot.

Click on the “Import Table Definition” to see if the configuration has been completed successfully. If it is working as expected, you should get a screenshot as shown in the below snapshot. 

Click on OK button to import the table definition.
The snapshot after the table definition has been imported successfully is as shown below. 


The table metadata comes through in the FDMEE landing page as shown in the following couple of snapshots. 

Once the metadata has come through, click on the “Generate Template Package” button. This is shown in the below snapshot. 
The below snapshot shows the Template Package being generated successfully. 
An interesting aspect of the Source Adapter is that I can create and define filters to filter the records which come from the source system. Let us assume a case that we make use of FDMEE to load data for multiple entities. All these entities update the same target table. However, all of these Entities do not update the data simultaneously. So I can have a case where my Entity E1 has updated all of the data in the source table, but my Entity E2 has only updated half the records. The remaining half will be updated in a couple of days. Thus, I do not want to load E2 entities in a load now and I will do the load of E1 today. This can be accomplished by parameters in the Source Adapter. Me defining the Source Adapter parameters is as shown in the below snapshot. 

In the next blog, we will create an Import Format and try to import data from a relational table into FDMEE using Universal Data Adapter.

Link to previous blogs:

Installing Oracle Data Integrator for enabling Universal Data Access in FDMEE  - http://exploitsinhyperion.blogspot.in/2017/04/installing-oracle-data-integrator-for.html

Connecting to FDMEE Work Repository using Oracle Data Integrator  - http://exploitsinhyperion.blogspot.in/2017/04/connecting-to-fdmee-work-repository.html

Applying OPATCH for enabling Universal Data Access in FDMEE - http://exploitsinhyperion.blogspot.in/2017/05/applying-opatch-for-enabling-universal.html

Defining the Physical and Logical schema for Oracle data source  - http://exploitsinhyperion.blogspot.in/2017/06/universal-data-access-defining-physical.html

Importing Adapters and Universal Data Access Models - http://exploitsinhyperion.blogspot.in/2017/06/fdmee-universal-data-access-importing.html