Saturday, July 12, 2014

Decision Package Creation falls due to “An error occurred while running the specified calc script”

Author:-Sanjay Purohit
 Audience:-Hyperion Solution Architect, Functional Lead and Hyperion Business User.
The Hyperion Public Sector Planning and Budgeting (PSPB) out of box Decision Packages (DP) and Budget Request (BR) functionality is not straight forward. The word “Out of Box” really confuses customers. Customers assume no configuration and setups are required to use this functionality. However the assumption is completely wrong. The setup of DP requires functional understanding of business with Hyperion Planning technical knowledge. The first and most import step of DP setup is modification of pre-built business rule “BIUpdateXXXXXXX”. DP enabled application creates BIUpdate(name of plan type) rule for each plan type. Creation and modification of DP runs this rule on planning server. This rule updates values on Essbase to track recurring and non-recurring budget request.  I was not aware about this fact and try to create a baseline decision packet and got the below given error.



Objective
The purpose of this article is to provide you an understanding of BIUpdateXXXX rule and modification requirement before to create decision packages. If decision package option is enabled during the application creation process; it will create BIupdateXXXXXX rule for each plan type (Where XXXX denotes the plan type name).  Since custom dimension are added after the application creation. The application creation process does not know what member to add in the rule. However this theory does not apply on HCP plan type because HCP comes with Out of box dimension and no modification is required at most of the time.  The modification of BIupdateXXX rule is only required on custom plan types where you have to add custom dimension. The default rule creates a fix statement with “FIX ("Period", "Year", "Entity",{Scenario}, {Version})”member combination. This combination is perfect if we don’t add any custom dimension but most of the time we have to add custom dimension to meet requirements.

how To

I will take an example from one of my application where I had few custom dimensions. The default rule does not have all the members and will not work for below given outline. Let say, if we have to update BIUpdateXXX rule as per the below given dimension. I will go ahead and add (UnspecifiedActivity,Unspecified CIPProject,Totalnd,UnspecifiedLocation, and so on  to each dimensions). These unspecified members will be used to tack data in BIUpdateXXX rule.  


 After updating the rule should look like:-


After modification save/validate/deploy the business rule in calculation manager. You would need to modify BIUpdate business rule in all custom plan types. HCP plan type can be ignored. 

Now try creating a DP. You should not see any error. Please read the Oracle document  for more information

Friday, July 11, 2014

Decision Packages and Budget Request with Oracle Hyperion Public Sector Planning and Budgeting Application

Author:-Sanjay Purohit

Audience: Hyperion Solution Architects, Functional Lead and Hyperion Business users
The Hyperion Public Sector Planning and Budgeting (PSPB) come with out of box Decision Packages (DP) and Budget Request (BR) functionality. This functionality was a core selling point of Oracle PSPB sales team to municipal, city and state governments. Government highly uses DP during the budget formulation process.  However the out of box functionality requires some setup and does not meet most of requirements. We will cover a brief overview of DP and BR. We will also demonstrate the initial setup of decision packages.

Objective
The purpose of this article is to provide you brief information about DP/BR and also provide you an overview of setup process. I will also demonstrate the life cycle (The entire approval process) of decision packages in my next posting posting. Before we start, let me write something about DP/BR; and how they are used during the budget formulation.
Decision Packages (DP): - The DP is one of the primary elements to formulate government budget. The DP is a mechanism for department/division to make convincing case of their proposal. The DP puts all narrative justification, associated financial cost, required man power together and allows department head or staff member to submit an incremental/onetime request funding request. The budget office really depends on DP justification to make any judgment.
Budget Request (BR):- Each decision package may contain one or multiple budget requests for funding a position, hiring an employee or operating expenses. All BRs aggregate to decision package and follows a promotion path.  BR can have narrative justification and the text can be mapped to budget book publication. However the reporting options are limited.

