Wednesday, December 4, 2013

FDMEE PSU2 released (

Hi all,
long time since last post so sorry if you miss it :-)

Two weeks ago FDMEE PSU2 ( was released by Oracle
After reviewing all new features I must say there are some nice features that if you are new you will not notice but if coming from Classic FDM (like me) you will put your hands up in the air!!!

As I did with PSU1 post, I will show you most of the new features but at the moment you must trust me (or I must trust myself) as the new admin guide has not been published yet. It has just been published

Before starting, just to highlight that PSU2 requires an ODI Patch to be applied:
This patch was released to fix a bug related to ODI jobs getting stuck when large volumes were processed.
From now on I will assume you can install both patches with no assistance... Come on!! What I suggest, as always, is to perform backups before starting :-)

So now, what´s new?

Loading of ICP transactions into HFM Intercompany Transaction Module
FDMEE now supports loading ICP transactions into ICT Module
Old classic FDM users will remember about HFM having 2 adapters. There was one we were not using so often (FM11I...). I say that because I haven't seen many customers using it, at least in Europe.

How does it work? once you Enable ICP Transactions in the Target Application a set of additional dimensions will be added as attribute dimensions:
Then you can create an Import Format to import data and ICP transactions:
(and) a word of warning... you need to enable ICT Module in HFM :-)

Loading Cell Texts into HFM
Same approach as Classic FDM: you can load Cell Texts into HFM from FDMEE Memo Items.
Memo Items allows you to add notes to your imported data and attach documents to them (see post-it icon below). 
There is something I be will missing here which is the possibility of importing Memo Items from source files in an easy way. There were some custom solutions in Classic FDM so there should be in FDMEE...hopefully. Small bug with memo indentation :-)
If you want to load Memo Items as Cell Texts in HFM you will have to set the corresponding option in the Target Application settings:
When we export our data to HFM, Cell Texts will be also loaded from Memo Items:
We can check them in HFM:
Do you want different format for the text (i.e: remove Title...)? then change on your own risk HFM_LOAD.vbs script.
In Classic FDM, memo items could be imported from Excel Trial Balance files...did not check yet in FDMEE so please feel free :-)

Some notes... 
- Enhanced Cell Texts are not supported yet (you can build custom solution). Therefore only the "Default" Cell Text Label is created.
- Attachments in FDM Memo Items are not exported with the Cell Text neither links to them (the same was in Classic FDM)

New Application Options
- Load Method for HP/Essbase
  File: FDMEE exports data to a .DAT file and then load it into HP/Essbase
  SQL: FDMEE creates a Rule File in Essbase to load data from FDMEE database into HP/Essbase
Add prefix dimensions when using Duplicate Members in Essbase across dimensions
  The dimension prefix is added during Export step for all dimensions [dim]@[member]

Import Format can be selected in the Data Load Rule definition for File-based source systems
In previous version it was using the import format assigned to the location.
Multi-Period Load!!!
This was one the features that was missed by most of the old FDMers... Multi-Load Activity (renamed in FDMEE to Multi-Period Load)
Looking at it, I can understand it took some time to re-implement it but here it is.

What is Multi-Period Load? Standard file-based loads in FDMEE focuses on one single period per file when loading into Target Applications (HFM, HP/Essbase). It does not matter if you import more than one file in one shot (as we see in old post) or one single file. With the new Multi-Period file-based loads we can import one single file having data for multiple periods in multiple columns. 
The file above for HFM shows data for three periods (three columns with balances, one for each period)
In Classic FDM, Multi-Load was a separate activity than loading from the workflow. Now it has been fully integrated in Data Load Rules.
Is that all? Not. In Classic FDM periods had to be contiguous. In FDMEE, you can have non-contiguous periods in the file.

To configure/load Multi-Period files:
1. Configure an Import Format with File Type = Multi-Period.
There is a new expression Columns=StartCol,EndCol that is used to specify field numbers of data columns in the file:
Did you notice anything special in the Import Format??? Yes!! Number of Fields column has been finally removed. It is automatically derived from your File Delimiter value.

2. Configure a Data Load Rule. The Import Format must be set to the Import Format for Multi-Period file type. Optionally you can assign which period is which column in case periods are not contiguous.
The Data Load Rule must be executed from Data Load Rule page (not allowed from Data Load Workbench)

In this Data Load Rule, I have assumed:
- Column 8 (1st data column) has February-2006 data
- Column 9 (2nd data column) has April-2006 data
- Column 10 (3rd data column) has January-2006 data
As I have selected the non-contiguous periods in the Data Load Rule definition, I will not be asked for which periods I want data to be imported into. If your periods are contiguous, you leave Source Periods empty and you select period range in Data Load Rule as usual.

