Section 1- Get the Command file to call the MAXL and pass parameters to the calc and the partition

IMPORTANT NOTES/ GOTCHYAS:

A)APR IS THE MONTH

B)DON’T FORGET TO CHECK THAT YOU HAVE A RATE IN THE RATE TAB OF YOUR RETRIEVE SHEET!

Use the following Excel file for retrieves and submissions:

1)Make sure you have money in the “Input” Currency member for Brazil. Also, clear the USD member but you may need to leave a 0 or 1 or something in that cell due to Essbase’s lovely inability to create missing blox. Maybe that was a cute quirk when we were first dating. But I think it may have lost its cuteness after all these years!

2)Make sure you have a conversion rate

3)Check ASO a the following POV and make sure it is clear (which this screenshot is not):

4)Run MAXL_DEV.cmd from command line. Pass Brazil as a parameter:

  1. Open Command Prompt:
  2. Type (or copy) : Cd D:\Apps\Oracle\Middleware\EPM\user_projects\epmsystem1\EssbaseServer\essbaseserver1\bin
  3. Type (or copy) :MAXL_DEV.cmd "Brazil"
  4. It should look like this:

5)Check ASO to make sure that the conversion took place and that it was pushed to ASO. Use same retrieve as #3 above.

Section 2 – Call the CMD (maxl) script from FDMEE

Data load directory configured to be c:\classfiles

Load file is :

“Custom” Load rule configured on the “Target Application” –

Here is Load Rule called “Custom” in EAS :

1)Configure FDMEE to call Cmd (maxl) script after the Data Load by putting a Jython script in the “AftLoad” event.

The script is here :

2)Login to Workspace.

  1. Epm_admin
  2. Passw0rd (that is a zero, not a letter O)

3)Navigate > Administer > Data Management - to get to FDMEE

4)Setup > Script Editor >

  1. Choose “Demo-Basic” as Target app
  2. Choose “Jython” as Technology
  3. Click on AftLoad event and paste in the contents of the file pictured above (in step #1)

5)Workflow > Data Load Workbench >

6)Click on Import Fish > Hit OK

7)Confirm your data was brought into FDMEE (the staging area prior to load to Essbase)

8)Click on Export Fish > Hit OK

9)Check the log (Click on Process Details in bottom left)

10)Validate the data - (Use Excel retrieve sheet mentioned above)

  1. Be sure that Input was converted to USD
  2. Be sure that partition was pushed to ASO

Extra Credit

Rerun the utility to load data to a new “entity” / market (i.e. France), convert for currency and push to ASO

Advanced Exercise

Add logic to wrap “entities” / markets (i.e. Brazil) in double quotes in DOS so that they have double quotes in the partition script in MAXL. This would support entities with spaces in them. This requires some painful DOS coding so proceed at your own risk – or migrate to Linux ;-)

Use this location :Loc_DemoBasic

EAS

Install and config

To make it easy, I recommend putting all scripts in the following directory (or the equivalent for your install) so that they have access to the MAXL shell :

D:\Apps\Oracle\Middleware\EPM\user_projects\epmsystem1\EssbaseServer\essbaseserver1\bin

This is how you could call the CMD file to make sure that it runs standalone before you try to call it from an FDMEE Jython script :

To test the CMD file :

D:\Apps\Oracle\Middleware\EPM\user_projects\epmsystem1\EssbaseServer\essbaseserv

er1\bin>MAXL_DEV.cmd "France","Switzerland","China"

Simple MAXL working in c:\temp – no double quotes :

cd C:\Oracle\Middleware\user_projects\epmsystem1\EssbaseServer\essbaseserver1\bin

echo %1

set DOSVarApostrophe='

@echo on

setlocalenabledelayedexpansion

set argCount=0

for %%x in (%*) do (

set /A argCount+=1

set "argVec[!argCount!]=%%~x"

)

rem echo Number of processed arguments: %argCount%

for /L %%i in (1,1,%argCount%) do (

IF %%igtr 1 (set comma=,)

rem echo %comma%

rem set string=%string%%!argVec[%%i]!

call set tempString=!argVec[%%i]!

call set "LongString=%%LongString%%%%comma%%%%tempString%%"

rem echo "String"::::::%string%

)

echo %LongString% > StringOutput.txt

rem - set into dos variable. the maxl will pull it from there and set it as a subvar.

set DOSVarEntity="%LongString%"

echo %DOSVarEntity% > c:\Apps\Oracle\Middleware\EPM\user_projects\epmsystem1\EssbaseServer\essbaseserver1\bin\output.txt

set varArea=,@LEVMBRS("Currency","Lev0,Currency"),@LEVMBRS("Year","Lev0,Year"),@LEVMBRS("Product","Lev0,Product"),@LEVMBRS("Accounts","Lev0,Accounts")@LEVMBRS("Product","Lev0,Product"),@LEVMBRS("Accounts","Lev0,Accounts"),"Input","USD","BegBalance","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","Actual"'

set str=%DOSVarEntity%

rem echo.%str%

for /f "useback tokens=*" %%a in ('%str%') do set str=%%~a

rem echo.%str%

set test=%DOSVarApostrophe%%str%%DOSVarArea%

rem echo %test%

call "C:\Oracle\Middleware\user_projects\epmsystem1\EssbaseServer\essbaseserver1\bin\startMaxl.bat" "C:\Oracle\Middleware\user_projects\epmsystem1\EssbaseServer\essbaseserver1\bin\STDFXFULL.MSH"

copy c:\Apps\Oracle\Middleware\EPM\user_projects\epmsystem1\EssbaseServer\essbaseserver1\bin\Ess_STDFX_MAXL.log c:\Apps\Oracle\Middleware\EPM\user_projects\epmsystem1\EssbaseServer\essbaseserver1\bin\Ess_STDFX_MAXL3.log