Decision Package Highlights:-
·         Decision package option should be enabled during the application creation otherwise this functionality will not be available. This functionality is only available with Classic planning application. EPMA does not qualify. JJJJ
·          If a user creates a decision package and define display alias for entity; the alias of entity will display on decision package creation screen. ( only user  friendly function)
·         Budget request and decision package can be ranked in an order as per department/budgeting office priority.
·         Decision package provides flexibility of including and excluding a DP from total budget.
·         Decision packages follow the master planning unit hierarchy (PUH) but can be configured a specific approval path. Admin also needs to assign scenario and version to PUH/DP.
·         The promotion of decision packages triggers validation rules on planning server. The DP will not be promoted if any validation rule fails or givens error.
·         Decision package provides a flexibility of sharing with multiple entities/cost centers.
·         Planning BSO cube has limitation; Oracle recommends pushing the entire compensation budget, operating budget and decision package data to ASO cube.
·         Decision packages are primary built for Public Sector Planning and Budgeting application. But if users wish to use DP enable application will not able to use mass update such as overwrite compensation or allocation default.
·         Decision package cannot be deleted if it is being shared or have not zero value.
·         Users can not terminate employee in non-recurring budget request. Termination of employees of employee is only supported on recurring budget request.
·         Decision packages have reporting limitation. Only few reporting option are available to report DP and BR.
·         Baseline decision package represents current service level of organization budget and new decision package can be added on top of it.
·         User must have write access to own and edit decision package and view access to view.
·         Decision package is capable of delta capture budget request.
·         Users can add notes/comments and attach notes to explain decision package.
·         Administrator needs to create BR_1 …BR_2… and…. BR_& members to hold decision packages.

how To

Creation of BR Members: - Admin user should create BR_ member for users.  I am going to crate 30 member in below given example. The new created members will be used with DP



Creation of DP Type: - DP types are a way to organize the DP.  I have created new DP type Operational & Personal. The admin can create DP type by going to Administration>Manage>Decision Package>Decision Package Type. Each Type of DP should have following. The PSPB comes with two default DP types.
  • All Decision Packages
  • Compensation Expenses


Data Collection Forms: - Admin can assign any decision package compatible data form under this tab by clicking plus sign


Reporting Application Mapping: - DP provides a functionality to push data to reporting cubes. Oracle recommends using ASO cube for reporting application



Rollup Member: - Setting up of rollup members is required to see the data on DP and BR level. Admin roll-up members and write a business rule according. I have setup the roll up as per my dimension needs. The roll up of HCP cube comes out of box (Default) Please see Hyperion Public Sector Planning and Budgeting guide for more info.


Justification Questionnaire: - This is the place to setup an explanation or addition information that users must enter before to submit any decision package.  



Decision Packages Type Attributes:- DP attributes can created for reporting purpose




Wednesday, June 25, 2014

How to Identify Employee and Positions with Missing Allocations with Public Sector Planning and Budgeting Application

Initial Draft:-Tejas Patel                                                                  Review & Updated By:-Sanjay Purohit

Audience: Hyperion Solution Architects, Functional Lead and Hyperion Business users
Hyperion Public Sector Planning and Budgeting (PSPB) application comes with three prebuilt configuration options.


Employee Only: - This model is used to track and budget/compensation by employees who are assigned to various jobs and benefits.

Position Only: - This modes is used to tack and budget/compensation by positions. The compensation amount will be based on overall FTE and benefits.

Employee and Position: - Most commonly used model by municipal and state governments. This model tracks budget by employee with assigned position and benefits.

Any configuration model can be selected based on organizations need.  Oracle has spent good amount of money and time to come up with PSPB design and options. All three modules are loaded with prebuilt business rules and data forms; and should meet most of the requirements out of box but we don’t live in perfect word and each client has specific needs which require customization. I personally don’t like to customize HCP at all.

Objective

The purpose of this article is to identity positions and employee in PSPB application with missing allocations. Hyperion Public Sector Planning calculates position and employee compensation on various factors such as salary grades, hours and FTEs.  The final compensation numbers are pushed to LineItem plan type. The assigned segments determine how the cost should be allocation across segments. The right amount should go to right bucket in General Ledger (GL).  Checking allocation of each position and employee is tedious process with current pre-built HCP functionality.  I am going to demonstrate; how to build a data form to identify the missing allocation by departments/entities. We will cover two modules “position” and “Employee and Position” module. I personally have expertise with both.

solution

Employee and Position Module/Configuration: - Design a data form with following member combinations. This should provide the position/employee with missing allocation.  This data form pulls all the position and employee associated with entity. Each position has a start date and should have allocation start date.  Missing start date denotes missing allocations.




Position Only Module/Configuration: - Design a data from with following member combinations. This should provide the position with missing allocations. I have placed entity on rows to see all the entities once. This could cause planning crash. You also can place entity on pages items to be on safe boat.  




Thursday, June 19, 2014

Hyperion Financial Management- Unable to create application due to “TNS: could not resolve the connect identifier specified”

Author: - Sanjay Purohit

