Running the Synchronization Script
To run the synchronization script, do the following:
-
Back up the database.
Caution: Synchronization cannot be undone. Once you run the script, actuals that have been deleted can only be recovered from a database backup.
-
From the PPM Server, change to the <PPM_Home>
/bin
directory. -
Run the following command:
sh ./kPMTMSync.sh -username
<username>-password
<password>[-projectno
<projectnumber>] [-projectname
<projectname>] [-includeDates yes] [-includePC yes] [-removeEmpty yes]
Note: Messages from the script are sent as standard output to the screen. To log these messages, see Logging Messages.
Option (*Required)
Description
*username
Any existing PPM user who has the Edit All Projects access grant.
*password
The password for the PPM user.
projectno
The project number of the project to which the actuals are synchronized. The project number is available on the Search Projects page or in the Project Details tab of the project. If you also specify the
projectname
argument, the project name and project number must correspond to the same project. If neither theprojectno
nor theprojectname
argument is specified, all projects with synchronization enabled have their actuals synchronized.projectname
The project name of the project to which the actuals are synchronized. The project name is available on the Search Projects page or in the Project Details tab of the project. If you also specify the
projectno
argument, the project number and project name must correspond to the same project. If neither theprojectno
nor theprojectname
argument is specified, all projects with synchronization enabled have their actuals synchronized.includeDates
If set to yes, the actual start date and actual finish date (if available) is copied from Time Management. The actual start date is the earliest date for which effort is provided on any time sheet for a task. The actual finish date is the latest date for which effort is provided on any time sheet for a task and is copied only if percent complete for the task is equal to 100 (the task has been completed). If the task has not been completed, the actual finish date from Project Management is used.
If this option is not included, both the actual start date and actual finish date from Project Management are used.
WARNING: For a completed project, if actuals for resources have been added from both Project Management and Time Management, using this option on this project ignores the actuals from Project Management. The status of all tasks that had actuals entered from Project Management are changed from Completed to In Progress and the actuals entered from Project Management are lost.
includePC
The following describes the calculations for percent complete (PC) and estimated remaining effort (ERE). The calculations may use actual effort (AE) or scheduled effort (SE).
If set to yes and if Track Estimated Remaining Effort per resource assignment in the Cost and Effort policy is enabled:
ERE Calculations
-
ERE = SE – AE
-
If ERE <= 0, ERE = 0
PC Calculations
-
If ERE > 0, PC = [ AE / (AE + ERE) ] * 100
-
If ERE <= 0, PC = 100
If set to yes and if Track Estimated Remaining Effort per resource assignment in the Cost and Effort policy is not enabled:
PC Calculations
-
If AE = 0, PC = 0
-
If AE > 0, PC is calculated by Project Management based on data entered by users
If set to no or is not included (the setting of Track Estimated Remaining Effort per resource assignment in the Cost and Effort policy is not relevant):
ERE Calculations
-
If PC = 0, ERE = SE – AE
-
If PC = 100, ERE = 0
-
If 0 < PC < 100 and AE = 0, ERE = SE
-
if 0 < PC < 100 and AE > 0, ERE = (AE * 100 / PC) – AE
PC Calculations
-
PC is calculated by Project Management based on data entered by users
removeEmpty
If set to yes, resources whose actual efforts are zero or null for a task are removed.
-
The following are examples of running the script.
User1 wants to synchronize the actuals of all projects with synchronization enabled. User1 has the Edit All Projects access grant and runs the following command:
sh ./kPMTMSync.sh -username User1 -password User1_password
User2, who also has the Edit All Projects access grant, wants to synchronize the actuals for a project named Project1 whose project number is 311223. User2 can run one of the following commands:
sh ./kPMTMSync.sh -username User2 -password User2_password -projectno 311223
or
sh ./kPMTMSync.sh -username User2 -password User2_password -projectname Project1
or
sh ./kPMTMSync.sh -username User2 -password User2_password -projectno 311223 -projectname Project1
Logging Messages
By default, messages from the script are sent as standard output to the screen. To log these messages, redirect standard output to a file: when you run the script, type > <filename> at the end of the command where <filename> is the name of the file where messages are logged.
For example, User2, who has the Edit All Projects access grant, wants to synchronize the actuals for a project named Project1 and redirect standard output to a file named SyncLog01.txt
in the /tmp
directory. User2 runs the following command:
sh ./kPMTMSync.sh -username User2 -password User2_password -projectname Project1 > /tmp/SyncLog01.txt
If the message The specified project does not require a TM-PM Sync.
displays or is logged, the project is not enabled for synchronization. See Enabling Projects for Synchronization.