SlideShare una empresa de Scribd logo
1 de 38
Descargar para leer sin conexión
Taking Your FDM Application to the Next
     Level with Advanced Scripting

             Tony Scalese
             Edgewater Ranzal
             www.ranzal.com
About Edgewater Ranzal

                         One of the Largest
                         Oracle/Hyperion Practices in
                         the U.S.

                         Oracle / Hyperion Platinum
             15 Years    Partner - Highest Status
          700+ clients
        1000+ projects   Vertical Expertise with High-
                         Profile Clients from Coast to
                         Coast

                         Sound Project Methodology
                         Insures Project Success

                         “One Stop Shop” for ALL EPM
                         Implementation needs
Our Services




                       Business
      Consolidation                   Planning
                      Intelligence




          Data          Project
                                     Infrastructure
        Services      Management
Who Is Tony Scalese

 Over 10 years Experience with Data Integration and
 Financial Planning & Consolidation on the Hyperion suite
 of products
 Established many innovative FDM design, customization
 and automation concepts that have evolved into standard
 Industry-wide practices.
 Certified HFM Consultant - System 9 & Fusion 11
 Present at Oracle conferences, Ranzal webcasts and post
 on Oracle Technology Network (OTN) and blog on
 www.FDMGuru.com
 B.A. Economics, Allegheny College; MBA Candidate,
 Babson College
Agenda

     Script Types                          Import Scripts
                                            Event Scripts
                                          Custom Scripts




     Tips & Tricks                 Common Script Usage
                                            Batch Scripts
                                   Leveraging Workbench
                                       Scheduling Scripts




     Solution Overview & Wrap-up           Smart Replace
                                               Resources
                                      Scripting Challenge
What is FDM Scripting?

 FDM has a powerful scripting engine that
 leverages the VBScript programming
 language to further extend the application’s
 functionality
   Scripts can be used to execute SQL queries
   Scripts can leverage windows objects (Shell) to
   execute batch command files
 FDM Scripting is as powerful as your
 programming skills & knowledge of the
 application architecture
Script Types

 Import: Execute during the import workflow
 stage when assigned to the import format
 used by the location processing data
 Event: Execute during predefined “events”
 within the application. These are similar to
 Excel workbook macros that execute
 “OnOpen”
 Custom: All other scripts that are used to
 perform additional actions/functions in FDM
Import Scripts

 DataPump – Used with Delimited & Fixed Width
 Import formats
   Execute for the dimension to which they are assigned
   in the import format.
   Execute for each line in the data file
 Integration – Used with Script Import Formats
   Used to provide direct integration to relational sources
   Executes SQL queries to retrieve data from source
   Often Utilizes an ADO connection
   Working example in the Admin Guide
Import Scripts – Some Facts

 API objects are not available for use in Import
 Scripts - Data Pump or Integration
 Data Pump scripts are passed the field (strField)
 defined by the import format – i.e, field x of y - as
 well as the entire record (strRecord)
 Temporary variables can be used during the
 import process and accessed by other import
 scripts – RES.pVarTempx
 You cannot execute Import scripts from the
 script editor
Import Scripts – The #1 Pitfall

 Pre/Cross Dimensional Mapping - if source account
 is X, Y or Z then Entity is A
   While there are times this can be necessary, robust event
   scripting can often address the need for this logic
 Why is this approach flawed?
   Limited visibility to the true source value for a given
   dimension
   Mapping “logic” is likely no longer an end user function;
   scripts are only visible to administrators
   Any time the logic changes, the data file must be re-
   imported
   ERPi does not currently support modifications to the source
   member that was extracted from the G/L
Example Integration Script       Package




 Create connection to source
   Connection strings vary based on source
   DB type
 Run query to get source records
   SQL Select query
 Append query result to FDM worktable
Event Scripts – Some Facts

 Only execute when the Event actually has
 code
 Application passes certain arguments to the
 event script when triggered
 “Action” event scripts often execute multiple
 subprocesses and/or other event scripts
 You cannot add “new” Event scripts
 You cannot execute Event scripts from the
 script editor
Event Scripts

Event Script             Executed
StartUp                  During Log In and Logout of the application
ShutDown                 Does not execute in 11.1.2.0
StatusMessage            When using the API function mStatusMessage
SystemLocked             When the system is Locked
POVChanged               When the point-of-view is changed
SecurityChanged          When security is changed
ImportMap (Bef & Aft)    During the Import of a mapping .TRx file
CopyMap (Bef & Aft)      During the Copy of map from one location to another
ClearData (Bef & Aft)    When data is cleared for a given point-of-view
FileImport (Bef & Aft)   When a flat file is imported; does not apply to adaptor & script
                         based import formats
Event Scripts

Event Script               Executed
Validate (Bef & Aft)       During Validate workflow step
ExportToDat (Bef & Aft)    During Export step when a data file is created
Load (Bef & Aft)           During Export step when data file export is loaded
                           to target system
Consolidate (Bef & Aft)    During a target system is consolidation
Check (Bef & Aft)          When Check workflow step
Calculate (Bef & Aft)      When Calculate is executed; Process Logic/Maps
ProcLogicGrp (Bef & Aft)   When Logic groups applied; during Import &
                           Process Logic/Maps
