65
Making Your Life Easier with the Planning Utilities Keith Amann Monsanto Monsanto

PlanningUtils

Embed Size (px)

Citation preview

Page 1: PlanningUtils

Making Your Life Easier with the Planning Utilities

Keith AmannMonsantoMonsanto

Page 2: PlanningUtils

Some of you may be asking…• There are Planning Utilities?

• Yes!

• So where is all of the documentation? Spread pthroughout the Admin guide

Page 3: PlanningUtils

Agenda• About Monsanto• Understanding the Planning Utilitiesg g• Lessons Learned• Q&A• Q&A

Page 4: PlanningUtils

ABOUT MONSANTOMaking Your Life Easier with the Planning Utilities

ABOUT MONSANTO

Page 5: PlanningUtils

• Monsanto is an agricultural company. We apply innovation and technology to help pp y gy pfarmers around the world produce more while conserving more. We help farmers g pgrow yield sustainably so they can be successful, produce healthier foods, better , p ,animal feeds and more fiber, while also reducing agriculture's impact on our g g penvironment.

5

Page 6: PlanningUtils

Our business is structured in two segments:• Seeds and Genomics

The Seeds and Genomics segment consists of the company's global seeds and traits business, and genetic technology platforms - including biotechnology, breedingtechnology platforms including biotechnology, breeding and genomics.

• Agricultural ProductivityThe Agricultural Productivity segment consists primarily of crop protection products and residential lawn andof crop protection products and residential lawn-and-garden herbicide products 6

Page 7: PlanningUtils

UNDERSTANDING THEMaking Your Life Easier with the Planning Utilities

UNDERSTANDING THE UTILITIES

Page 8: PlanningUtils

Where are the Utilities?• Most can be found in your Planning install

directory under the bin folder• HYPERION_HOME/products/Planning/bin

Page 9: PlanningUtils

PasswordEncryption.cmd

Page 10: PlanningUtils

Suppressing Password PromptsP d b d h i tiliti• Passwords can be suppressed when running utilities– Helpful when you don’t want to stay up until 2am to launch a

process– Optional

• PasswordEncryption utilityCreates a file that stores the password in encrypted form– Creates a file that stores the password in encrypted form

– Each password file contains one password– You choose the directory when running the utility

• After the password file is created, you can use the –f:passwordfile option as the first parameter in the command linecommand line– Will skip the password prompt and use the password from the

encrypted file

Page 11: PlanningUtils

PasswordEncryption.cmd• Windows

– PasswordEncryption.cmd nameandpathofpasswordFile

• Unix– PasswordEncryption.sh nameandpathofpasswordFile

Page 12: PlanningUtils

BroadCastMessage.cmd

Page 13: PlanningUtils

BroadCastMessage.cmd• Communicate text message to all Planning

users currently logged into the application– Ask folks to log out; communicate upcoming

maintenance– Only appears in Planning

• Cmd is an alternative to Web client• Messages can be scheduled (using third

party scheduler)p y )

Page 14: PlanningUtils

BroadCastMessage.cmd• Launch the broadcastmessage.cmd utility

Broadcastmessage.cmd –f:passwordfile, server_name, application_name, username, messagemessage

Broadcastmessage.cmd epm111server, entbud cbarkley Save your work entbud, cbarkley, Save your work now because in 5 minutes I’m kicking you out of the system.g y y

Page 15: PlanningUtils

ExportSecurity.cmd

Page 16: PlanningUtils

ExportSecurity.cmd• Export Planning access permissions to the

SecFile.txt file– Exports security for members, data forms,

data form folders, task lists, Calculation M b i l C l l ti MManager business rules, Calculation Manager business rules foldersCan export users or groups (but not both)– Can export users or groups (but not both)

• You can then export / import access i i li tipermissions across applications

Page 17: PlanningUtils

ExportSecurity.cmd• ExportSecurity.cmd [-f:passwordFile] /A=appname,/U=username, [/S=searchCriteria|/S_USER=user|/S_GROUP=g| _ | _ group], [/S_MEMBER=memberName|/S_MEMBER_ID=memberNameame|/S_MEMBER_D=memberName|/S_MEMBER_IC=memberName|/S_MEMBER_C=memberName],[/DELIM=delim] , [/DEBUG=true|false],[/TO_FILE=fileName],[/HELP=Y]

Page 18: PlanningUtils

ExportSecurity.cmd – Optional Parameters