Once data is exported you can check how the export file looks like:
Source data has been pivoted so we only export one data column.
If you remember using Multi-load TEXT files with HFM data was exported in multiple columns but new way TDATASEG and POV are managed makes data to be always pivoted:
Note: Multi-Period is also supported for Excel TB templates. There are differences with Classic FDM:
- You can load to only one Location/Category
- You can load to multiple periods
- Period key is specified in the header

Open Batch for Multi-Period files
There is a new type of Batch for Multi-Period files which will be placed in \inbox\batches\openbatchml

Custom Scripts!!!
We have discussed about the different types of Scripts in FDMEE:
  • Import Scripts: implemented to process source data when required (add prefix, concatenate different sub-strings, etc.). Available only in Jython.
  • Event Scripts: implemented to respond to FDMEE events (BefImport, AftImport, BefValidate, AftValidate,etc. Available in Jython and VB.
  • Mapping Scripts: used to build mapping logic to get target members based on multiple source/target column and IF THEN logic. Mainly when our mapping logic is so complex to be implemented with standard rules. Available in Jython and SQL
Now we have a new type of script which was already present (in a different way) in Classic FDM.
Custom Scripts can be mainly used to perform tasks such as importing data into auxiliary tables, copying files, sending an email from FDMEE, etc. Mainly any task supporting our integration process. Custom Scripts can be implemented in Jython or VB.

In Classic FDM there were two types of Custom Scripts:
- Custom Script for General Purpose: was mainly executed from FDM Workbench Client (Desktop Client).
- Web Script: were assigned to FDM Task Flows so they could be launched from the FDM Web Client.

As everything is web-based in FDMEE, there is no difference between General and Web. Also Classic FDM functionality like Menu Maker and Task Flows are not necessary any more. All these functionality are not encapsulated with new Custom Scripts.

In order to work with Custom Scripts:
1. Create Custom Scripts (Eclipse, Notepad++, etc.)
2. Create Custom Script Group(s)
3. Register Custom Scripts 
    For each Custom Script you create:
    - Assign a Name (similar to Task Flow)
    - Assign a Target Application
    - Assign it to a Custom Group (which be secured)
    - Optionally add run-time prompt parameters (the user can pass/select values when executing the script)

Example 1: Custom Script to show a custom message (no parameters)
We create the script from Script Editor. We have now a new tab for Custom Scripts:
When building Custom Scripts we follow the same approach as the other types. We first write code, check syntax, optionally test in our IDE for Jython/VB (Eclipse, Notepad++, etc.), and then paste into the script editor:
Note there are new FDMEE API functions available like the one used in this script.

Once the custom script is created, we will create a Custom Script Group and register our script (Menu Setup > Scripts > Script Registration):
From tab Custom Script Registration:
We can assign multiple scripts to the same group that can be secured later.
Once the script is registered, we can execute it from menu Workflow > Other > Script Execution:
VoilĂ !

Example 2: Custom Script to show a file (file name as input parameter)
Parameter types for Custom Scripts:
- POV Location
POV Period
- POV Category
- POV Rule

Our script will show a file placed on the inbox folder:
We have created a different Custom Script Group for it. When the script is registered we add the following parameter for the file name:
The script can be executed as Example 1:
And the file is opened:

Some notes for Custom Scripts:
- Scripts are stored in /data/scripts/custom
- Custom Script Groups can be secured (I can say which FDMEE roles can see/run which groups)
- Custom Scripts cannot be scheduled at this moment
- Custom Scripts can be executed in Online or Offline mode

Batch Groups
The same way we have Report Groups and Custom Script Groups, we have now Batch Groups which let us group FDMEE batches and assign security to them:
A new setting has now been added for batches in Batch Definition page. Now we can assign a batch group to our batch:

Securing Report Groups, Batch Groups, and Report Groups
We can now define Role Security for Reports, Batches, and Custom Script groups. Therefore security for different roles is defined at group level:

High Availability
PSU2 has fixed several issues related to HA (i.e.: agent assignation). From PSU2, the system will automatically detect the FDMEE instance the User Interface is running and will use the ODI agent from the same instance to execute the process. As consequence, setting ODI Agent URL has been removed from System Settings for ODI:

SAP BW As source for Metadata Rules
I'm still on my way of confirming it. Not sure if it has been released or will be available in next update. And also preparing an entry for FDMEE integration with SAP BW.
SAP BW is not available as source for metadata yet. Maybe soon.

Other Enhancements:
- New System Setting for Check Report Precision
- We can select EPMA metadata load options in Metadata Rules (merge as move, merge as primary, and replace)
- A Custom Script can be called before and/or after batches are processed

So enjoy new PSU2 and feel free to share your feedback.
Talk to you soon.