ProcMap (Bef & Aft)        When Maps are applied; during Import & Process
                           Logic/Maps; only executes for locations with
                           Wildcard maps
Event Scripts

Event Script          Executed
ArchiveItemAction     During archive of import & export files
ControlsAction        During Certification (un)Review & (un)Submit
ImportAction          When Import workflow step is run
MemoItemAction        When Memos are added, updated or deleted
MultiloadAction       During Multi-Load and Journal processing
BatchAction           During batch execution
BatchAutoMapCorrect   During a batch process that utilizes the autocorrect
                      mapping feature
Custom Scripts – Some Facts
Custom Scripts

 3 types of Custom scripts
   General: All other actions in FDM; example –
   Batch loader script
   Plug-In: No longer used
   Web: Used to create tasks flows that allow end
   users to execute scripts without requiring access
   to script editor
Running SQL from Scripts

 Select Queries – Used to retrieve data from a
 table
   Set rs = DW.DataAccess.farsKeySet(strSQL)
 DML Queries – Used to Update/Insert/Delete
 data
   blnResult =
   DW.DataManipulation.fExecuteDML(strSQL)
Scripting Objects

 File System Object
   Set FSO =
   CreateObject(“Scripting.FileSystemObject)
   Set objFile = FSO.CreateTextFile(PathToFile,
   OverwriteExisting, blnUnicode)
 Windows Shell Object
   Set wShell =
   WScript.CreateObject("WScript.Shell")
   lngResult = WShell.Run(strCommand,
   WindowStyle, blnWaitOnReturn)
Batch Loader

 From the Workbench, Tools     Batch
 Processing
 Set the Batch Processing options and click
 Create Script
Batch Loader Script         Package




 Process Level – Tells FDM which workflow
 steps to perform; see
 enmBatchProcessLevels
 Delimiter – File name delimiter use in the
 batch file name.
   Example: 1~Location~Category~Period~rr.txt
 Map Auto Correct – Controls if FDM should
 automap missing members to a
 default/suspense member; True/False
Object Browser

 Object Browser contains a
 list of all of the API functions
 that are available to be used
 in FDM scripts
 Object Browser is only
 available in WorkBench
 Many objects provide a
 description of the return or
 required arguments
Accelerators

 Accelerators are prewritten snippets of code
 that perform common scripting operations
 including:
   Get detailed POV information (location metadata)
   Create and loop through a recordset
   Work with text files using FSO
   Send email
 Accelerators provide 70-80% of the code,
 you will often need to update/refine
Using Accelerators

 Select the section of the script where you need the
 accelerator code
 Double click the accelerator and the code is inserted
 Refine as needed – you will need to review the code
Adaptor Specific Objects

 Import the Type Library of the
 Adaptor
 Right click the object browser
 and select Add Type Library
 Browse to the adaptor folder
 and import the
 AdaptorName.tlb file
Scheduling Scripts

 FDM Task Manager – FDM component that
 allows custom scripts to be scheduled on
 specific intervals; seconds, days of the week,
 specific day(s) each month
 FDM Shell Object – Used to execute custom
 scripts from a windows batch file; batch file
 can be scheduled within Windows Scheduled
 Tasks or any enterprise scheduling software
Task Manager

 Select application &
 script to execute
 Specify Login
 credentials – non
 expiring recommended
 Specify Time interval to
 execute
FDM Shell

 Shell object is in the SharedComponents of
 the installation directory
 Double click the UPSShell executable
 Open Notepad and paste
   Default syntax is provided
   Consists of 2 parts – Path to FDM Shell & Call to
   script
FDM Shell Syntax

 C:OracleMIDDLE~1EPMSYS~1productsFINA
 NC~1SHARED~1upsShell.exe
 CustomScriptEx=AppName~UserID~PW~DOMA
 IN~LoadBalancerName~LogDirectory~ScriptNa
 me~LanguageCode(Default=1033)~EncodeUnic
 ode(Default=0)
 C:OracleMIDDLE~1EPMSYS~1productsFINA
 NC~1SHARED~1upsShell.exe
 CustomScriptEx=App1~admin~password~~local
 host~C:Temp~BatchLoad~1033~0
Taking a Detour – HFM Architecture

 HFM subcubes are the intersection of the
 Accounts, ICP, Custom1-4 & Period for the
 Year, Entity, Scenario and Value dimensions
 When loading in replace mode, the entire
 subcube is cleared for each unique Year, Entity
 Scenario that is contained in the data
 This is the default HFM behavior – loading
 through FDM or directly in HFM through load
 tasks
 Data is “orphaned” in HFM if an entity is loaded
 and then in subsequent loads is not part of the
 data set – meaning potentially inaccurate
 financial results
Preliminary Load

 Preliminary
 load includes a
 errant G/L
 posting that
 misclassifies
 data into the
 ‘Rhode Island’
 entity
Reload

 G/L posting is
 corrected and
 previous entry is
 re-classed from
 Rhode Island to
 Massachusetts
 Data is not cleared
 from Rhode Island
 since no data
 exists in the G/L
 file for R.I.
 HFM is wrong!