• /S=Searchcriteria (search for a user or group)• /S_USER=user (specify a user)• /S_GROUP=group (specify a group)_ g p ( p y g p)• /S_MEMBER=membername (specify a member)• /S_MEMBER_ID=membername (specify a member and its

descendants)descendants)• /S_MEMBER_D=membername (specify a member’s descendants)• /S_MEMBER_IC=membername (specify a member and its children)

/S MEMBER C b ( if b ’ d d t )• /S_MEMBER_C=membername (specify a member’s descendants)• /DELIM=delim (specify a delimiter)• /DEBUG= true/false• /TO_FILE = (specify the path to the SecFile.txt (• /HELP = Y

Page 19: PlanningUtils

ExportSecurity.cmd• Exportsecurity.cmd –f:passwordfile

/A=entbud, /U=admin

• Exportsecurity.cmd –f:passwordfileExportsecurity.cmd f:passwordfile /A=entbud, /U=admin,/TO FILE=D:\\Hyperion\\Produc/U admin,/TO_FILE D:\\Hyperion\\Product\\Planning\\bin\\Sales,/S_MEMBER_ID=Sales/DELIM=;ales/DELIM ;

Page 20: PlanningUtils

ExportSecurity.cmd• Can’t export access permissions to task

lists for administrators– But you can manually add those records into

the file for future importing

Page 21: PlanningUtils

SecFile.txt

Page 22: PlanningUtils

Artifacts• SL_FORM• SL_COMPOSITE• SL_TASKLIST• SL CALCRULE• SL_CALCRULE• SL_FORMFOLDER• SL_CALCFOLDER

Page 23: PlanningUtils

ImportSecurity.cmd

Page 24: PlanningUtils

ImportSecurity.cmd• Load access permissions for users and

groups from a text file• Imports security for members, data forms,

data form folders, task lists, Calculation Manager business rules, Calculation Manager business rules folders

• Overwrites existing permissions• SL CLEARALL clears existing access• SL_CLEARALL clears existing access

permissions

Page 25: PlanningUtils

ImportSecurity.cmd• All users, groups and objects must be

defined in the application• SecFile.txt is the file name and must be in

the bin folder• Available delimiters for the secfile.txt:

– Comma tab semi-colon pipe colon spaceComma, tab, semi colon, pipe, colon, space– Comma is default

• Verify results in importsecurity log• Verify results in importsecurity.log

Page 26: PlanningUtils

ImportSecurity.cmd• ImportSecurity.cmd [-f:passwordFile] “appname,username,[delimiter],[RUN_SILENT],[SL_CLEARALL]”

• ImportSecurity.cmd ImportSecurity.cmd “entbud,admin,SL_TAB,1”

Page 27: PlanningUtils

ProvisionUsers.cmd

Page 28: PlanningUtils

ProvisionUsers.cmd• Synchronizes Planning users, groups and

roles in Shared Services with a Planning application and Essbase

• Alternative to refreshing security filters• ProvisionUsers [-f:passwordFile] f:passwordFile] /ADMIN:adminName /A:appName [/U:user1[;user2;user3]] [/R:n][/U:user1[;user2;user3]] [/R:n]

Page 29: PlanningUtils

ProvisionUsers.cmd• ProvisionUsers /ADMIN:admin/A:entbud – Syncs all users for entbud application

• ProvisionUsers /ADMIN:admin/A:entbud /U:cbarkley /R:60/A:entbud /U:cbarkley /R:60– Syncs user cbarkley in entbud every 60

minutesminutes

Page 30: PlanningUtils

ProvisionUsers.cmd• /U: - Specifies the users to sync• /R: - Specifies the interval in minutes for

the sync to run (no argument runs the sync once)

Page 31: PlanningUtils

UpdateUsers.cmd

Page 32: PlanningUtils

UpdateUsers.cmd• If you move users and groups, their

identities or SIDS change– Change authentication– Users, groups or organization units are

moved in an external provider– Migrate application from one environment to

an another with different Shared Services instances

M id i i b Pl i d• Must sync identities between Planning and Shared Services

Page 33: PlanningUtils

Steps to Refresh1. Run the UpdateNativeDir utility to update

user and group identities in Shared Services– UpdateNativeDir and its documentation are in

the HYPERION_HOME/Common/Utilities/SyncOpenLDAPUtility directoryenLDAPUtility directory.

2. Run the UpdateUsers.cmd to update SIDs i Pl i ith th h i Sh din Planning with the changes in Shared Services

Page 34: PlanningUtils

UpdateUsers.cmd• updateusers.cmd [-f:passwordFile] serverNameadminName applicationName

• Check out results in UpdateUsers.log in the bin directorythe bin directory

Page 35: PlanningUtils

UserMigrUtil.cmd

Page 36: PlanningUtils

UserMigrUtil.cmd• Used to delete the underscore users when

you were migrating from Planning 3.5 or 4x

Page 37: PlanningUtils

HspUnlockApp.cmd

Page 38: PlanningUtils

HspUnlockApp.cmd• Unfortunately most of you know this utility• Planning apps can become locked (gasp)g (g )• This utility clears the HSP_Lock table• Must be run from the Planning server• Must be run from the Planning server

• HspUnlockApp.cmd[-f:passwordFile] servernameusername appname

Page 39: PlanningUtils

FormDefUtil.cmd

Page 40: PlanningUtils

FormDefUtil.cmd• Move data forms between Planning• Move data forms between Planning

applicationsE t i t f d fi iti t d• Export or import form definitions to and from an XML file

• -all allows you to import / export all forms

• formdefutil [-f:passwordFile]import|exportfilf:passwordFile]import|exportfilename|formname|-all server name user name application

