SlideShare a Scribd company logo
1 of 45
Emtec, Inc. Copyright © 2016. All Rights Reserved.
Translating Hyperion Planning Automation Methods from On-Premise to the Cloud
Randy Miller – June 27, 2016
From MaxL to EPM Automate
3
CONFIDENTIAL | © 2016 Emtec, Inc.
Randy Miller
o Got into Hyperion directly out of college and haven’t left!
 Essbase & Planning
 HFM
 FDMEE
o Generally the guy to go figure out new tools, applications
& functionality and tell the rest of the practice
o Based out of Charlotte, NC
o KScope Rookie!
4
22+YEARS IN
BUSINESS
1,000+
CLIENTS
800+
CONSULTANTS
250+
SaaS PROJECT
80+
ORACLE
CLOUD
2,500+
PROJECTS
ABOUT OUR
COMPANY
Agenda
• Introduction & Setup
• Comparison of theTypical Nightly Process
• Step By StepThrough Each Process
• Q&A
6
CONFIDENTIAL | © 2016 Emtec, Inc.
Introduction & Setup
o Intent is to focus on EPM Automate.
o Overview of EPM Automate
 Used for automating various administrative tasks
 Downloadable from the Cloud
 Command Line / Batch / Shell Script Execution
o GlobalVariable File
 Called at Beginning of Process
 Sets GlobalVariables (Environment)
 Time Stamps
 Pathing
 User/Pass
 SubVars
7
CONFIDENTIAL | © 2016 Emtec, Inc.
Intro – GlobalVariable File
8
CONFIDENTIAL | © 2016 Emtec, Inc.
Introduction & Setup – General Scripting
o Echo Starting Point to “Full Log”
o Run Desired Command
o Process Logger & Error Notification
o Exit if Error
9
CONFIDENTIAL | © 2016 Emtec, Inc.
Introduction & Setup - Logging
o Similar to any batch process we can direct the output to logs.
o In these examples we have: “Process Log” and a “Full Log”
 Process Log is updated via a “ProcLogger” batch file
 %FILE_PROCLOG%
 Declares whether a process was successful or failed.
 If failed it grabs the error message and exits the nightly process
 Full log is the standard output and logging of EPMAutomate.
 %FILE_OUTLOG%
 Any output from the EPMAutomate processes are capture here.
10
CONFIDENTIAL | © 2016 Emtec, Inc.
Introduction & Setup – Error Handling
o If using Windows, %ErrorLevel% will store the error code. For
EPMAutomate a zero means there was no error, greater than zero
means there was error.
Status Code Description Status Code Description
0 Operation completed without errors. 6 Service is not available.
1 Operation failed to execute because of an
error
7 Invalid command.
2 Cancel pending. 8 Invalid parameter.
3 Operation is terminated by the user. 9 Invalid user name, password or identity domain.
4 Incorrect parameters. 10 Expired password.
5 Insufficient privileges. 11 Service is not available.
11
CONFIDENTIAL | © 2016 Emtec, Inc.
Introduction & Setup - Debugging
o EPMAutomate doesn’t always give easily decipherable error
messages.
o After any epmautomate command you run, if you do the following it
will write debug information (more detail) to a file.
 Default Debug Log Location: OracleEPM Automatebin
 Specify location – Just redirect to a file
 Debug won’t always give the answer, but might give you a better idea
12
CONFIDENTIAL | © 2016 Emtec, Inc.
Introduction & Setup – Logging In
o epmautomate login <User> <Password/File> <URL> <Domain>
o Encrypting the password to use a password file
 epmautomate encrypt <Password> <EncryptionKey> <FileLocation>
 Encryption Key can be any phrase (if using spaces, enclose in quotes).
 File Location is where you want the encrypted password file to end up
13
CONFIDENTIAL | © 2016 Emtec, Inc.
Nightly Process
Process
On-Premise
MaxL
PBCS
EPM Automate
Initial Process
SubVars SetVariable Function EPMAutomate Function
Maint Mode HP Utility N/A
Backup
LCM For All Objects
System Level Zero Export
Download Artifact Snapshot
Clear Data Reset Cube (Full Clear) Clear Only Current Month
Metadata Load & Refresh Outline Load Utility Import Metadata Job
Load Data
FDMEE
EAS Load Rule
Data Integration (FDMEE)
Import Data Job
Aggregate & Calculate
Essbase Calc Script
Business Rule
Business Rule
Move to Reporting Cube
PlanType Map
Export / Clear / Import
PlanType Map
Export / Clear / Import
14
CONFIDENTIAL | © 2016 Emtec, Inc.
Initial Process
MaxL & HP Utilities
o MaxL to set substitution
variables
o MaxL to remove any locks on
objects and kill sessions
o MaintenanceMode.cmd to
keep users out of the system
EPM Automate
o setsubstvars Function
o There is no automated
equivalent for:
 Removing locks on objects
 Kill any sessions
 Put the application in
maintenance mode
o Note: removing locks on objects was more for
unlocking the outline, which as we don’t have
access to EAS should no longer be an issue.
15
CONFIDENTIAL | © 2016 Emtec, Inc.
Initial Process – Set SubVars
o Set in the GlobalVariables File
o Can set all variables at once by concatenating them into one variable
o epmautomate setsubstvars <Level> <SubVar>=<Value>
 <Level> = Either a PlanType or “ALL” for global
 <SubVar>=<Value> = SubVar name and what you want to set it to. Can set multiple sub vars