How Can FDM Help?

Smart Replace is a Ranzal custom developed
FDM solution that addresses this common data
quality issue caused by the default clear
behavior of HFM
  A list of the unique entities that have been loaded to
  HFM is maintained
  The data that is currently being loaded to HFM is
  compared against the list of historically loaded data
  If any “orphaned” entities are found, a data clearing
  record for that entity is added to the data set being
  loaded
Reload with Smart Replace

 G/L posting is
 corrected and
 previous entry is
 re-classed from
 Rhode Island to
 Massachusetts
 Data is cleared
 from Rhode
 Island by the
 custom Smart
 Replace
 functionality
 HFM is correct!
What To Learn More?

 FDM Adaptor Actions
 FDM API Guide
   http://www.oracle.com/technology/documentation/epm.html
 Oracle Technology Network (OTN)
   http://forums.oracle.com/forums/forum.jspa?forumID=409&s
   tart=0
 Ranzal & Associates
   http://www.ranzal.com
 W3 Schools
   http://www.w3schools.com
 Google
Scripting Challenge

 Tell me a problem you are facing in your
 FDM application that you believe or know
 custom scripting will address
   Entries can be dropped at the Ranzal booth or
   email me (ascalese@ranzal.com) before the end
   of the conference
 I will select 1 challenge and create a script
 that addresses the issue
 I will schedule a 1 hr web session to demo
 the solution
Questions




Tony Scalese
ascalese@ranzal.com
www.ranzal.com
Other Ranzal Presentations

Calculation Manager: The New and Improved Application to Create Hyperion
   Planning Business Rules – Monday, 11:15 am, Room 102C

Security and Auditing in HFM – Tuesday, 4:30pm, 101B

Best Practices for Using DRM with EPMA – Wednesday, 8:30am, 103A

Getting Started with Calc Manager for HFM – Wednesday, 8:30am, 101B

Advanced Topics in Calc Manager for HFM – Wednesday, 9:45am, 101B

Maximizing the Value of an EPM Investment with ERPi, FDM & EPMA – Wednesday,
   11:15am, 101B

Taking your FDM application to the next level with Advanced Scripting – Friday,
   8:30am, 101B

IFRS reporting within Hyperion Financial Management – Thursday, 10:30am, 101B

Más contenido relacionado

La actualidad más candente

FDMEE Tutorial - Part 1
FDMEE Tutorial - Part 1FDMEE Tutorial - Part 1
FDMEE Tutorial - Part 1
Van Huy
 
Was l iberty for java batch and jsr352
Was l iberty for java batch and jsr352Was l iberty for java batch and jsr352
Was l iberty for java batch and jsr352
sflynn073
 
Oracle Release 12 E-Business Suite Patching Best Practices
Oracle Release 12 E-Business Suite Patching Best PracticesOracle Release 12 E-Business Suite Patching Best Practices
Oracle Release 12 E-Business Suite Patching Best Practices
Scott Jenner
 

La actualidad más candente (20)

Migration 101 Webinar: FDM to FDMEE
Migration 101 Webinar: FDM to FDMEEMigration 101 Webinar: FDM to FDMEE
Migration 101 Webinar: FDM to FDMEE
 
Planning (or Essbase) and FDM, and ERPi Equals Success
Planning (or Essbase) and FDM, and ERPi Equals SuccessPlanning (or Essbase) and FDM, and ERPi Equals Success
Planning (or Essbase) and FDM, and ERPi Equals Success
 
Security and Auditing in HFM
Security and Auditing in HFMSecurity and Auditing in HFM
Security and Auditing in HFM
 
FDMEE Tutorial - Part 1
FDMEE Tutorial - Part 1FDMEE Tutorial - Part 1
FDMEE Tutorial - Part 1
 
CloverETL and IBM Infosphere MDM partners and users
CloverETL and IBM Infosphere MDM partners and usersCloverETL and IBM Infosphere MDM partners and users
CloverETL and IBM Infosphere MDM partners and users
 
CloverETL Training Sample
CloverETL Training SampleCloverETL Training Sample
CloverETL Training Sample
 
Klondike16 - Making the Move from FDM Classic to FDM EE
Klondike16 - Making the Move from FDM Classic to FDM EEKlondike16 - Making the Move from FDM Classic to FDM EE
Klondike16 - Making the Move from FDM Classic to FDM EE
 
Empowering Enterprise Planning Solutions with Calculation Manager
Empowering Enterprise Planning Solutions with Calculation ManagerEmpowering Enterprise Planning Solutions with Calculation Manager
Empowering Enterprise Planning Solutions with Calculation Manager
 
FDMEE Tutorial - Part 1
FDMEE Tutorial - Part 1FDMEE Tutorial - Part 1
FDMEE Tutorial - Part 1
 
Getting Started with Calc Manager for HFM
Getting Started with Calc Manager for HFMGetting Started with Calc Manager for HFM
Getting Started with Calc Manager for HFM
 
Cast Iron Cloud Integration Best Practices
Cast Iron Cloud Integration Best PracticesCast Iron Cloud Integration Best Practices
Cast Iron Cloud Integration Best Practices
 