Audience:  Hyperion Solution Architects and Hyperion Database Administrator.
I installed Hyperion Financial Management (HFM) on my server and was very excited to have my own dedicated HFM server. I really did not find any difficulty during installation and configuration.  The entire process went smooth and I was wondering why I did not encounter an error!! I should have got at least one. My installation was single server windows 2008(R2) installation. All the components were in same box. I also installed Oracle Database 11g on the same windows machine and did not realize the possible implication/setting with HFM. The HFM needs Oracle Database client to be installed on same server to connect to relation repositories but I had database on same server so thought not to install clients. I am not relation database person therefore It took me long time to figure out the exact relationship between Hyperion installed client and oracle home.  I did not realize that if I don’t install clients I have to use existing clients. After finishing up configuration I tried to create a new application using sample application and finally got an error!!!

Error
During the application creation you might encountered an error “TNS: could not resolve the connect identifier specified“. 

I goggled but could not find any specific to HFM since it’s an Oracle Database related error; most of the searches were database related. Then I finally decided to dig into Oracle installation and configuration guide to get the solution.  

REASON
Hyperion Financial Management requires database client to be installed on same server. EPM installation also installs Oracle client by default if you install HFM. However it‘s optional.  The existing installed client can be used.  Oracle HFM supports both the methods. The Oracle Database clients establish connection between HFM and Oracle Database. Please refer below URl for more details:-
 I will demonstrate the process of using existing client to create HFM application.

solution
HFM configuration process populates tnsnames.ora files file under the EPM_ORACLE_INSTANCE/user_projects/config/dbclient/tnsnames location. This file contains the HFM configuration TNS entries
The goal is to move the above TNS entries to existing database client so it can leverage both. We will copy above TNS entries to existing tnsname.ora files and the files should look like below.  The location of tnsname.ora can be different depending on version of make or version of database
After making the changes you will need to restart HFM services.  You should be able to create application with no error


Note:- The Location is

C:\Hyperiondb\product\11.2.0\dbhome_1\NETWORK\ADMIN
C:\OracleHyp\Middleware\user_projects\config\dbclient




Wednesday, June 11, 2014

Resetting Hyperion Admin Password if you forgot

Author: - Sanjay Purohit

Audience:  Hyperion Solution Architects and Hyperion Database Administrator.
I received a phone call from one of my coworker regarding resetting Hyperion admin password.  He installed Hyperion on a server.  He also prepared an installation document and handover to client for review.  The client was kind enough and did not user Hyperion for a while and also lost installation document.  After few months- my friend received a phone call from client asking Hyperion admin password and he also forgot. He needed to reset the Hyperion admin password. This posting is dedicated to my friend JP.  


objective
The goal of this posting is to “Reset Hyperion Work-space admin Password”.  Hyperion encrypts user friendly language and stores the password on shared services schema. All the native users can be seen on “CSS_USERS” table.  Resetting the admin password is an easy task and can be achieved little knowledge of relation database. 
Login to Shared Services Schema ( The user you used during the shares services configuration) with SQL developer or any other tools and look for “CSS_USERS” table.


 Run the following command



update CSS_USERS

set PASSWORD= '{SSH2}mpQoG4jU00otFocLZM6CWWUzpk9ZmSY5In3l3ZzFCH5byRhkG6ow7z4KxXmXWXSo'
where name='admin';

This will setup the admin users password to ‘password'

Note:-
To set the password to ‘welcome1’ =
‘{SSH2}FvSZVSvSmzvjT/02Nn1TrJyQk8SqNus4Fw4m2cNxa3zkSLe8HFiJy7cT8zUDGiWi’
To set the password to ‘password’ =
'{SSH2}mpQoG4jU00otFocLZM6CWWUzpk9ZmSY5In3l3ZzFCH5byRhkG6ow7z4KxXmXWXSo'

Sunday, May 18, 2014

Hyperion Public Sector Planning and Budgeting-Right click menu does not work

Author: - Sanjay Purohit

Audience:  Hyperion Solution Architects and Hyperion Business users
The Hyperion world is really strange and it teaches lesson every day.  We were about to start our budget cycle and suddenly came across an issue. The issue was pretty basic but I had to spend almost two to three days to debug it. This issue remind me phrase “Making a mountain out of a molehill”.  The issue was with almost all the business users because they did not follow guidelines. Our users were not able to open the data form with right click menu. This was Hyperion Public Sector Planning and budgeting (PSPB) application and PSPB heavily relies on out of box right click functionality. I enabled trace: 32 log and put planning in debug mode but nothing to read in log. Log did not tell me much. I was stunt but I was lucky because this functionality was working for one business user. I took this users ID as role model and compared with few users access, security and planning PREFERENCES.  These users had selected “Remember selected page members” from planning preference and other did not.


