Upload
kyupid4u
View
215
Download
0
Embed Size (px)
Citation preview
8/8/2019 What Essbase Can't Do
1/23
WHAT ESSBASE DOESNT DO(TODAY)
The Cubegeeks Toolkit
8/8/2019 What Essbase Can't Do
2/23
Agenda Intro
Data Management Cubegeeks Toolkit
The Welds
Object Versioning
Currency
ExternalizationNotifications
Fake Data Generation
8/8/2019 What Essbase Can't Do
3/23
Michael Bowen Sr. Mgmt.Consultant
@ Rolta-TUSC13th Year with
Hyperion Products
3 Presentations atSolutions
Microsoft Detour
aka Cubegeek Hair
8/8/2019 What Essbase Can't Do
4/23
Goals of Data Management Direct and manage the flow of data into the Hyperion
applications
Provide a mechanism for understanding the state of theHyperion application at any time.
Provide the ability to recreate a particular data event.
Integrate, synchronize and automate all Hyperion back-end processes with IT.
Leverage best aspects of relational & multidimensional
databases + scripting. Provide a logical framework for extending and enhancing
Hyperion applications.
8/8/2019 What Essbase Can't Do
5/23
Backend Functions: Two Cycles Data Management
CycleData Registration
Data Cleansing
Data MovementData Processing
(Essbase Cycle)
Data ArchivingData Recovery
Essbase Production
CycleExport
Clear
BuildLoad
Calc
Report
8/8/2019 What Essbase Can't Do
6/23
The Cubegeeks Toolkit SQL
UltraEdit32 Blat / mailx
Hashcalc Blogger
Audacity Outlex / AppMgr
Perl
V5.8.8 Build 822 7Zip
V4.32
7za CLI
PasswordSafe
WS_FTP Procexp
8/8/2019 What Essbase Can't Do
7/23
The Cubegeeks Backend ~/essbase/batch
logs data
Currentinbucket
archive mdata
scripts ex ort
8/8/2019 What Essbase Can't Do
8/23
The Welds Versioning of Objects
Externalization ofCurrency Conversion
Backend Notifications
Fake Data Generation
8/8/2019 What Essbase Can't Do
9/23
Versioning Why?
Development RollbackRecovery Pairing
Data Run Enumeration
8/8/2019 What Essbase Can't Do
10/23
Versioning What
.ver fileVer.pl
Version.pl
Tools
Perl
back:Build 029
20090522-125028
8/8/2019 What Essbase Can't Do
11/23
Versioning Code Fragment# cd ${scrdir}
system ("ver.pl back.ver");
# get new build number
# bnum=`head -1 ${appid}.ver$verfile = "back.ver";open (VF, "< $verfile");
$ver = ;chop $ver;$x = substr($ver,-3);
print "saw version $x\n";close VF;
print OUTLOG "$t : $appid version $x \n";$fspec="back_build".$x."_objects_"."$env".".zip";
$cmd = "7za a -tzip $fspec *.dat *.sql *.txt *.pl *.bat *.lst *.msh *.csv back.ver";print "executing $cmd\n";system ($cmd);
$cmd = "move $fspec $expdir";system ($cmd);
8/8/2019 What Essbase Can't Do
12/23
Notifications Why
Nobody Subscribes,
Everybody Asks Diagnostics
What
Logs Email
Blog
Tools Perl
Blat
8/8/2019 What Essbase Can't Do
13/23
Notifications Code Fragmentif (not -z $rejects)
{
print "rejects found.\n";
print OUT "GL RUN $tline:REJECTS\n";
#email notification
$subject = '"GL RUN: Load Rejects"';
$sendfile = $rejects;
¬ify ($sendfile, $subject);
}
8/8/2019 What Essbase Can't Do
14/23
Blat Callsub notify {
local $outfile = $_[0];
local $subject = $_[1];
$rfile = "d:\\hyperion\\essbase\\batch\\scripts\\recip.lst";$sender = "michael.bowen";
$senderpw = "amazon.com123";
$cmd = "c:\\usr\\bin\\blat $outfile -tf $rfile -subject $subject -u$sender -pw $senderpw";
system ($cmd);
}
8/8/2019 What Essbase Can't Do
15/23
8/8/2019 What Essbase Can't Do
16/23
Currency Externalization
How
SQL ServerPerl Code Generation
Fetch & StoreVersion
Translate
8/8/2019 What Essbase Can't Do
17/23
Currency Code Fragment
Generated SQL
INSERT INTO [HRSource].[dbo].[FX]
([currency],[stamp], [year],[to_usd])
VALUES ('AUD','FX:023:20090318-071501','2009',0.63836);
INSERT INTO [HRSource].[dbo].[FX]
([currency],[stamp], [year],[to_usd])
VALUES ('AUD','Now','2009',0.63836);
8/8/2019 What Essbase Can't Do
18/23
Fake Data Generation Why
OptimizationValidation
8/8/2019 What Essbase Can't Do
19/23
Fake Data Tools
PerlUltraEdit32
Datgen.pl
Pieces & Parts
DatgenDim Files
INX file
8/8/2019 What Essbase Can't Do
20/23
Configuring INX Six Fields
DimDim name
Dim Count
Curve TypePerm Flag
File name
One Measure
dim0:"Costs":50:1:1:costs.txt
dim1:"Teams":50:3:1:teams.txt
dim2:"Parts":500:2:1:parts.txt
dim3:"Options":3:3:1:options.txt
dim4:"Scenario":3:3:1:scen.txt
8/8/2019 What Essbase Can't Do
21/23
Sample Dim Files
Options
Base OptionOption AOption B
Parts
69-73484-1251A2160-269-54631-1250055-9
1544400-33910031-1053910036-101UA538551-3
65-44631-1OH6740281E32--O6347466087
8/8/2019 What Essbase Can't Do
22/23
Code Fragment
if ($ndims==5) {for ($i=0; $i
8/8/2019 What Essbase Can't Do
23/23
Q&A