Was l iberty for java batch and jsr352
Was l iberty for java batch and jsr352Was l iberty for java batch and jsr352
Was l iberty for java batch and jsr352
 
Oracle EBS Release 12: Tips for Patching
Oracle EBS Release 12: Tips for PatchingOracle EBS Release 12: Tips for Patching
Oracle EBS Release 12: Tips for Patching
 
Ten Steps To Empowerment
Ten Steps To EmpowermentTen Steps To Empowerment
Ten Steps To Empowerment
 
14 Easy Steps to End-User Empowerment: Convert Custom Reports to BI Publisher
14 Easy Steps to End-User Empowerment: Convert Custom Reports to BI Publisher14 Easy Steps to End-User Empowerment: Convert Custom Reports to BI Publisher
14 Easy Steps to End-User Empowerment: Convert Custom Reports to BI Publisher
 
Container Pricing for IBM Z - Application Development and Test Solution
Container Pricing for IBM Z - Application Development and Test SolutionContainer Pricing for IBM Z - Application Development and Test Solution
Container Pricing for IBM Z - Application Development and Test Solution
 
OTM(Oracle Transport Management)
OTM(Oracle Transport Management)OTM(Oracle Transport Management)
OTM(Oracle Transport Management)
 
Oracle Release 12 E-Business Suite Patching Best Practices
Oracle Release 12 E-Business Suite Patching Best PracticesOracle Release 12 E-Business Suite Patching Best Practices
Oracle Release 12 E-Business Suite Patching Best Practices
 
Container Pricing for IBM Z – Payments Pricing Solution
Container Pricing for IBM Z – Payments Pricing SolutionContainer Pricing for IBM Z – Payments Pricing Solution
Container Pricing for IBM Z – Payments Pricing Solution
 
Container Pricing for IBM Z – New Application Solution
Container Pricing for IBM Z – New Application SolutionContainer Pricing for IBM Z – New Application Solution
Container Pricing for IBM Z – New Application Solution
 

Destacado

Oracle Hyperion Planning Best Practices
Oracle Hyperion Planning Best PracticesOracle Hyperion Planning Best Practices
Oracle Hyperion Planning Best Practices
Issam Hejazin
 
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
SlideShare
 

Destacado (9)

Become Jythonic in FDMEE (KSCOPE15)
Become Jythonic in FDMEE (KSCOPE15)Become Jythonic in FDMEE (KSCOPE15)
Become Jythonic in FDMEE (KSCOPE15)
 
Skds fdm and odi
Skds   fdm and odiSkds   fdm and odi
Skds fdm and odi
 
It's Time to Reassess Your FDM Mappings
It's Time to Reassess Your FDM MappingsIt's Time to Reassess Your FDM Mappings
It's Time to Reassess Your FDM Mappings
 
FDMEE Can Do That?
FDMEE Can Do That?FDMEE Can Do That?
FDMEE Can Do That?
 
What's in the Box?: An Intro to HFM System Utilities
What's in the Box?: An Intro to HFM System Utilities What's in the Box?: An Intro to HFM System Utilities
What's in the Box?: An Intro to HFM System Utilities
 
FDM to ERPi– Upgrade & Migration Strategies
FDM to ERPi– Upgrade & Migration StrategiesFDM to ERPi– Upgrade & Migration Strategies
FDM to ERPi– Upgrade & Migration Strategies
 
Oracle Hyperion Planning Best Practices
Oracle Hyperion Planning Best PracticesOracle Hyperion Planning Best Practices
Oracle Hyperion Planning Best Practices
 
Multiplexing, fdma,tdma,cdma
Multiplexing, fdma,tdma,cdmaMultiplexing, fdma,tdma,cdma
Multiplexing, fdma,tdma,cdma
 
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
A Guide to SlideShare Analytics - Excerpts from Hubspot's Step by Step Guide ...
 

Similar a Taking Your FDM Application to the Next Level with Advanced Scripting

Ramkumar_python_perl_unix shell script developer
Ramkumar_python_perl_unix shell script developerRamkumar_python_perl_unix shell script developer
Ramkumar_python_perl_unix shell script developer
Ramkumar Shankar
 
Ui Modeling In Action With PMF, e4(XWT) And EGF
Ui Modeling In Action With PMF, e4(XWT) And EGFUi Modeling In Action With PMF, e4(XWT) And EGF
Ui Modeling In Action With PMF, e4(XWT) And EGF
BENOIT_LANGLOIS
 
Problem Determination Tools
Problem Determination ToolsProblem Determination Tools
Problem Determination Tools
CICS ROADSHOW
 
Legacy Migration Overview
Legacy Migration OverviewLegacy Migration Overview
Legacy Migration Overview
Bambordé Baldé
 
Legacy Migration
Legacy MigrationLegacy Migration
Legacy Migration
WORPCLOUD LTD
 
Managing Your Runtime With P2
Managing Your Runtime With P2Managing Your Runtime With P2
Managing Your Runtime With P2
Pascal Rapicault
 

Similar a Taking Your FDM Application to the Next Level with Advanced Scripting (20)