REASON
Most of supplement/dependent data form in PSPB uses member from primary data form. Please see the example below.  Right click from one data form should land to another data form with same member selection. “Use Members on Forms does not work unless Remember selected page members is checked from preferences.” As per admin guide

Right click on Manage all position data form (PSPB)
This should land to you another data form


Now if we notice- Few of dim-members such as Entity, Position, Scenario, and Version are passed as context from “Manage all Position” to  “Edit Position details form “  This functionality does not work if preference are not setup according to Oracle guideline.


RESOLUTION
The fix of this problem is pretty simple. User needs to “Remember selected page members” to “Yes”.








This should solve the problem. Oracle Description of solution is “If a business rule has run-time prompts and Use Members on Forms is selected, the default member on the run-time prompt window matches the current member in the page and the POV axes of the open data form. Use Members on Forms does not work unless Remember selected page members is checked. See About Launching Business Rules.”

Saturday, May 17, 2014

Unable to obtain lock for Registry database. Existing lock on host

Author: - Sanjay Purohit

Audience:  Hyperion Solution Architects and Hyperion Database Administrator
During installation/configuration of Hyperion EPM on my server, I came across a small configuration hurdle so I thought to share with you. My installation was single server installation and should not have caused me any trouble but it did!!!! I wanted to configure all the components on different schemas therefore I had to run configurator several times and I encountered an error.

 “Unable to obtain lock for Registry database. Existing lock on host ----created by -----.  Do you want proceed? “



This is pretty common error you can get during EPM configuration. We will cover step by step solution of this error in this posting. 
reason
Each run of EPM configurator creates a record/lock on EPM_REGISTRY_LOCK table on share service schema. This lock gets deleted after configuration is done but sometime it does not and prevents new record creation.


resolution

Database administrator should login to the Shared Services schema and delete created lock. After deleting the lock/record. You should be able to run configurator. 




Setting up Additional debug- TRACE: 32 in planning environment

Author: - Sanjay Purohit

How to setup Additional debug- TRACE: 32 in planning environment
Audience:  Hyperion Solution Architects, Hyperion Technical developer and administrator.
Recently I came across an issue with one of our client. And the issue had major impact on SLA. The entire budgeting process was affected. We were unable to make a move. We had to completely shut down the budgeting process due to this issue.
Whenever you see error/issue with an environment. The first place is to check log files. People don’t speak but log speaks. After looking at all the possible logs, I was unable to figure out the root cause.  However I had trust on my theory but logs did not speak much this time and I was wondering why!! What is wrong with my environment and why logs are not providing details as they should? I did some research and found out two articles on Oracle support:-
How to change the logging levels for Hyperion Products in 11.1.2.x (Doc ID 1158016.1)
How to Capture SQL Transactions in the Hyperion Planning Log File (Doc ID 841007.1)
Both the articles were easy to follow but I thought to create a step by step doc. The default log level is setup to NOTIFICATION: 1. The default is good enough to debug day to day issues/errors.  But my issue was not captured in this log. Then had to setup additional debug/TRACE: 32 logs. The TRCAE: 32 logs should provide the detail of client/server activities and should help you to debug the root cause. The purpose of this blog is to demonstrate step by step process to setup the TRACE: 32 log. However we will not cover any specific issue. TRACE:32 logs can be used to debug your environment. I will not advice to enable until you really need it.   he first step to setup from Planning and second is from server.

The first step is to setup from Planning web: Administration > Manage Properties > System Properties
- Add a new parameter called “PROFILING_ENABLED” and set it to “true”

- Add a new parameter called “DEBUG_ENABLED” and set it to “true”
 PS- Make sure the parameter is added to System Properties not Application properties.




Please refer URL to check the different log option such as NOTIFICATION and TRACE..

The second step is to make change on logging.xml file. The location of this file is
<Middleware_Home>\user_projects\domains\EPMSystem\config\fmwconfig\servers\Planning0 and you will see logging.xml file. Open this file to notepad ++ or any of text editor.
And go to the following line(s)
---------------------------------------------------------------------------------------------------------------------------
-<logger name="oracle.EPMHSP" useParentHandlers="false" level="NOTIFICATION:1"> <handler name="epmhp-planning-handler"/>
CHANGE TO:
---------------------------------------------------------------------------------------------------------------------------
-<logger name="oracle.EPMHSP" useParentHandlers="false" level="TRACE:32"> <handler name="epmhp-planning-handler"/>

Before making the change, you need to back up the file. The file should looks like



After making the change file should look like 


After making changes you must restart planning and check planning log. The log will speak more than what they should!!!!!

To setup the Essbase ODL log. Please refer to this URL