While the Financial Management Client program that ships with HFM provides key functionality is quite reliable, there are many areas where it could be improved. Fortunately for us, the Financial Management Client is a great example of a program that implements the HFM COM API as many of the program’s features are directly attributable to API functions. Due to this fact, we can focus on adding value without having to completely reinvent the wheel.
This session, which builds off of a previous API presentation, will further walk you through a complete program build utilizing HFM COM API functionality and Microsoft Visual Studio .NET. Fully working code will be provided as well for viewers.
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
HFM API Deep Dive – Making a Better Financial Management Client
1. HFM API Deep Dive
Making a Better Financial Management
Client
Charles Beyer
2. Build a “complete” .NET App for HFM API
● “Brief” HFM API Overview
● Prepare a Development Environment
● Coding your own HFM Client App
● Improving on Client App
● Tips, Tricks, and Warnings
3rd Party Tools / Projects
Q & A
Session Objectives / TOC
3. Code Samples will be made available
To expedite certain areas, we will utilize screen
shots while doing live demos in others
Slides / Demos should be sufficient to do work
offline in case we bump into time issues
Please leave feedback!
Additional Notes
4. Computer & Technology ‘Nerd’ – Started with a
Apple II and TRS-80. Haven’t looked back.
16+ years professional software experience,
created and sold commercial software.
7 years working with Hyperion products.
Love to help out, feel free to ask and I’ll help if
time permits!
About the Speaker
6. Three Main APIs
● COM [Primary Focus for Session]
● Updated for 11.1.2.2 for expanded dimensionality
● Extended Analytics HTTP Listener
● Web Object Model [ADF Webinar – TBD]
● 11.1.2.1 and prior : Components Utilized via ASP pages
● 11.1.2.2+ : Java/J2EE implemented with Oracle ADF
Framework
● FM Web Service [TBD]
● Optional, now required, component first utilized by
Financial Close Management
● Behind the scenes is really the COM library.
Brief HFM API Overview
7. Brief HFM API Overview [COM]
Web Object Model Features COM Object Model Features
Log On / Log Off Log On / Log Off
Open FM Applications Open FM Applications
Register / Unregister Clusters/App Servers Register / Unregister Clusters/App Servers
Getting Dimension Attributes Get Metadata Attributes
Get / Set Line Item Details Get / Set Line Item Details
Process Management Interaction Process Management Interaction
Open / Close Periods Open / Close Periods
Journals (Create, Delete, Submit, Post, etc.) Process Journals
User Security (Rights / User Lists) User Security (Rights / User Lists)
Document Management (Forms / Grids) Get / Set data for arrays of cells
POV Settings
Executing consolidations, translations,
calculations
Audit Information (Task, Data, etc.)
Load/Extract member lists, metadata, rules,
data,
and journals
Server Information/Control (Logoff Users,
Enable/Disable Connections) Extended Analytics
ActiveX control for dimension members
selection
8. Brief HFM API Overview [COM]
Type File Functionality
HfmSliceCOM Support for Configurable Dimensionality
HsxClient Logon/Logoff, Open/Create/Delete Applications
HsxClientUI User Interface for Logon/off, Open/Create/Delete Applications
HsxServer App Server info : Application Names, DSNs
HsvSession Parent Obect to Metadata & Data, Session Related Info
HsvMetadata Metadata Related Functions
HsvData Sets and Gets data in cells
HsvCalculate Executes consolidations, translations, and calculations
HsvJournals Manage periods, create journals and templates, process journals
HsvSecurityAccess Get/Set Application’s users, roles, and security class access.
9. Brief HFM API Overview [COM]
Type Library Functionality
HsvSystemInfo System Items (Get/Set App Name, Server Name)
HsvProcessFlow Process Management
HsvReports System Reports
HsvICM Intercompany
HsvMDArrays Statutory / IC Transactions Data
HsvDataCubes Data Access @ Sub Cube Level
HsvDQI “Intelligent” Data Retrieval
HsvStarSchemaACM Extended Analytics
HsvSecurityLoadACV Security Loading and Extracting
HsvMetadataLoadACV Metadata Loading and Extracting
HsvRulesLoadACV Rules Load and Extracting
10. Brief HFM API Overview [COM]
Type Library Functionality
HsvcDataLoad Data Loading and Extracting
HsvJournalACV Journal Loading and Extract, Journal Template loading
HsvPOVSelection ActiveX display option for selecting POV
HsvResourceManager Manages Error Messages
HFMConstants Constants used by API calls throughout
11. Brief HFM API Overview [HTTP Listener]
URL: http://<web server>/hfm/EIE/EIEListener.asp?
app_name=<HFMAppName>&action=launch_EA_extract
Include following data in header
● SSO Token
● Content Type : text/xml
HTTP Request Stream Parameters
● Application Name
● Extract Type
● Push Options
15. Requirements [COM]
● HFM Client Installed
● Server Files Available
● Copied Locally
● Read only access to files on remote location (i.e. server)
● Microsoft Visual Studio
● Deployment / Installer Notes
Prepare a Development Environment
17. Server Files Default Location
● <EPM_HOME>productsFinancialManagementSer
ver
● <EPM_HOME> =
C:OracleMiddlewareEPMSystem11R1System11R1
Copy them local or Reference them direct from
server.
● If referencing, be sure to include in your app’s
installer so that they copy!
Locate (and Copy) Server Files
18. Express 2012 for Windows Desktops
● http://www.microsoft.com/visualstudio/eng#products/
visual-studio-express-for-windows-desktop+product-
express-desktop
Requirements
● O/S : Win7 SP1, Win 8, Server 2008, Server 2012
● Hardware : 1Ghz CPU, 1GB RAM, 5GB Disk, DX9
NOTES:
● Links change semi-frequently so Google Visual
Studio Express and you won’t go wrong.
● As new versions are released old versions are
retired.
Visual Studio (2012)
19. Installation
● Click the Download button on website
● Use default settings for file locations, etc.
● When it comes to installing option components, I
generally install them.
● MSDN Document Library is up to you.
If you don’t meet requirements for 2012
● 2010 ISO : http://download.microsoft.com/download/1/E/5/1E5F1C0A-0D5B-426A-
A603-1798B951DDAE/VS2010Express1.iso
● 2008 ISO : Retired, though on torrents*
Visual Studio (2012)
41. App Title / Statusbar Updates [Demo]
Dynamic Menu [Demo]
Admin / System Info [Demo]
Smarter Metadata / Rules Extracting/Loading
[Demo]
Improving on the Client App
50. Be sure to work in Dev first!
● Some API calls could cause trouble if used
incorrectly!
● Easier to Debug
● Can Run Additional Debug/Performance Tools
Start small and test frequently
Use Debug functionality to step through code
Trap exceptions to handle errors gracefully!
Create Installer for your finished product
Tips, Tricks, and Warnings
51. COM API Doc & Samples
● http://docs.oracle.com/cd/E17236_01/epm.1112/hfm
_developer_11.1.2.2.300.pdf
● SDK via e-delivery for additional code samples
Web API Doc & Samples
● Web API
● Pre-11.1.2.2 :
http://docs.oracle.com/cd/E17236_01/epm.1112/hfm_webs
dk.pdf
● 11.1.2.2+ :
http://docs.oracle.com/cd/E17236_01/epm.1112/hfm_custo
m_pages_development.pdf
Tips, Tricks, and Warnings
52. Web Service
● No Docs Yet!
● Access ASMX pages in browser to view information!
[http://<your web server>/hfmapplicationservice/]
Utilize existing resources for help!
● Oracle Forum (http://forums.oracle.com)
● Blogs
● Mine (new) : http://www.charlescbeyer.com
● Finnish Hyperion Guy : http://hyperionfinn.blogspot.com/
● SlideShare / Google : Tons of Info is out there.
Tips, Tricks, and Warnings
53. Web Service isn’t officially published
● May go away at any time?
Great Training Material for Learning .NET
● http://www.microsoftvirtualacademy.com/
● http://msdn.microsoft.com/en-US/vstudio/cc136611
Tips, Tricks, and Warnings