What is the difference between a good HFM application and a great HFM application? User experience! What Else? Usage of JHAT can improve user experience for administration tasks. Usage of JHAT “on the fly” can bring it to the next level!
First things first. What is JHAT?
You can read the article of my colleague describing what is JHAT and what is possible to do with. JHAT tool is a way to automatize tasks using a batch file and the HFM API. JHAT offers the opportunity to use any scheduler to launch HFM tasks and provide a better flexibility than the regular Task Flows.
Why should it be “on the fly”?
Both Task Flows and JHAT are great ways to schedule tasks. When it comes to simply launch a sequence of consolidations for the same POV, they both have the same lack of flexibility. You will always have to redefine the POV in your setup. The operation is not as flexible as running a single consolidation in an HFM application: select a POV, right click and consolidate. With JHAT on the fly, it is!
Usage case: launching multi scenario/scope consolidations sequence
In HFM, it is common to create different scenarios for simulation purposes. For example, in addition to the “ACTUAL” scenario for published figures, administrator will create proforma scenarios for FX analysis or scope variation analysis. There can be also different entity hierarchies representing the different views of the organization (legal view, geographical view or management view). All these scenarios and scopes need to be consolidated regularly because the “ACTUAL” scenario has frequent updates during closing periods.
There are many ways in HFM to run these consolidations:
- Manually launch the consolidations: this option is the most “flexible” because it does not need any setup and the consolidated POV are automatically read by HFM from where the command is launched. You can launch the consolidations one after one, but it can take a long time, or you can run all your consolidations at the same time in a data grid, but this is not recommended.
- Usage of Task Flows: this is a better option. Consolidations will be launched one at the time. Nevertheless, Task Flows are not dynamic and need to be updated for any change of POV.
- Usage of JHAT: this option has the same pros and cons as Task Flows. Consolidations will be launched one at the time.
- Usage of JHAT on the fly: this option is the best option in my opinion because it has the power of JHAT and the flexibility of manual consolidation.
How does it work?
JHAT is a small program installed on HFM server which can connect to an application a run administration tasks. The main purpose of JHAT is to be launched by a scheduler. To run a JHAT command, three mandatory elements are required:
- An .ini file containing connection credentials and tasks to be operated
- A .log file which will save execution logs
- A .cmd file containing the MSDOS command which uses the two first files as parameters
For a standard JHAT execution, these files are created once and the .ini file is updated by administrators to fit the needs evolution.
- JHAT on the fly:
With JHAT “on the fly” the POV definition is dynamically created and all the files needed are created on-demand.
JHAT on the fly is based on an “on-demand” rule. This rule will:
- Identify the POV selected in the webform
- Create the .ini, the .log and the .cmd files needed for JHAT execution. The current POV will be set in the .ini file
- Run the .cmd file
In this example, with a dedicated on-demand rule, users can launch in one click consolidation of:
- ACTUAL scenario
- Last year rate scenario
- Last year scope scenario
- Custom simulation scenario
On-demand rule execution:
Script used for the example:
Ini file content definition
Ini file creation
Log file creation
Cmd file creation and execution
The on-demand rule of our example has created the .ini file, the .log file and the .cmd file in the first time. And in the second time it has executed the .cmd file.
This is one usage case of JHAT. If you are experiencing different ways to use it, do not hesitate to share with us in the comment section below. Thank you for reading.