in one call if they are all space delimited
16
CONFIDENTIAL | © 2016 Emtec, Inc.
Backup
MaxL & LCM Utility
o Setup an Export in LCM
o Run Utility.cmd with that same
definition
o MaxL to Export Level Zero
EPM Automate
o Artifact Snapshot is generated
every night
o Use “Set MaintenanceTime” to
control when
 Note:You should run a refresh
database before your MtcTime
o Data is included (All Level)
o Just download the snapshot!
17
CONFIDENTIAL | © 2016 Emtec, Inc.
Backup (Auto Generated LCM File)
o Auto Generated Backup is named “Artifact Snapshot”
 Includes All Level Data
o Only need to download the backup
18
CONFIDENTIAL | © 2016 Emtec, Inc.
Backup (Custom LCM File)
o Similar to On-Prem – Create a custom LCM export to execute
o Select the Applications you want to export
data/object from
o Once finished click export
o All selections you have made (for all
applications) will be exported
o Take note of the name of the snapshot (i.e.
PLANDEMO_NoData) as you will use this
later in EPMAutomate
19
CONFIDENTIAL | © 2016 Emtec, Inc.
Backup (Custom LCM File)
o Similar to On-Prem – Create a custom LCM export to
execute
o Change %HP_BKUP_FILE% in our “Global” variables to the
new Snapshot name
20
CONFIDENTIAL | © 2016 Emtec, Inc.
Clear Data
MaxL
o Reset Data Function in MaxL to
clear whole cube
 Typically done to save time on
restructure & defragment the
cube
o Run a clear calc script to clear
only current month (or all
actual months)
EPM Automate
o We cannot clear the entire cube
in an automated fashion
o runbusinessrule EPM Automate
function to clear only current
months (or all actual months)
21
CONFIDENTIAL | © 2016 Emtec, Inc.
Clear Data –Without RTP’s
o You can run business rules (remember, no ESB Calc Scripts!) either
with or without Run-Time Prompts.
o epmautomate runbusinessrule <PlanType> <RuleName>
 If you have the same rule name in two plan types, you need to specify which
plan type to run it on. Otherwise, it is optional
22
CONFIDENTIAL | © 2016 Emtec, Inc.
Clear Data –With RTP’s
o Identical to running it without RTPs, we just include them at the
end.
o You can specify multiple RTPs for a single rule
o epmautomate runbusinessrule <PlanType> <RuleName> <RTPs>
 RTPs are entered after the rule, space delimited
23
CONFIDENTIAL | © 2016 Emtec, Inc.
Rulesets
o I have tried several different methods to call a rule set.
o Within the confines of EPMAutomate, I have not identified a way to
accomplish this.
o When debugging, the “runbusinessrule” function appears to be
looking for the job name you specified with the type “RULE” only.
o Rulesets however are of the type “RULESET”
o This can be accomplished using the REST API.
24
CONFIDENTIAL | © 2016 Emtec, Inc.
Metadata Load & Refresh
Outline Load Utility (OLU)
o Call the OLU from the planning
server to load data
o Use the “/c” switch to perform
a refresh on last import
EPM Automate
o Setup an import job
 Define each dimension to be
imported
o When saving the job check
“Refresh Database if Import
Metadata is successful”
o Note: Will import in the sort
order specified in file!
25
CONFIDENTIAL | © 2016 Emtec, Inc.
Metadata Load & Refresh
o Nightly Import of Metadata
o Multiple CSV files in one ZIP Archive
 Account,Customer, Department, Employee, Entity
o Name the files to end with _<Dimension>.csv
 Zip ArchiveTakes Precedence over what is Defined in Import Rule.
 CASE SENSITIVE!
o Metadata Import Sequence:
 Delete Old File (DailyMetadata.zip)
 Combine All Files into a Zip Archive
 Upload New File
 Import Metadata
26
CONFIDENTIAL | © 2016 Emtec, Inc.
Metadata Load & Refresh – Delete Old File
o There is no “Overwrite” option so we need to remove the existing
one before
o Note that we do not do any sort of “error trapping” here.
 In case someone already deleted the file or moved it.
o If this process fails to delete the file the next step will fail anyway.
27
CONFIDENTIAL | © 2016 Emtec, Inc.
Metadata Load & Refresh – Zip Files
o Can upload multiple files at once as a Zip Archive
o You can specify the specific dimension in each file name using the
convention: “_<Dimension>.csv”
 Note that it is Case Sensitive
 Otherwise you can specify the filename in the Import Job
28
CONFIDENTIAL | © 2016 Emtec, Inc.
Metadata Load & Refresh – Upload
o Upload the same filename every night
 i.e.The one you just deleted the step before.
o Archive in the filesystem, not in the cloud.
o epmautomate uploadfile “<FilePathToZipArchive>”
29
CONFIDENTIAL | © 2016 Emtec, Inc.
Metadata Load & Refresh – Import Metadata
o Create a Metadata Import Job
 Simplified Interface -> Console -> DimensionsTab -> Import -> Create
 Specify Import File Name & Delimiter
30
CONFIDENTIAL | © 2016 Emtec, Inc.
Metadata Load & Refresh – Import Metadata
o Now that the file is uploaded we can Import
o epmautomate <ImportJob> <FileName>
 If you upload each individual .csv specified in import job into the inbox, you
do not need to include the filename
 <FileName> in our case is the zip file we just uploaded.