Near real-time anomaly detection at Lyft
Near real-time anomaly detection at LyftNear real-time anomaly detection at Lyft
Near real-time anomaly detection at Lyft
 
FluentD for end to end monitoring
FluentD for end to end monitoringFluentD for end to end monitoring
FluentD for end to end monitoring
 
Ramkumar_python_perl_unix shell script developer
Ramkumar_python_perl_unix shell script developerRamkumar_python_perl_unix shell script developer
Ramkumar_python_perl_unix shell script developer
 
How to Scale Operations for a Multi-Cloud Platform using PCF
How to Scale Operations for a Multi-Cloud Platform using PCFHow to Scale Operations for a Multi-Cloud Platform using PCF
How to Scale Operations for a Multi-Cloud Platform using PCF
 
Scaling PHP Applications with Zend Platform
Scaling PHP Applications with Zend PlatformScaling PHP Applications with Zend Platform
Scaling PHP Applications with Zend Platform
 
Ui Modeling In Action With PMF, e4(XWT) And EGF
Ui Modeling In Action With PMF, e4(XWT) And EGFUi Modeling In Action With PMF, e4(XWT) And EGF
Ui Modeling In Action With PMF, e4(XWT) And EGF
 
Webcast urbancodemobiltomainframe
Webcast urbancodemobiltomainframeWebcast urbancodemobiltomainframe
Webcast urbancodemobiltomainframe
 
Migration Approaches for FDMEE
Migration Approaches for FDMEEMigration Approaches for FDMEE
Migration Approaches for FDMEE
 
[Portland 365Sat] PCF Custom Controls
[Portland 365Sat] PCF Custom Controls[Portland 365Sat] PCF Custom Controls
[Portland 365Sat] PCF Custom Controls
 
Problem Determination Tools
Problem Determination ToolsProblem Determination Tools
Problem Determination Tools
 
Ashish Chaurasia resume
Ashish Chaurasia resumeAshish Chaurasia resume
Ashish Chaurasia resume
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKS
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKS
 
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
Faster, more Secure Application Modernization and Replatforming with PKS - Ku...
 
Legacy Migration Overview
Legacy Migration OverviewLegacy Migration Overview
Legacy Migration Overview
 
Legacy Migration
Legacy MigrationLegacy Migration
Legacy Migration
 
Lamp Zend Security
Lamp Zend SecurityLamp Zend Security
Lamp Zend Security
 
Managing Your Runtime With P2
Managing Your Runtime With P2Managing Your Runtime With P2
Managing Your Runtime With P2
 
Building workflow solution with Microsoft Azure and Cloud | Integration Monday
Building workflow solution with Microsoft Azure and Cloud | Integration MondayBuilding workflow solution with Microsoft Azure and Cloud | Integration Monday
Building workflow solution with Microsoft Azure and Cloud | Integration Monday
 
My Saminar On Php
My Saminar On PhpMy Saminar On Php
My Saminar On Php
 

Más de Alithya

Digital Transformation in Healthcare: Journey to Oracle Cloud for Integrated,...
Digital Transformation in Healthcare: Journey to Oracle Cloud for Integrated,...Digital Transformation in Healthcare: Journey to Oracle Cloud for Integrated,...
Digital Transformation in Healthcare: Journey to Oracle Cloud for Integrated,...
Alithya
 

Más de Alithya (20)

Journey to the Oracle Talent Management Cloud
Journey to the Oracle Talent Management CloudJourney to the Oracle Talent Management Cloud
Journey to the Oracle Talent Management Cloud
 
What Did I Miss? Addressing Non-Traditional Reconciliations in AR and Data In...
What Did I Miss? Addressing Non-Traditional Reconciliations in AR and Data In...What Did I Miss? Addressing Non-Traditional Reconciliations in AR and Data In...
What Did I Miss? Addressing Non-Traditional Reconciliations in AR and Data In...
 
Leading Practices in Multi-Pillar Oracle Cloud Implementations
Leading Practices in Multi-Pillar Oracle Cloud ImplementationsLeading Practices in Multi-Pillar Oracle Cloud Implementations
Leading Practices in Multi-Pillar Oracle Cloud Implementations
 
Why and How to Implement Operation Transfer Pricing (OTP) with Oracle EPM Cloud
Why and How to Implement Operation Transfer Pricing (OTP) with Oracle EPM Cloud Why and How to Implement Operation Transfer Pricing (OTP) with Oracle EPM Cloud
Why and How to Implement Operation Transfer Pricing (OTP) with Oracle EPM Cloud
 
How to Deploy & Integrate Oracle EPM Cloud Profitability and Cost Management ...
How to Deploy & Integrate Oracle EPM Cloud Profitability and Cost Management ...How to Deploy & Integrate Oracle EPM Cloud Profitability and Cost Management ...
How to Deploy & Integrate Oracle EPM Cloud Profitability and Cost Management ...
 
Workforce Plus: Tips and Tricks to Give Workforce an Extra Kick!
Workforce Plus: Tips and Tricks to Give Workforce an Extra Kick! Workforce Plus: Tips and Tricks to Give Workforce an Extra Kick!
Workforce Plus: Tips and Tricks to Give Workforce an Extra Kick!
 