Page 41: PlanningUtils

FormDefUtil.cmd• Import a form definition

– FormDefUtil.cmd import c:\Hyperion\products\Planning\bin\form1.xml localhost admin entbud

• Export a form definition– FormDefUtil.cmd export Form1 localhost admin entbud

• Check out results in FormDefUtil.log

Page 42: PlanningUtils

CubeRefresh.cmd

Page 43: PlanningUtils

CubeRefresh.cmd• Refresh the Planning application via command

lineP shing eb client changes to Essbase database– Pushing web client changes to Essbase database

• CubeRefresh cmd [ f:passwordFile] • CubeRefresh.cmd [-f:passwordFile] /A:application_name /U:user_name [/C|/R] /D [/ |/ ] /[/F[S|V]][/RMIPORT:rmi_port] [/L] [/DEBUG]

• CubeRefresh.cmd –f:passwordFile /A:entbud /U:cbarkley /R /D /FS

Page 44: PlanningUtils

CubeRefresh.cmd/C C t th d t b tli• /C - Creates the database outline

• /R – Refreshes the database outline• /D – Specify the database during create or refresh• /F – Refreshes all security filters• /FS – Generate shared member security filters• /FV – Validate security filters but don’t save/FV Validate security filters but don t save• /FSV – Validate the shared member security filters• /RMIPORT – Specify an RMI port number if is different than default

/ L D f lt ti ( ti t l ll t )• /-L – Default option (connecting to an app server locally or remote)• /L – Create or refresh without connecting to the application server• /DEBUG – Specify detailed error messages

Page 45: PlanningUtils

CubeRefresh.cmd• Make sure the application is not locked• Must be run on the Planning serverg• Take same cautions as when refreshing

the application through the web clientthe application through the web client

Page 46: PlanningUtils

DeleteSharedDescendants.cmd

Page 47: PlanningUtils

DeleteSharedDescendants.cmd• Delete shared members that are

descendants of a given member• DeleteSharedDescendants [-f:passwordFile] servernameusername application “member name”

• DeleteSharedDescendants -f:passwordFile epm111server f:passwordFile epm111server cbarkley entbud “Southwest Region”

Page 48: PlanningUtils

DeleteSharedDescendants.cmd• You might see “java.rmi” or “port already in

use” errors but they do not affect the functionality of the utility

• Make sure the Manage Database task is not open

• To view results, check out the followingTo view results, check out the following logs in the bin directory– DeleteSharedDescendants log (status)DeleteSharedDescendants.log (status)– DeleteSharedDescendantsExceptions.log

(errors)

Page 49: PlanningUtils

MemberFormulaSync.cmd

Page 50: PlanningUtils

MemberFormulaSync.cmd• Syncs the formulas in the Planning

application with Essbase• MemberFormulaSync /A:appname

Page 51: PlanningUtils

OutlineLoad.cmd

Page 52: PlanningUtils

Outline Load Utility• Used to load metadata or data for Account, Period, Year,

Scenario, Version, Currency, Entity, user-defined dimensions, attributes, UDAs and exchange ratesdimensions, attributes, UDAs and exchange rates

• Steps1. Set the DIRECT_DATA_LOAD AND

DATA LOAD FILE PATH t i bl if l di d tDATA_LOAD_FILE_PATH system variables if loading data2. Create the load file for each dimension and/or data set to load3. Test the load files4. Run the utility

Page 53: PlanningUtils

SortMember.cmd

Page 54: PlanningUtils

SortMember.cmd• Sort dimension members after loading to

Planning• SortMember [-f:passwordFile] servername username application member children|descendantsascend|descend