31
CONFIDENTIAL | © 2016 Emtec, Inc.
Load Data
MaxL & EAS Load Rule
o If we did a full clear we would
be loading the Level Zero data
back into the system
o Load rule to load current
month (or all actual months)
EPM Automate
o Upload File to Inbox
o Three Options to Load:
 Native ESB Load
 FDMEE
 HP Outline Load Utility
o Follows same process as Metadata
 Delete Old File
 Zip File(s)
 Upload Zip
 Run Import Job
32
CONFIDENTIAL | © 2016 Emtec, Inc.
Load Data
Native Essbase Load
o EPMAuto Function: importdata
o Create an Import Data Job
o .TXT File Only
 Space orTab Delimited
o Must be in Metadata Format
 Contains Prefix/Suffix etc
o Overwrite Only
o Exits on a Single Error
o Can doWFP Loads “more easily”
FDMEE
o EPMAuto Function: rundatarule
o Requires More Effort to Setup
o Can handle Mappings / Prefix /
Suffix / Ignores etc
o Can Perform Load Functions:
 Merge
 AddTo
 Subtract From
 Overwrite (Replace)
o Cannot do generalWFP loads (i.e.
accounts in the columns)
33
CONFIDENTIAL | © 2016 Emtec, Inc.
Load Data – Native Essbase Load
o The following is the most simple way to build the file (IMO).
 Specify all dimensions in except for the data columns
 First row contains the column headers for the data columns
 Could be Periods or Accounts or any dense dimension.
 Period (Header), Account (“A61100”) and Currency (“Local_Currency”) are dense
o Create a data import rule:
 Simplified Interface -> Console
 -> Actions -> Import Data -> Create
34
CONFIDENTIAL | © 2016 Emtec, Inc.
Load Data – Native Essbase Load
o The job will load all files contained in the ZIP Archive
o File should be in the planning inbox
o epmautomate importdata <ImportJob> <File>
35
CONFIDENTIAL | © 2016 Emtec, Inc.
Load Data – FDMEE (Data Management)
o Create (in order):
 Source System
 Target Application
 Import Format
 Data Load Rule
 Data Load Mappings for each Dimension
o Import Data File into the FDMEE Repository.Technically you do not
have to import into this folder.
o epmautomate uploadfile <SourceFile> <TargetFolderPath>
36
CONFIDENTIAL | © 2016 Emtec, Inc.
Load Data – FDMEE (Data Management)
o Execute the Data Rule that you created in the last step
o Epmautomate rundatarule <RuleName> <StartPer> <EndPer>
<Import_Mode> <Export_Mode> <DataFile>
 <StartPer> = Starting Period
 Use the “Period Name” in the Period Mappings
 <EndPer> = Ending Period (If using single period this will = StartPer)
 <Import_Mode> = Append / Replace / None
 <Export_Mode> = Store_Data / Add_Data / Subtract_Data / Replace_Data /
None
37
CONFIDENTIAL | © 2016 Emtec, Inc.
Aggregate & Calculate
MaxL / Business Rules
o Use MaxL for simple Essbase
calculation scripts.
o CalcMgrCmdLineLauncher.cmd
 Can use RunTime Prompts
EPM Automate
o runbusinessrule EPM Automate
Function
 Can use RunTime Prompts
o Identical to the Clear Process
38
CONFIDENTIAL | © 2016 Emtec, Inc.
Move Data to Reporting Application
MaxL / HP Utility
o Use MaxL to:
 Call an Export Calc Script
 Clear Data inTarget Cube
 Load Data
o Map a reporting application
 Use RunData.cmd HP Utility
EPM Automate
o Export/Import process can be
accomplished using Business
Rules or Jobs
o Map a reporting application
 Use runplantypemap EPM
Automate function
39
CONFIDENTIAL | © 2016 Emtec, Inc.
Move Data to Rptg App – Export/Import
o Two Options for export:
 Create a business rule using DATAEXPORT
 DATAEXPORT "File" " " "/u03/lcm/MoveData.txt";
 Use a space as a delimiter
 Create an export Job
o Both can be loaded using a native Essbase Import Job
o Both export to the Planning Inbox
40
CONFIDENTIAL | © 2016 Emtec, Inc.
Move Data to Rptg App – PlanType Map
o Ran on-prem to look at App Log to determine what is happening..
 It runs an export & import
o If you only need to move the data (i.e. don’t need to run any
calculations before) this is a simpler option.
 This will export dynamic dense members!
o Administration -> Map Reporting Application
 Fill out all required sections.
o Epmautomate runplantypemap <JobName> <cleardata=true/false>
41
CONFIDENTIAL | © 2016 Emtec, Inc.
Other Functions
o Refresh Cube
 epmautomate refreshcube
o Cycling Services
 epmautomate resetservice
o Copy PRD to DEV (Copy Snapshot From Instance)
 Login to target instance, i.e. DEV (your “test” instance)
 All Parameters refer to the source instance, i.e. PROD.
 epmautomate copysnapshotfrominstance <SnapshotName> <User> <Pass/File>
<URL> <Domain>
o Provision Report
 Epmautomate provisionreport <ReportName.csv>
And finally a report so many have asked for…
42
CONFIDENTIAL | © 2016 Emtec, Inc.
User Audit Report
o epmautomate userauditreport <FromDate> <ToDate> <ReportName>
 Data Format: “YYYY-MM-DD”