How to Allocate Your Close Time More Effectively
How to Allocate Your Close Time More EffectivelyHow to Allocate Your Close Time More Effectively
How to Allocate Your Close Time More Effectively
 
Viasat Launches to the Cloud with Oracle Enterprise Data Management
Viasat Launches to the Cloud with Oracle Enterprise Data Management Viasat Launches to the Cloud with Oracle Enterprise Data Management
Viasat Launches to the Cloud with Oracle Enterprise Data Management
 
How Do I Love Cash Flow? Let Me Count the Ways…
How Do I Love Cash Flow? Let Me Count the Ways… How Do I Love Cash Flow? Let Me Count the Ways…
How Do I Love Cash Flow? Let Me Count the Ways…
 
How WillScot-Mobile Mini Utilized Enterprise Data Management for Business Tra...
How WillScot-Mobile Mini Utilized Enterprise Data Management for Business Tra...How WillScot-Mobile Mini Utilized Enterprise Data Management for Business Tra...
How WillScot-Mobile Mini Utilized Enterprise Data Management for Business Tra...
 
❤️ Matchmaker, Make Me a Match: Can AR Intercompany Matchmaking Tools Be a Pe...
❤️ Matchmaker, Make Me a Match: Can AR Intercompany Matchmaking Tools Be a Pe...❤️ Matchmaker, Make Me a Match: Can AR Intercompany Matchmaking Tools Be a Pe...
❤️ Matchmaker, Make Me a Match: Can AR Intercompany Matchmaking Tools Be a Pe...
 
Legg Mason’s Enterprise, Profit Driven Quest with Oracle EPM Cloud
Legg Mason’s Enterprise, Profit Driven Quest with Oracle EPM CloudLegg Mason’s Enterprise, Profit Driven Quest with Oracle EPM Cloud
Legg Mason’s Enterprise, Profit Driven Quest with Oracle EPM Cloud
 
Supply Chain Advisory and MMIS System Oracle Implementation
Supply Chain Advisory and MMIS System Oracle ImplementationSupply Chain Advisory and MMIS System Oracle Implementation
Supply Chain Advisory and MMIS System Oracle Implementation
 
Digital Transformation in Healthcare: Journey to Oracle Cloud for Integrated,...
Digital Transformation in Healthcare: Journey to Oracle Cloud for Integrated,...Digital Transformation in Healthcare: Journey to Oracle Cloud for Integrated,...
Digital Transformation in Healthcare: Journey to Oracle Cloud for Integrated,...
 
nter-pod Revolutions: Connected Enterprise Solution in Oracle EPM Cloud
nter-pod Revolutions: Connected Enterprise Solution in Oracle EPM Cloud nter-pod Revolutions: Connected Enterprise Solution in Oracle EPM Cloud
nter-pod Revolutions: Connected Enterprise Solution in Oracle EPM Cloud
 
ODTUG Configuring Workforce: Employee? Job? or Both?
ODTUG Configuring Workforce: Employee? Job? or Both? ODTUG Configuring Workforce: Employee? Job? or Both?
ODTUG Configuring Workforce: Employee? Job? or Both?
 
Oracle Cloud Time and Labor: Default Payroll Rate, Override Rate and Flat Dol...
Oracle Cloud Time and Labor: Default Payroll Rate, Override Rate and Flat Dol...Oracle Cloud Time and Labor: Default Payroll Rate, Override Rate and Flat Dol...
Oracle Cloud Time and Labor: Default Payroll Rate, Override Rate and Flat Dol...
 
AUSOUG I Am Paying for my Cloud License. What's Next?
AUSOUG I Am Paying for my Cloud License. What's Next?AUSOUG I Am Paying for my Cloud License. What's Next?
AUSOUG I Am Paying for my Cloud License. What's Next?
 
A Journey to Profitability with Oracle PCMCS
A Journey to Profitability with Oracle PCMCSA Journey to Profitability with Oracle PCMCS
A Journey to Profitability with Oracle PCMCS
 
Essbase Calculations: Elements of Style
Essbase Calculations: Elements of StyleEssbase Calculations: Elements of Style
Essbase Calculations: Elements of Style
 

Último

EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

