Sunday, 19 September 2010

11.1.2 Planning – Managing planning unit hierarchies Part 3

In the last blog I went over loading a planning unit hierarchy directly through planning, today I am going to through the next method and that is the outline line utility.

The outline line utility appeared in the first release of version 11, even though a couple of versions late in my opinion it has turned out to be the most useful utility for classic planning, if you need to quickly load metadata and you can generate a fixed format file then it can save a lot of time, especially if you are prototyping.

Using the outline utility uses the same principal as the other methods, same source file template, just this time command line driven.



The outline loader utility used to be available in the planning\bin directory, in this release to keep you on your toes it has moved, if it is a default install then it should be located at :-

\\user_projects\epmsystem1\Planning\planning1

The utility is named OutlineLoad.cmd or OutlineLoad.sh depending on OS.

There is a whole bunch of parameters available with the utility but the ones of importance when dealing with planning unit hierarchies are :-

[-f:passwordFile] :- This is optional if you don’t include it then the utility will prompt for a password, if you want to know how to create a password file, go here

An example on how to create the password file is shown below.



The other parameters are

/S:Servername 

/A:Application

/I:InputFileName - Include the full path and filename

/U:Username
/X:exceptionFileName -
/L:logFileName - If you want the log files to be written to a different directory than the utility then include the full path and filename

/D: PlanningUnitName – hierarchy name you want to load to.


I don’t need to explain in any further detail the parameters as I feel they are self-explanatory.
Before running the utility you will need to make created a default planning unit hierarchy, also make sure that the hierarchy is not being edited in planning when you run the utility otherwise you will receive an error.



So basically just create a new hierarchy and give it a name, the name will need to match the name that will be used with the utilities parameter /D

To run the utility from command line first change directory to the location of the utility, then execute the utility with the required parameters



OutlineLoad.cmd -f:password.txt /S:localhost /I:h:\Temp\planunits\planhier.csv /U:admin /A:plansamp /D:MoretolifethanPlanning /X:h:\Temp\planunits\planunit.err /L:h:\Temp\planunits\planunit.log



The “Primary and SubHierarchy Selection” and “Assign Owners” sections have been populated. I have included the file template again in the screen shot so it hopefully can help a little further in understanding how the various planning unit properties are populated from a source file.

If any errors were encountered they will be written to the log defined in the parameters, more much more informative than when importing directly through planning.



There are another couple of parameters that can be used with the utility :- /R and /U

The description from the documentation is :-

/U - Delete all planning units with the /R option, or display an error if members in planning units would be deleted. Use /-U (or do not specify the /U parameter) to prevent deleting members in planning units (default).

Use /U with /R to enable deleting started planning units and deleting all members in the dimension specified in the .CSV load file.

I did have a go at using the parameters but it didn’t seem to make a difference if I included them or not, maybe you will have more success with them.

In the next blog I will look at the final method of loading planning unit hierarchies and that is through the use of ODI.

1 comment:

  1. Hi John,
    You write really wonderful blog.
    Thank you so much
    Well i needed to know whether :
    moretolifethanthis@googlemail.com
    is really your mail id .
    Let me know .
    Just need to hang around more with you.
    Thanks,
    Prashant

    ReplyDelete

Note: only a member of this blog may post a comment.