Q & A
Thank You
RMiller.FromMaxL.presentation

More Related Content

Viewers also liked

Gordon Research Conferences - Gordon Research Seminars
Gordon Research Conferences - Gordon Research SeminarsGordon Research Conferences - Gordon Research Seminars
Gordon Research Conferences - Gordon Research SeminarsAurelio Galli
 
diapostiva historia del computador
diapostiva  historia del computadordiapostiva  historia del computador
diapostiva historia del computadorEsteban Cuervo
 
diapostiva historia del computador
diapostiva  historia del computadordiapostiva  historia del computador
diapostiva historia del computadorEsteban Cuervo
 
Ejercicio de power point kh
Ejercicio de power point khEjercicio de power point kh
Ejercicio de power point khGHCarballo
 
Achieving Measurable Collective Impact with Results-Based Accountability - Sh...
Achieving Measurable Collective Impact with Results-Based Accountability - Sh...Achieving Measurable Collective Impact with Results-Based Accountability - Sh...
Achieving Measurable Collective Impact with Results-Based Accountability - Sh...Clear Impact
 
The Power of ABCD and Results-Based Accountability for Greater Impact and Res...
The Power of ABCD and Results-Based Accountability for Greater Impact and Res...The Power of ABCD and Results-Based Accountability for Greater Impact and Res...
The Power of ABCD and Results-Based Accountability for Greater Impact and Res...Clear Impact
 
Achieving Measurable Collective Impact with Results-Based Accountability - Mu...
Achieving Measurable Collective Impact with Results-Based Accountability - Mu...Achieving Measurable Collective Impact with Results-Based Accountability - Mu...
Achieving Measurable Collective Impact with Results-Based Accountability - Mu...Clear Impact
 
Plant domestication 18 05-16 geo
Plant domestication 18 05-16 geoPlant domestication 18 05-16 geo
Plant domestication 18 05-16 geojuana juarez cruz
 

Viewers also liked (19)

Gordon Research Conferences - Gordon Research Seminars
Gordon Research Conferences - Gordon Research SeminarsGordon Research Conferences - Gordon Research Seminars
Gordon Research Conferences - Gordon Research Seminars
 
diapostiva historia del computador
diapostiva  historia del computadordiapostiva  historia del computador
diapostiva historia del computador
 
diapostiva historia del computador
diapostiva  historia del computadordiapostiva  historia del computador
diapostiva historia del computador
 
Ejercicio de power point kh
Ejercicio de power point khEjercicio de power point kh
Ejercicio de power point kh
 
diapostiva computador
diapostiva computadordiapostiva computador
diapostiva computador
 
Figuras y Colores
Figuras y ColoresFiguras y Colores
Figuras y Colores
 
Figuras
FigurasFiguras
Figuras
 
Figuras y colores
Figuras y coloresFiguras y colores
Figuras y colores
 
Maneirismo
ManeirismoManeirismo
Maneirismo
 
Comportamiento politico autores
Comportamiento politico autoresComportamiento politico autores
Comportamiento politico autores
 
Achieving Measurable Collective Impact with Results-Based Accountability - Sh...
Achieving Measurable Collective Impact with Results-Based Accountability - Sh...Achieving Measurable Collective Impact with Results-Based Accountability - Sh...
Achieving Measurable Collective Impact with Results-Based Accountability - Sh...
 
The Power of ABCD and Results-Based Accountability for Greater Impact and Res...
The Power of ABCD and Results-Based Accountability for Greater Impact and Res...The Power of ABCD and Results-Based Accountability for Greater Impact and Res...
The Power of ABCD and Results-Based Accountability for Greater Impact and Res...
 
Video politica
Video politicaVideo politica
Video politica
 
Achieving Measurable Collective Impact with Results-Based Accountability - Mu...
Achieving Measurable Collective Impact with Results-Based Accountability - Mu...Achieving Measurable Collective Impact with Results-Based Accountability - Mu...
Achieving Measurable Collective Impact with Results-Based Accountability - Mu...
 
Plant domestication 18 05-16 geo
Plant domestication 18 05-16 geoPlant domestication 18 05-16 geo
Plant domestication 18 05-16 geo
 
Plants domestication
Plants domesticationPlants domestication
Plants domestication
 
oxidos de azufre
oxidos de azufre oxidos de azufre
oxidos de azufre
 
Oxidos de Azufre
Oxidos de AzufreOxidos de Azufre
Oxidos de Azufre
 
Modelo economico de venezuela
Modelo economico de venezuelaModelo economico de venezuela
Modelo economico de venezuela
 

Similar to RMiller.FromMaxL.presentation

New sap installation post installation
New sap  installation   post installationNew sap  installation   post installation
New sap installation post installationdkeerthan
 
Instalation guide pressto net systemenglish
Instalation guide pressto net systemenglishInstalation guide pressto net systemenglish
Instalation guide pressto net systemenglishdaniellopez972
 
Maximize the power of OSGi in AEM
Maximize the power of OSGi in AEM Maximize the power of OSGi in AEM
Maximize the power of OSGi in AEM ICF CIRCUIT
 
Runtime compilation and code execution in groovy
Runtime compilation and code execution in groovyRuntime compilation and code execution in groovy
Runtime compilation and code execution in groovyVitebsk Miniq
 
R12 d49656 gc10-apps dba 22
R12 d49656 gc10-apps dba 22R12 d49656 gc10-apps dba 22
R12 d49656 gc10-apps dba 22zeesniper
 