Taking Your FDM Application to the Next Level with Advanced Scripting

  • 1. Taking Your FDM Application to the Next Level with Advanced Scripting Tony Scalese Edgewater Ranzal www.ranzal.com
  • 2. About Edgewater Ranzal One of the Largest Oracle/Hyperion Practices in the U.S. Oracle / Hyperion Platinum 15 Years Partner - Highest Status 700+ clients 1000+ projects Vertical Expertise with High- Profile Clients from Coast to Coast Sound Project Methodology Insures Project Success “One Stop Shop” for ALL EPM Implementation needs
  • 3. Our Services Business Consolidation Planning Intelligence Data Project Infrastructure Services Management
  • 4. Who Is Tony Scalese Over 10 years Experience with Data Integration and Financial Planning & Consolidation on the Hyperion suite of products Established many innovative FDM design, customization and automation concepts that have evolved into standard Industry-wide practices. Certified HFM Consultant - System 9 & Fusion 11 Present at Oracle conferences, Ranzal webcasts and post on Oracle Technology Network (OTN) and blog on www.FDMGuru.com B.A. Economics, Allegheny College; MBA Candidate, Babson College
  • 5. Agenda Script Types Import Scripts Event Scripts Custom Scripts Tips & Tricks Common Script Usage Batch Scripts Leveraging Workbench Scheduling Scripts Solution Overview & Wrap-up Smart Replace Resources Scripting Challenge
  • 6. What is FDM Scripting? FDM has a powerful scripting engine that leverages the VBScript programming language to further extend the application’s functionality Scripts can be used to execute SQL queries Scripts can leverage windows objects (Shell) to execute batch command files FDM Scripting is as powerful as your programming skills & knowledge of the application architecture
  • 7. Script Types Import: Execute during the import workflow stage when assigned to the import format used by the location processing data Event: Execute during predefined “events” within the application. These are similar to Excel workbook macros that execute “OnOpen” Custom: All other scripts that are used to perform additional actions/functions in FDM
  • 8. Import Scripts DataPump – Used with Delimited & Fixed Width Import formats Execute for the dimension to which they are assigned in the import format. Execute for each line in the data file Integration – Used with Script Import Formats Used to provide direct integration to relational sources Executes SQL queries to retrieve data from source Often Utilizes an ADO connection Working example in the Admin Guide
  • 9. Import Scripts – Some Facts API objects are not available for use in Import Scripts - Data Pump or Integration Data Pump scripts are passed the field (strField) defined by the import format – i.e, field x of y - as well as the entire record (strRecord) Temporary variables can be used during the import process and accessed by other import scripts – RES.pVarTempx You cannot execute Import scripts from the script editor
  • 10. Import Scripts – The #1 Pitfall Pre/Cross Dimensional Mapping - if source account is X, Y or Z then Entity is A While there are times this can be necessary, robust event scripting can often address the need for this logic Why is this approach flawed? Limited visibility to the true source value for a given dimension Mapping “logic” is likely no longer an end user function; scripts are only visible to administrators Any time the logic changes, the data file must be re- imported ERPi does not currently support modifications to the source member that was extracted from the G/L
  • 11. Example Integration Script Package Create connection to source Connection strings vary based on source DB type Run query to get source records SQL Select query Append query result to FDM worktable
  • 12. Event Scripts – Some Facts Only execute when the Event actually has code Application passes certain arguments to the event script when triggered “Action” event scripts often execute multiple subprocesses and/or other event scripts You cannot add “new” Event scripts You cannot execute Event scripts from the script editor
  • 13. Event Scripts Event Script Executed StartUp During Log In and Logout of the application ShutDown Does not execute in 11.1.2.0 StatusMessage When using the API function mStatusMessage SystemLocked When the system is Locked POVChanged When the point-of-view is changed SecurityChanged When security is changed ImportMap (Bef & Aft) During the Import of a mapping .TRx file CopyMap (Bef & Aft) During the Copy of map from one location to another ClearData (Bef & Aft) When data is cleared for a given point-of-view FileImport (Bef & Aft) When a flat file is imported; does not apply to adaptor & script based import formats
  • 14. Event Scripts Event Script Executed Validate (Bef & Aft) During Validate workflow step ExportToDat (Bef & Aft) During Export step when a data file is created Load (Bef & Aft) During Export step when data file export is loaded to target system Consolidate (Bef & Aft) During a target system is consolidation Check (Bef & Aft) When Check workflow step Calculate (Bef & Aft) When Calculate is executed; Process Logic/Maps ProcLogicGrp (Bef & Aft) When Logic groups applied; during Import & Process Logic/Maps ProcMap (Bef & Aft) When Maps are applied; during Import & Process Logic/Maps; only executes for locations with Wildcard maps
  • 15. Event Scripts Event Script Executed ArchiveItemAction During archive of import & export files ControlsAction During Certification (un)Review & (un)Submit ImportAction When Import workflow step is run MemoItemAction When Memos are added, updated or deleted MultiloadAction During Multi-Load and Journal processing BatchAction During batch execution BatchAutoMapCorrect During a batch process that utilizes the autocorrect mapping feature
  • 16. Custom Scripts – Some Facts
  • 17. Custom Scripts 3 types of Custom scripts General: All other actions in FDM; example – Batch loader script Plug-In: No longer used Web: Used to create tasks flows that allow end users to execute scripts without requiring access to script editor
  • 18. Running SQL from Scripts Select Queries – Used to retrieve data from a table Set rs = DW.DataAccess.farsKeySet(strSQL) DML Queries – Used to Update/Insert/Delete data blnResult = DW.DataManipulation.fExecuteDML(strSQL)
  • 19. Scripting Objects File System Object Set FSO = CreateObject(“Scripting.FileSystemObject) Set objFile = FSO.CreateTextFile(PathToFile, OverwriteExisting, blnUnicode) Windows Shell Object Set wShell = WScript.CreateObject("WScript.Shell") lngResult = WShell.Run(strCommand, WindowStyle, blnWaitOnReturn)
  • 20. Batch Loader From the Workbench, Tools Batch Processing Set the Batch Processing options and click Create Script
  • 21. Batch Loader Script Package Process Level – Tells FDM which workflow steps to perform; see enmBatchProcessLevels Delimiter – File name delimiter use in the batch file name. Example: 1~Location~Category~Period~rr.txt Map Auto Correct – Controls if FDM should automap missing members to a default/suspense member; True/False
  • 22. Object Browser Object Browser contains a list of all of the API functions that are available to be used in FDM scripts Object Browser is only available in WorkBench Many objects provide a description of the return or required arguments
  • 23. Accelerators Accelerators are prewritten snippets of code that perform common scripting operations including: Get detailed POV information (location metadata) Create and loop through a recordset Work with text files using FSO Send email Accelerators provide 70-80% of the code, you will often need to update/refine
  • 24. Using Accelerators Select the section of the script where you need the accelerator code Double click the accelerator and the code is inserted Refine as needed – you will need to review the code
  • 25. Adaptor Specific Objects Import the Type Library of the Adaptor Right click the object browser and select Add Type Library Browse to the adaptor folder and import the AdaptorName.tlb file
  • 26. Scheduling Scripts FDM Task Manager – FDM component that allows custom scripts to be scheduled on specific intervals; seconds, days of the week, specific day(s) each month FDM Shell Object – Used to execute custom scripts from a windows batch file; batch file can be scheduled within Windows Scheduled Tasks or any enterprise scheduling software
  • 27. Task Manager Select application & script to execute Specify Login credentials – non expiring recommended Specify Time interval to execute
  • 28. FDM Shell Shell object is in the SharedComponents of the installation directory Double click the UPSShell executable Open Notepad and paste Default syntax is provided Consists of 2 parts – Path to FDM Shell & Call to script
  • 29. FDM Shell Syntax C:OracleMIDDLE~1EPMSYS~1productsFINA NC~1SHARED~1upsShell.exe CustomScriptEx=AppName~UserID~PW~DOMA IN~LoadBalancerName~LogDirectory~ScriptNa me~LanguageCode(Default=1033)~EncodeUnic ode(Default=0) C:OracleMIDDLE~1EPMSYS~1productsFINA NC~1SHARED~1upsShell.exe CustomScriptEx=App1~admin~password~~local host~C:Temp~BatchLoad~1033~0
  • 30. Taking a Detour – HFM Architecture HFM subcubes are the intersection of the Accounts, ICP, Custom1-4 & Period for the Year, Entity, Scenario and Value dimensions When loading in replace mode, the entire subcube is cleared for each unique Year, Entity Scenario that is contained in the data This is the default HFM behavior – loading through FDM or directly in HFM through load tasks Data is “orphaned” in HFM if an entity is loaded and then in subsequent loads is not part of the data set – meaning potentially inaccurate financial results
  • 31. Preliminary Load Preliminary load includes a errant G/L posting that misclassifies data into the ‘Rhode Island’ entity
  • 32. Reload G/L posting is corrected and previous entry is re-classed from Rhode Island to Massachusetts Data is not cleared from Rhode Island since no data exists in the G/L file for R.I. HFM is wrong!
  • 33. How Can FDM Help? Smart Replace is a Ranzal custom developed FDM solution that addresses this common data quality issue caused by the default clear behavior of HFM A list of the unique entities that have been loaded to HFM is maintained The data that is currently being loaded to HFM is compared against the list of historically loaded data If any “orphaned” entities are found, a data clearing record for that entity is added to the data set being loaded
  • 34. Reload with Smart Replace G/L posting is corrected and previous entry is re-classed from Rhode Island to Massachusetts Data is cleared from Rhode Island by the custom Smart Replace functionality HFM is correct!
  • 35. What To Learn More? FDM Adaptor Actions FDM API Guide http://www.oracle.com/technology/documentation/epm.html Oracle Technology Network (OTN) http://forums.oracle.com/forums/forum.jspa?forumID=409&s tart=0 Ranzal & Associates http://www.ranzal.com W3 Schools http://www.w3schools.com Google
  • 36. Scripting Challenge Tell me a problem you are facing in your FDM application that you believe or know custom scripting will address Entries can be dropped at the Ranzal booth or email me (ascalese@ranzal.com) before the end of the conference I will select 1 challenge and create a script that addresses the issue I will schedule a 1 hr web session to demo the solution
  • 38. Other Ranzal Presentations Calculation Manager: The New and Improved Application to Create Hyperion Planning Business Rules – Monday, 11:15 am, Room 102C Security and Auditing in HFM – Tuesday, 4:30pm, 101B Best Practices for Using DRM with EPMA – Wednesday, 8:30am, 103A Getting Started with Calc Manager for HFM – Wednesday, 8:30am, 101B Advanced Topics in Calc Manager for HFM – Wednesday, 9:45am, 101B Maximizing the Value of an EPM Investment with ERPi, FDM & EPMA – Wednesday, 11:15am, 101B Taking your FDM application to the next level with Advanced Scripting – Friday, 8:30am, 101B IFRS reporting within Hyperion Financial Management – Thursday, 10:30am, 101B