Page 55: PlanningUtils

TaskListDefUtil.cmd

Page 56: PlanningUtils

TaskListDefUtil.cmd• Export or import task list definitions to or from an

XML fileU d t t k li t b t li ti• Used to move task lists between applications

• TaskListDefUtil [-f:passwordFile] import|exportFILE_NAME|TASK_LIST_NAME| all SERVER NAME USER NAME E|-all SERVER_NAME USER_NAME APPLICATION

Page 57: PlanningUtils

CalcMgrCmdLineLauncher.cmd

Page 58: PlanningUtils

CalcMgrCmdLineLauncher.cmdL h b i l l t t d ith th• Launch business rules or rules sets created with the Calculation Manager

CalcMgrCmdLineLauncher cmd [-f:passwordFile] CalcMgrCmdLineLauncher.cmd [ f:passwordFile] /A:appname /U:username /D:database [/R:business rule name | /S:business

l t ] /F ti t fil ruleset name] /F:runtime prompts file [/validate]

CalcMgrCmdLineLauncher.cmd -f:passwordFile g p/A:entbud /U:cbarkley /D:plan1 /R:MarketAgg /F:RTPValues.xml

O b t h t• One space between each parameter

Page 59: PlanningUtils

CalcMgrCmdLineLauncher.cmd• Can run for a business rule or ruleset but not

both/ lid t h k th d t f th• /validate checks the command syntax for the utility

Not the business rule or ruleset syntax– Not the business rule or ruleset syntax– Errors are displayed on console or written to Calc

Manager log fileg g• Runtime prompts file is only required when

business rule or rule set contains run time prompts

Page 60: PlanningUtils

Run Times Prompt File• Must create a file containing the runtime prompt

valuesT• Two ways– Specify the name of the runtime prompt values file

that you generated on the RunTimesPrompt pagethat you generated on the RunTimesPrompt page– Create runtime prompt ASCII file

• On separate lines, lists each runtime prompt and its value• Separate name and value with ::• MarketRTP:: East• Save the file in the Planning bin directory or specify full pathSave the file in the Planning bin directory or specify full path

when running the utility

Page 61: PlanningUtils

LESSONS LEARNED FROMMaking Your Life Easier with the Planning Utilities

LESSONS LEARNED FROM MONSANTO

Page 62: PlanningUtils

System 9 Utilities Lessons Learned• Shared Services Utilities

– CSSImport.bat / CSSExport.batp p• Great tool to create application security from a file and to migrate security through our environments.• Include the source environment’s native object SID’s when importing in target environments. Keeping SID’s

identical in all environments simplifies application migration if you decide to do a schema copy to move a planning application.

• Modify the export.properties file to use filters to select specific objects to export. This will cut down on editing of the export.csv file.

export.user.filter=none@Native Directoryexport.group.filter=PLAN_OT*@Native Directoryexport.provisioning.apps=(Dev Planning Applications=PLAN_OT)

• Planning Utilitiesg– ImportSecurity.cmd / ExportSecurity.cmd

• Used to create security on dimension members from a text file.• The application owner account must be used with this utility in 9.3.1• For a full security refresh use the SL_CLEARALL switch to remove any security then re-apply the security

– importsecurity.cmd "appname,appOwnerAcct,password,,,SL_CLEARALL“

• Before adding security the groups must be defined in SS

– ProvisionUsers.cmd• We use it to clean up dead accounts. When a user leaves the company his account information can be

orphaned in the Planning tables. When this utility is run any user information not found in Shared Services is d I di id l li ti b t t dremoved. Individual applications can be targeted.

provisionusers.cmd /ADMIN:%user% /PASS:%password% /A:%appname%62

Page 63: PlanningUtils

Utilities Lessons Learned Continued• FormDefUtil.cmd

– Used to export/import form definitions.– Good for migrating forms.– For existing forms you must answer positively that you want to overwrite them.

We created a low tech solution to this problem by creating a file with a bunch of y’s we pipe into the utility.

ImportForms.batset /p user=Username?set /p password=Password?set /p appname=Appname?call FormDefUtil.cmd import -all servername %user% %password% %appname% >> formimport.log < answerY.txttimeout /t 10

answerY txtanswerY.txtyyy….….

Page 64: PlanningUtils

Smart View Setup ToolsSmart View Connection Creator Macro

Select Connection(s)ProductionTestTestDevelopment

Click Create buttonClick Create buttonmacro will configure database connectionsfor you

6464

Page 65: PlanningUtils

Thanks for your timeThanks for your time.

Keith AmannMonsantoMonsanto