Collect pydata from your processes
Collect pydata from your processesCollect pydata from your processes
Collect pydata from your processesPyDataParis
 
PVS-Studio and Continuous Integration: TeamCity. Analysis of the Open RollerC...
PVS-Studio and Continuous Integration: TeamCity. Analysis of the Open RollerC...PVS-Studio and Continuous Integration: TeamCity. Analysis of the Open RollerC...
PVS-Studio and Continuous Integration: TeamCity. Analysis of the Open RollerC...Andrey Karpov
 
FDM to FDMEE migration utility
FDM to FDMEE migration utilityFDM to FDMEE migration utility
FDM to FDMEE migration utilityBernard Ash
 
Raising the Bar on Robotics Code Quality
Raising the Bar on Robotics Code QualityRaising the Bar on Robotics Code Quality
Raising the Bar on Robotics Code QualityThomas Moulard
 
2012 04-19 theory-of_operation
2012 04-19 theory-of_operation2012 04-19 theory-of_operation
2012 04-19 theory-of_operationbobwolff68
 
Single Sourcing RAP and RCP - Desktop and web clients from a single code base
Single Sourcing RAP and RCP - Desktop and web clients from a single code baseSingle Sourcing RAP and RCP - Desktop and web clients from a single code base
Single Sourcing RAP and RCP - Desktop and web clients from a single code baseRalf Sternberg
 
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...{code}
 
Open Source XMPP for Cloud Services
Open Source XMPP for Cloud ServicesOpen Source XMPP for Cloud Services
Open Source XMPP for Cloud Servicesmattjive
 
AIX Advanced Administration Knowledge Share
AIX Advanced Administration Knowledge ShareAIX Advanced Administration Knowledge Share
AIX Advanced Administration Knowledge Share.Gastón. .Bx.
 
EMC World 2016 - code.02 Introduction to Immutable Infrastructure
EMC World 2016 - code.02 Introduction to Immutable InfrastructureEMC World 2016 - code.02 Introduction to Immutable Infrastructure
EMC World 2016 - code.02 Introduction to Immutable Infrastructure{code}
 

Similar to RMiller.FromMaxL.presentation (20)

New sap installation post installation
New sap  installation   post installationNew sap  installation   post installation
New sap installation post installation
 
Instalation guide pressto net systemenglish
Instalation guide pressto net systemenglishInstalation guide pressto net systemenglish
Instalation guide pressto net systemenglish
 
Users guide
Users guideUsers guide
Users guide
 
Maximize the power of OSGi in AEM
Maximize the power of OSGi in AEM Maximize the power of OSGi in AEM
Maximize the power of OSGi in AEM
 
Runtime compilation and code execution in groovy
Runtime compilation and code execution in groovyRuntime compilation and code execution in groovy
Runtime compilation and code execution in groovy
 
L08IntroToC.ppt
L08IntroToC.pptL08IntroToC.ppt
L08IntroToC.ppt
 
R12 d49656 gc10-apps dba 22
R12 d49656 gc10-apps dba 22R12 d49656 gc10-apps dba 22
R12 d49656 gc10-apps dba 22
 
Collect pydata from your processes
Collect pydata from your processesCollect pydata from your processes
Collect pydata from your processes
 
PVS-Studio and Continuous Integration: TeamCity. Analysis of the Open RollerC...
PVS-Studio and Continuous Integration: TeamCity. Analysis of the Open RollerC...PVS-Studio and Continuous Integration: TeamCity. Analysis of the Open RollerC...
PVS-Studio and Continuous Integration: TeamCity. Analysis of the Open RollerC...
 
Spring AOP
Spring AOPSpring AOP
Spring AOP
 
HPC Examples
HPC ExamplesHPC Examples
HPC Examples
 
pio_present
pio_presentpio_present
pio_present
 
FDM to FDMEE migration utility
FDM to FDMEE migration utilityFDM to FDMEE migration utility
FDM to FDMEE migration utility
 
Raising the Bar on Robotics Code Quality
Raising the Bar on Robotics Code QualityRaising the Bar on Robotics Code Quality
Raising the Bar on Robotics Code Quality
 
2012 04-19 theory-of_operation
2012 04-19 theory-of_operation2012 04-19 theory-of_operation
2012 04-19 theory-of_operation
 
Single Sourcing RAP and RCP - Desktop and web clients from a single code base
Single Sourcing RAP and RCP - Desktop and web clients from a single code baseSingle Sourcing RAP and RCP - Desktop and web clients from a single code base
Single Sourcing RAP and RCP - Desktop and web clients from a single code base
 
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...
EMC World 2016 - mioaITL.08 Infrastructure as Code: Not Your Parent's Data Ce...
 
Open Source XMPP for Cloud Services
Open Source XMPP for Cloud ServicesOpen Source XMPP for Cloud Services
Open Source XMPP for Cloud Services
 
AIX Advanced Administration Knowledge Share
AIX Advanced Administration Knowledge ShareAIX Advanced Administration Knowledge Share
AIX Advanced Administration Knowledge Share
 
EMC World 2016 - code.02 Introduction to Immutable Infrastructure
EMC World 2016 - code.02 Introduction to Immutable InfrastructureEMC World 2016 - code.02 Introduction to Immutable Infrastructure
EMC World 2016 - code.02 Introduction to Immutable Infrastructure
 

RMiller.FromMaxL.presentation

  • 1. Emtec, Inc. Copyright © 2016. All Rights Reserved. Translating Hyperion Planning Automation Methods from On-Premise to the Cloud Randy Miller – June 27, 2016 From MaxL to EPM Automate
  • 2.
  • 3. 3 CONFIDENTIAL | © 2016 Emtec, Inc. Randy Miller o Got into Hyperion directly out of college and haven’t left!  Essbase & Planning  HFM  FDMEE o Generally the guy to go figure out new tools, applications & functionality and tell the rest of the practice o Based out of Charlotte, NC o KScope Rookie!
  • 5. Agenda • Introduction & Setup • Comparison of theTypical Nightly Process • Step By StepThrough Each Process • Q&A
  • 6. 6 CONFIDENTIAL | © 2016 Emtec, Inc. Introduction & Setup o Intent is to focus on EPM Automate. o Overview of EPM Automate  Used for automating various administrative tasks  Downloadable from the Cloud  Command Line / Batch / Shell Script Execution o GlobalVariable File  Called at Beginning of Process  Sets GlobalVariables (Environment)  Time Stamps  Pathing  User/Pass  SubVars
  • 7. 7 CONFIDENTIAL | © 2016 Emtec, Inc. Intro – GlobalVariable File
  • 8. 8 CONFIDENTIAL | © 2016 Emtec, Inc. Introduction & Setup – General Scripting o Echo Starting Point to “Full Log” o Run Desired Command o Process Logger & Error Notification o Exit if Error
  • 9. 9 CONFIDENTIAL | © 2016 Emtec, Inc. Introduction & Setup - Logging o Similar to any batch process we can direct the output to logs. o In these examples we have: “Process Log” and a “Full Log”  Process Log is updated via a “ProcLogger” batch file  %FILE_PROCLOG%  Declares whether a process was successful or failed.  If failed it grabs the error message and exits the nightly process  Full log is the standard output and logging of EPMAutomate.  %FILE_OUTLOG%  Any output from the EPMAutomate processes are capture here.
  • 10. 10 CONFIDENTIAL | © 2016 Emtec, Inc. Introduction & Setup – Error Handling o If using Windows, %ErrorLevel% will store the error code. For EPMAutomate a zero means there was no error, greater than zero means there was error. Status Code Description Status Code Description 0 Operation completed without errors. 6 Service is not available. 1 Operation failed to execute because of an error 7 Invalid command. 2 Cancel pending. 8 Invalid parameter. 3 Operation is terminated by the user. 9 Invalid user name, password or identity domain. 4 Incorrect parameters. 10 Expired password. 5 Insufficient privileges. 11 Service is not available.
  • 11. 11 CONFIDENTIAL | © 2016 Emtec, Inc. Introduction & Setup - Debugging o EPMAutomate doesn’t always give easily decipherable error messages. o After any epmautomate command you run, if you do the following it will write debug information (more detail) to a file.  Default Debug Log Location: OracleEPM Automatebin  Specify location – Just redirect to a file  Debug won’t always give the answer, but might give you a better idea
  • 12. 12 CONFIDENTIAL | © 2016 Emtec, Inc. Introduction & Setup – Logging In o epmautomate login <User> <Password/File> <URL> <Domain> o Encrypting the password to use a password file  epmautomate encrypt <Password> <EncryptionKey> <FileLocation>  Encryption Key can be any phrase (if using spaces, enclose in quotes).  File Location is where you want the encrypted password file to end up
  • 13. 13 CONFIDENTIAL | © 2016 Emtec, Inc. Nightly Process Process On-Premise MaxL PBCS EPM Automate Initial Process SubVars SetVariable Function EPMAutomate Function Maint Mode HP Utility N/A Backup LCM For All Objects System Level Zero Export Download Artifact Snapshot Clear Data Reset Cube (Full Clear) Clear Only Current Month Metadata Load & Refresh Outline Load Utility Import Metadata Job Load Data FDMEE EAS Load Rule Data Integration (FDMEE) Import Data Job Aggregate & Calculate Essbase Calc Script Business Rule Business Rule Move to Reporting Cube PlanType Map Export / Clear / Import PlanType Map Export / Clear / Import
  • 14. 14 CONFIDENTIAL | © 2016 Emtec, Inc. Initial Process MaxL & HP Utilities o MaxL to set substitution variables o MaxL to remove any locks on objects and kill sessions o MaintenanceMode.cmd to keep users out of the system EPM Automate o setsubstvars Function o There is no automated equivalent for:  Removing locks on objects  Kill any sessions  Put the application in maintenance mode o Note: removing locks on objects was more for unlocking the outline, which as we don’t have access to EAS should no longer be an issue.
  • 15. 15 CONFIDENTIAL | © 2016 Emtec, Inc. Initial Process – Set SubVars o Set in the GlobalVariables File o Can set all variables at once by concatenating them into one variable o epmautomate setsubstvars <Level> <SubVar>=<Value>  <Level> = Either a PlanType or “ALL” for global  <SubVar>=<Value> = SubVar name and what you want to set it to. Can set multiple sub vars in one call if they are all space delimited
  • 16. 16 CONFIDENTIAL | © 2016 Emtec, Inc. Backup MaxL & LCM Utility o Setup an Export in LCM o Run Utility.cmd with that same definition o MaxL to Export Level Zero EPM Automate o Artifact Snapshot is generated every night o Use “Set MaintenanceTime” to control when  Note:You should run a refresh database before your MtcTime o Data is included (All Level) o Just download the snapshot!
  • 17. 17 CONFIDENTIAL | © 2016 Emtec, Inc. Backup (Auto Generated LCM File) o Auto Generated Backup is named “Artifact Snapshot”  Includes All Level Data o Only need to download the backup
  • 18. 18 CONFIDENTIAL | © 2016 Emtec, Inc. Backup (Custom LCM File) o Similar to On-Prem – Create a custom LCM export to execute o Select the Applications you want to export data/object from o Once finished click export o All selections you have made (for all applications) will be exported o Take note of the name of the snapshot (i.e. PLANDEMO_NoData) as you will use this later in EPMAutomate
  • 19. 19 CONFIDENTIAL | © 2016 Emtec, Inc. Backup (Custom LCM File) o Similar to On-Prem – Create a custom LCM export to execute o Change %HP_BKUP_FILE% in our “Global” variables to the new Snapshot name
  • 20. 20 CONFIDENTIAL | © 2016 Emtec, Inc. Clear Data MaxL o Reset Data Function in MaxL to clear whole cube  Typically done to save time on restructure & defragment the cube o Run a clear calc script to clear only current month (or all actual months) EPM Automate o We cannot clear the entire cube in an automated fashion o runbusinessrule EPM Automate function to clear only current months (or all actual months)
  • 21. 21 CONFIDENTIAL | © 2016 Emtec, Inc. Clear Data –Without RTP’s o You can run business rules (remember, no ESB Calc Scripts!) either with or without Run-Time Prompts. o epmautomate runbusinessrule <PlanType> <RuleName>  If you have the same rule name in two plan types, you need to specify which plan type to run it on. Otherwise, it is optional
  • 22. 22 CONFIDENTIAL | © 2016 Emtec, Inc. Clear Data –With RTP’s o Identical to running it without RTPs, we just include them at the end. o You can specify multiple RTPs for a single rule o epmautomate runbusinessrule <PlanType> <RuleName> <RTPs>  RTPs are entered after the rule, space delimited
  • 23. 23 CONFIDENTIAL | © 2016 Emtec, Inc. Rulesets o I have tried several different methods to call a rule set. o Within the confines of EPMAutomate, I have not identified a way to accomplish this. o When debugging, the “runbusinessrule” function appears to be looking for the job name you specified with the type “RULE” only. o Rulesets however are of the type “RULESET” o This can be accomplished using the REST API.
  • 24. 24 CONFIDENTIAL | © 2016 Emtec, Inc. Metadata Load & Refresh Outline Load Utility (OLU) o Call the OLU from the planning server to load data o Use the “/c” switch to perform a refresh on last import EPM Automate o Setup an import job  Define each dimension to be imported o When saving the job check “Refresh Database if Import Metadata is successful” o Note: Will import in the sort order specified in file!
  • 25. 25 CONFIDENTIAL | © 2016 Emtec, Inc. Metadata Load & Refresh o Nightly Import of Metadata o Multiple CSV files in one ZIP Archive  Account,Customer, Department, Employee, Entity o Name the files to end with _<Dimension>.csv  Zip ArchiveTakes Precedence over what is Defined in Import Rule.  CASE SENSITIVE! o Metadata Import Sequence:  Delete Old File (DailyMetadata.zip)  Combine All Files into a Zip Archive  Upload New File  Import Metadata
  • 26. 26 CONFIDENTIAL | © 2016 Emtec, Inc. Metadata Load & Refresh – Delete Old File o There is no “Overwrite” option so we need to remove the existing one before o Note that we do not do any sort of “error trapping” here.  In case someone already deleted the file or moved it. o If this process fails to delete the file the next step will fail anyway.
  • 27. 27 CONFIDENTIAL | © 2016 Emtec, Inc. Metadata Load & Refresh – Zip Files o Can upload multiple files at once as a Zip Archive o You can specify the specific dimension in each file name using the convention: “_<Dimension>.csv”  Note that it is Case Sensitive  Otherwise you can specify the filename in the Import Job
  • 28. 28 CONFIDENTIAL | © 2016 Emtec, Inc. Metadata Load & Refresh – Upload o Upload the same filename every night  i.e.The one you just deleted the step before. o Archive in the filesystem, not in the cloud. o epmautomate uploadfile “<FilePathToZipArchive>”
  • 29. 29 CONFIDENTIAL | © 2016 Emtec, Inc. Metadata Load & Refresh – Import Metadata o Create a Metadata Import Job  Simplified Interface -> Console -> DimensionsTab -> Import -> Create  Specify Import File Name & Delimiter
  • 30. 30 CONFIDENTIAL | © 2016 Emtec, Inc. Metadata Load & Refresh – Import Metadata o Now that the file is uploaded we can Import o epmautomate <ImportJob> <FileName>  If you upload each individual .csv specified in import job into the inbox, you do not need to include the filename  <FileName> in our case is the zip file we just uploaded.
  • 31. 31 CONFIDENTIAL | © 2016 Emtec, Inc. Load Data MaxL & EAS Load Rule o If we did a full clear we would be loading the Level Zero data back into the system o Load rule to load current month (or all actual months) EPM Automate o Upload File to Inbox o Three Options to Load:  Native ESB Load  FDMEE  HP Outline Load Utility o Follows same process as Metadata  Delete Old File  Zip File(s)  Upload Zip  Run Import Job
  • 32. 32 CONFIDENTIAL | © 2016 Emtec, Inc. Load Data Native Essbase Load o EPMAuto Function: importdata o Create an Import Data Job o .TXT File Only  Space orTab Delimited o Must be in Metadata Format  Contains Prefix/Suffix etc o Overwrite Only o Exits on a Single Error o Can doWFP Loads “more easily” FDMEE o EPMAuto Function: rundatarule o Requires More Effort to Setup o Can handle Mappings / Prefix / Suffix / Ignores etc o Can Perform Load Functions:  Merge  AddTo  Subtract From  Overwrite (Replace) o Cannot do generalWFP loads (i.e. accounts in the columns)
  • 33. 33 CONFIDENTIAL | © 2016 Emtec, Inc. Load Data – Native Essbase Load o The following is the most simple way to build the file (IMO).  Specify all dimensions in except for the data columns  First row contains the column headers for the data columns  Could be Periods or Accounts or any dense dimension.  Period (Header), Account (“A61100”) and Currency (“Local_Currency”) are dense o Create a data import rule:  Simplified Interface -> Console  -> Actions -> Import Data -> Create
  • 34. 34 CONFIDENTIAL | © 2016 Emtec, Inc. Load Data – Native Essbase Load o The job will load all files contained in the ZIP Archive o File should be in the planning inbox o epmautomate importdata <ImportJob> <File>
  • 35. 35 CONFIDENTIAL | © 2016 Emtec, Inc. Load Data – FDMEE (Data Management) o Create (in order):  Source System  Target Application  Import Format  Data Load Rule  Data Load Mappings for each Dimension o Import Data File into the FDMEE Repository.Technically you do not have to import into this folder. o epmautomate uploadfile <SourceFile> <TargetFolderPath>
  • 36. 36 CONFIDENTIAL | © 2016 Emtec, Inc. Load Data – FDMEE (Data Management) o Execute the Data Rule that you created in the last step o Epmautomate rundatarule <RuleName> <StartPer> <EndPer> <Import_Mode> <Export_Mode> <DataFile>  <StartPer> = Starting Period  Use the “Period Name” in the Period Mappings  <EndPer> = Ending Period (If using single period this will = StartPer)  <Import_Mode> = Append / Replace / None  <Export_Mode> = Store_Data / Add_Data / Subtract_Data / Replace_Data / None
  • 37. 37 CONFIDENTIAL | © 2016 Emtec, Inc. Aggregate & Calculate MaxL / Business Rules o Use MaxL for simple Essbase calculation scripts. o CalcMgrCmdLineLauncher.cmd  Can use RunTime Prompts EPM Automate o runbusinessrule EPM Automate Function  Can use RunTime Prompts o Identical to the Clear Process
  • 38. 38 CONFIDENTIAL | © 2016 Emtec, Inc. Move Data to Reporting Application MaxL / HP Utility o Use MaxL to:  Call an Export Calc Script  Clear Data inTarget Cube  Load Data o Map a reporting application  Use RunData.cmd HP Utility EPM Automate o Export/Import process can be accomplished using Business Rules or Jobs o Map a reporting application  Use runplantypemap EPM Automate function
  • 39. 39 CONFIDENTIAL | © 2016 Emtec, Inc. Move Data to Rptg App – Export/Import o Two Options for export:  Create a business rule using DATAEXPORT  DATAEXPORT "File" " " "/u03/lcm/MoveData.txt";  Use a space as a delimiter  Create an export Job o Both can be loaded using a native Essbase Import Job o Both export to the Planning Inbox
  • 40. 40 CONFIDENTIAL | © 2016 Emtec, Inc. Move Data to Rptg App – PlanType Map o Ran on-prem to look at App Log to determine what is happening..  It runs an export & import o If you only need to move the data (i.e. don’t need to run any calculations before) this is a simpler option.  This will export dynamic dense members! o Administration -> Map Reporting Application  Fill out all required sections. o Epmautomate runplantypemap <JobName> <cleardata=true/false>
  • 41. 41 CONFIDENTIAL | © 2016 Emtec, Inc. Other Functions o Refresh Cube  epmautomate refreshcube o Cycling Services  epmautomate resetservice o Copy PRD to DEV (Copy Snapshot From Instance)  Login to target instance, i.e. DEV (your “test” instance)  All Parameters refer to the source instance, i.e. PROD.  epmautomate copysnapshotfrominstance <SnapshotName> <User> <Pass/File> <URL> <Domain> o Provision Report  Epmautomate provisionreport <ReportName.csv> And finally a report so many have asked for…
  • 42. 42 CONFIDENTIAL | © 2016 Emtec, Inc. User Audit Report o epmautomate userauditreport <FromDate> <ToDate> <ReportName>  Data Format: “YYYY-MM-DD”
  • 43.
  • 44. Q & A Thank You

Editor's Notes

  1. Working Code will be used – everything was tested to ensure it is working, but this is still sample code.
  2. Working Code will be used – everything was tested to ensure it is working, but this is still sample code.
  3. Working Code will be used – everything was tested to ensure it is working, but this is still sample code.
  4. Working Code will be used – everything was tested to ensure it is working, but this is still sample code.
  5. Working Code will be used – everything was tested to ensure it is working, but this is still sample code.
  6. Working Code will be used – everything was tested to ensure it is working, but this is still sample code.
  7. Working Code will be used – everything was tested to ensure it is working, but this is still sample code.