-
Allocation Compliance by PM report provides project managers a single place to view Available hours, Allocation Hours and Allocation Percentage of Investment Team Resources. It considers the investments of selected project manager and it displays the following: Allocation Details Grid: Displays Resource and its Allocated hours, Available hours and Allocation percentage (Allocated hours/Available Hours) Allocation Percent by Resource: Column chart that displays Allocation Percentage for various resources during the selected Time frame. You can further narrow your search by Project Manager & Month Start Date range. -
Actuals & ETC by Resource Assignment report provides project managers a single place to view Actuals and ETC associated with resources across multiple Tasks and Projects. It displays the following: Actual and ETC Hours by Start Date: Stacked Column chart that displays the total Actual hours and ETC hours per month of fiscal period. Grey color indicates Actuals and Purple indicates ETC hours during that month. Grid: Displays Investment name, Task, Assigned resource ETC and Actual hours per month of fiscal period. It also displays aggregated column and row totals for Actuals and ETC hours. You can further narrow your search by OBS Type, OBS Path & Start Date range. -
Assignments by Task Over Time report display all assignments by task for all resources. Information is displayed on monthly basis. This report displays Investment Name, Task Name, Resource Name and its monthly assignments. You can further narrow your search by OBS Type & Path, Investment Manager, Investment Name, and Year -
All Assignments report provides project managers a single place to view KPIs related to Task Assignments. All the KPIs are depicted in various visualizations. Total Actuals: Scorecard that displays the sum of actuals associated with assignments for the selected criteria. Remaining ETC: Scorecard that displays the sum of current ETC associated with assignments for the selected criteria. Top 5 Roles (Total Effort): Column chart that displays Effort (Actuals + ETC) by Roles. X axis displays various Roles. Data labels indicate sum of effort associated with that Role. Actuals by OBS level 2: Column chart that displays Actuals by OBS level 2. X axis displays various OBS level 2. Data labels indicate sum of actuals associated with that OBS. Grid: Displays Assignment details such as Project ID, Project Name, Task Name, Task Status, Assigned Resource, Assignment Status, Assignment Start, Assignment Finish, Actuals, ETC, Total Effort, Days Late and Days Old. You can further narrow your search by OBS Type, OBS Path, Project(s) and Project Manager. -
Project Manager- Resource/Compliance report provides project managers a single place to view Compliance status for various critical KPIs. All the KPIs are depicted in various visualizations.- Unfilled Demand: Donut chart that gives you the count of roles (within projects) that are not filled by resources.
- # Of New team members: Scorecard that displays the count of new team members added to the projects.
- Resource Constraints: Donut chart that gives you the count of Over utilized and underutilized resources
- Unsubmitted Time: Dial gauge that displays the count of resources that did not submit time.
- Stale Tasks: Dial gauge that displays the count of tasks that are past their due date
- Status Report Compliance: Dial gauge that displays the compliance of status reports for various projects.
-
All Assignments report provides the Managers a single place to view all the assignments associated with a project(s). User can view only the investments that he has access to. This report also displays ETC, Actuals, Total Effort, Days Old (Elapsed days between Task Finish Date and Today's Date), Days Late (Elapsed days between Task Finish date and Task Baseline Finish date) associated with the task. You can further narrow your search by OBS Type & Path, Resource Name , Project Manager, Project Name, Project ID, Is project Active?, Assignment Start Date, Assignment Finish Date, Assignment Status and Task Status. -
Capacity Graph report provides the Resource Managers & PMO a single place to view Monthly Availability, Allocations, Actuals and Assignments for one or more active resources. Information is displayed in the form of a line chart. Legend displays the color associated with each metric. Mouse over the line chart displays hours associated with that corresponding metric. This report provides Managers a simple means to analyze: Allocations vs. Availability, Allocations vs. Actuals, Allocations vs. ETC and ETC vs. Availability and helps in determining the areas of improvement. User can further narrow their search by OBS Type & Path, Month Start Date, Resource Name, Resource Manager, Primary Role & Employment Type. -
Assignments by Task Over Time report display all assignments by task for all resources. Information can be drilled down to yearly, quarterly or monthly level. This report helps in determining the tasks a user is assigned to or how many hours a user is assigned to a task. You can further narrow your search by OBS Type & Path, Project ID, Project Name, Task Name, Assignment Resource, Is project Active?, Is Template? And Month End date. -
Allocation Compliance Area Chart provides the resource manager a single place to view the Monthly Resource Allocation compliance for all resources in the form of an Area chart. Allocation Compliance is calculated based on the value of 'Availability to Allocation Hours %' Allocation Compliance is 'Under Allocated (Less Than 80%)' WHEN 'Availability to Allocation Hours %’ is less than 80 Allocation Compliance is 'Appropriately Allocated (Between 80-120%)' WHEN 'Availability to Allocation Hours %' is between 80 and 120 Allocation Compliance is 'Over Allocated (Over 120%)' WHEN 'Availability to Allocation Hours %' is greater than 120 User can further narrow their search by Resource Is Active?, OBS Type, OBS Path and Month Start Date. User can use exact dates or relative dates for Month Start Date filter parameter. -
Late Tasks with Assignments report displays the list of all Tasks (with their Total ETC Hours) that are not closed but are past their finish date or past their baseline finish date. The report provides Project Manager the ability to view and track late tasks across multiple projects without going into each project individually. This report displays Project Name, Project Manager, Task Name, Task Status, Task Start Date, Task Finish Date, Days Old (Elapsed days between Task Finish Date and Today's Date), Days Late (Elapsed days between Task Finish date and Task Baseline Finish date). User can further narrow their search by Task Name, Task Status, Project ID, Project Name, Project Manager, Is Milestone?, Is late?, Task Start Date, Task Finish Date and Is Template?. User can use exact dates or relative dates for Task Start Date and Task Finish Date filter parameters. -
Resource Availability – 4 Weeks displays all resources with their total allocated hours by week, and an average availability percent (4 Wk Avail %) for next four weeks. This report also displays Resource Primary Role and Employment Type. User can further narrow their search by Resource Name, Resource Type & Week Start Date. User can use exact dates or relative dates for Week Start Date filter parameters. -
Allocation Compliance for PM report gives a view of resource Allocation percentage for active resources on the team of an investment for a selected Investment Manager. It allows the PM to see resources on their project over the coming months and whether they are over or under allocated. Allocation Percentage is calculated as (‘Allocated Hours’ / ‘Available Hours’) * 100. User can further narrow their search Month Start Date and Investment Manager. User can use exact dates or relative dates for Month Start Date filter parameter. -
Allocation Compliance Pie Chart provides the resource manager a single place to view the Allocation compliance information in the form of a Pie chart. Allocation Compliance is calculated based on the value of 'Availability to Allocation Hours %'. Allocation Compliance is 'Under Allocated (Less Than 80%)' WHEN 'Availability to Allocation Hours %’ is less than 80. Allocation Compliance is 'Appropriately Allocated (Between 80-120%)' WHEN 'Availability to Allocation Hours %' is between 80 and 120. Allocation Compliance is 'Over Allocated (Over 120%)' WHEN 'Availability to Allocation Hours %' is greater than 120. User can further narrow their search by Resource Is Active?, OBS Type, OBS Path, Allocation Start Date, Investment Name and Resource Manager. User can use exact dates or relative dates for Allocation Start Date filter parameter. -
Course description: “Is there a way to simplify time tracking? Time is a function 90% of companies use. What are ways to have time be less of a burden to users? How can you minimize the negative perception? This session will discuss options within CA PPM or outside CA PPM to make time tracking less of a burden for all.” Download file is the presentation slide deck. -
Course description: “Does your organization struggle with resource management? Have you considered creating a Resource Management Office (RMO)? This session will review how some organizations are using RMOs to drive adoption and effectively manage resources, including real world examples of RMO setup and execution.” Download file is the presentation slide deck. -
The Timesheet Smoothing Process Workflow kicks-off when an individual timesheet is Submitted. It splits each transaction on the timesheet when total timesheet actuals exceed total weekly availability for the resource. Total weekly availability is determined by multiplying resource availability rate by the number of workdays in the week. Non-workdays include weekends, holidays, PTO, and other scheduled days off, as set on the resource calendar. If timesheet actuals <= total weekly availability, then the timesheet remains unchanged. But if timesheet actuals > total weekly availability, then the following occurs. Each timesheet transaction is reduced by a calculated percentage that will reduce the total regular hours to equal the total weekly availability. Then the remaining transaction hours are placed in a “Split” row for that task on that day, with an Input Type Code set based on a process parameter (which parameter can be set within the script action on the process). Note: If a single day has overtime hours, but the total timesheet actuals <= total weekly availability, no splitting occurs. -
The Timesheet Smoothing Process Workflow kicks-off when an individual timesheet is Submitted. It splits each transaction on the timesheet when total timesheet actuals exceed total weekly availability for the resource. Total weekly availability is determined by multiplying resource availability rate by the number of workdays in the week. Non-workdays include weekends, holidays, PTO, and other scheduled days off, as set on the resource calendar. If timesheet actuals <= total weekly availability, then the timesheet remains unchanged. But if timesheet actuals > total weekly availability, then the following occurs. Each timesheet transaction is reduced by a calculated percentage that will reduce the total regular hours to equal the total weekly availability. Then the remaining transaction hours are placed in a “Split” row for that task on that day, with an Input Type Code set based on a process parameter (which parameter can be set within the script action on the process). Note: If a single day has overtime hours, but the total timesheet actuals <= total weekly availability, no splitting occurs. -
The Timesheet Smoothing Process Workflow kicks-off when an individual timesheet is Submitted. It splits each transaction on the timesheet when total timesheet actuals exceed total weekly availability for the resource. Total weekly availability is determined by multiplying resource availability rate by the number of workdays in the week. Non-workdays include weekends, holidays, PTO, and other scheduled days off, as set on the resource calendar. If timesheet actuals <= total weekly availability, then the timesheet remains unchanged. But if timesheet actuals > total weekly availability, then the following occurs. Each timesheet transaction is reduced by a calculated percentage that will reduce the total regular hours to equal the total weekly availability. Then the remaining transaction hours are placed in a “Split” row for that task on that day, with an Input Type Code set based on a process parameter (which parameter can be set within the script action on the process). Note: If a single day has overtime hours, but the total timesheet actuals <= total weekly availability, no splitting occurs. -
A process creating a new Cost Plan. Cost Plan properties:
Pre-conditions:Name Cost Plan created on: yyyy/mm/dd hh:mm:ss Grouping attributes Charge Code, Transaction Type Start Period The earliest fiscal period with Actuals (from PPA_WIP table) or current period, if there are no actuals Finish Period The latest fiscal period with a non-zero allocation (from PRJ_BLB_SLICES table, SLICE_REQUEST_ID = 6 Period Type Monthly Plan of Record True Planned Cost For periods in the past – from Actuals (Charge Code, Transaction Type, Quantity (Units), Cost (Amount) taken from Transactions (PPA_WIP & PPA_WIP_DETAILS); For current and future periods – from Allocations (Charge Code taken from the Project, Transaction Class from the Resource, Quantity from allocation slices, Cost from the Rate Matrix (NBI_PROJ_RES_RATES_AND_COSTS table) - the Project must be financially enabled.
- if a new Team Member is added, Rate Matrix job must be run, so the rates are populated in the NBI table.
- if the Allocation changes, allow the timeslice job to finish before running the process.
- the Project should have the Charge Code set.
-
A process creating a new Cost Plan. Cost Plan properties:
Pre-conditions:Name Cost Plan created on: yyyy/mm/dd hh:mm:ss Grouping attributes Charge Code, Transaction Type Start Period The earliest fiscal period with Actuals (from PPA_WIP table) or current period, if there are no actuals Finish Period The latest fiscal period with a non-zero allocation (from PRJ_BLB_SLICES table, SLICE_REQUEST_ID = 6 Period Type Monthly Plan of Record True Planned Cost For periods in the past – from Actuals (Charge Code, Transaction Type, Quantity (Units), Cost (Amount) taken from Transactions (PPA_WIP & PPA_WIP_DETAILS); For current and future periods – from Allocations (Charge Code taken from the Project, Transaction Class from the Resource, Quantity from allocation slices, Cost from the Rate Matrix (NBI_PROJ_RES_RATES_AND_COSTS table) - the Project must be financially enabled.
- if a new Team Member is added, Rate Matrix job must be run, so the rates are populated in the NBI table.
- if the Allocation changes, allow the timeslice job to finish before running the process.
- the Project should have the Charge Code set.
-
A process creating a new Cost Plan. Cost Plan properties:
Pre-conditions:Name Cost Plan created on: yyyy/mm/dd hh:mm:ss Grouping attributes Charge Code, Transaction Type Start Period The earliest fiscal period with Actuals (from PPA_WIP table) or current period, if there are no actuals Finish Period The latest fiscal period with a non-zero allocation (from PRJ_BLB_SLICES table, SLICE_REQUEST_ID = 6 Period Type Monthly Plan of Record True Planned Cost For periods in the past – from Actuals (Charge Code, Transaction Type, Quantity (Units), Cost (Amount) taken from Transactions (PPA_WIP & PPA_WIP_DETAILS); For current and future periods – from Allocations (Charge Code taken from the Project, Transaction Class from the Resource, Quantity from allocation slices, Cost from the Rate Matrix (NBI_PROJ_RES_RATES_AND_COSTS table) - the Project must be financially enabled.
- if a new Team Member is added, Rate Matrix job must be run, so the rates are populated in the NBI table.
- if the Allocation changes, allow the timeslice job to finish before running the process.
- the Project should have the Charge Code set.
-
The interface runs using a MS Excel template called Project Allocation Upload that will be distributed to users.- Configuration
- A master object called Allocation Upload Files will be created. The object will contain a required attachment field on the create page that will receive the Project Allocation Upload MS Excel file.
- A new sub-object called Allocation Upload Records will be created. This object will contain the fields necessary to receive the data rows from the Project Allocation Upload template.
- The master object will store the file level data while the sub-object will store the rows that belong to the file.
- Users must be granted security to view and edit the master and sub-objects in order to run the upload process.
- Project Allocation Upload Template
- The Project Allocation Upload template must remain static. Any changes other than creating additional time periods or additional rows will cause the process to error.
- Only the Project Allocation Upload template can be used to load records to the new objects.
- The Project Allocation Upload will only accept months across the x-axis in the format DD/MM/YYYY. The month headers must appear in the first row of the template and contain the first day of the month.
- The template must be distributed to the users that will be using the upload functionality.
- Users will be required to enter an Investment ID and Resource ID so the process can correctly identify investments and resources to upload the allocation hours against.
- A Staff OBS is not required but can be populated by users to have the data uploaded into CA PPM.
- The owner of the Project Allocation Upload template is responsible for providing users a valid list of Staff OBS Units.
- Investments will not be created through the interface. As such a valid Investment ID must be provided.
- Resources can be added to the investment team through the interface. If a valid Resource ID is provided the resource’s allocation will be updated if the resource already exists on the investment. If the resource does not already exist on the investment the resource will be added to the team along with the allocation hours.
- The Project Allocation Upload template will accept hours, not allocation percentages. Because CA PPM stores allocations as percentages of a resource’s availability the upload process must convert hours to a percentage. As a result small rounding errors may occur in the neighborhood of .01 hours per month.
- Resources cannot be removed from investment teams through the interface.
- The Project Allocation Upload template will support allocation uploads to different instances of the same role on the same investment as long as different Staff OBS units are provided.
- If multiple instances of the same role are assigned to the investment with the same Staff OBS the process will not know which instance of the role to upload the hours to. In these cases the process will consider these records as invalid. The PM will need to manually remove one of the instances or upload the hours manually..
- If multiple instances of the same role with the same Staff OBS unit are assigned to the same investment in the upload template the monthly hours will be totaled by investment, by role, by Staff OBS.
- The allocation template will follow the format in the screenshot area.
- Process
- To initiate the Allocation Interface a user will create a new Allocation Upload File instance, attach the Project Allocation Upload Template, and save the record. The file attachment field is an “enter-once” field, meaning that once a value has been set it cannot be changed. If a user wishes to upload another field they will create a new record.
- After the file has been attached the user will be presented with two check box fields, one to Validate and one to Validate and Upload. Checking either or both options will initiate the process.
- The process will first determine if any sub-object instances exist for the file. In other words, do any records already exist in the Allocation Upload Records sub-object pertaining to the newly uploaded file. If there are no records in the sub-object the process will use the uploaded file and read its contents into the sub-object. If errors are encountered during the file read they will be written to the process console, the process will throw an error, and end.
- Next, records will be validated. Only the sub-object instances that belong to the master object will be validated. Records belonging to other master object instances will not be validated or processed. All records in a status of Ready for Processing, Failed Validation, or Xog Load Error will be validated. Records will fail validation if an investment is not found corresponding to the investment ID provided, a resource is not found corresponding to the resource ID provided, or the date provided is not valid, or a provided Staff OBS does not yield a match. Records that fail validation will be flagged as invalid along with a description as to why they failed validation. Records that pass validation will be flagged as Ready for Processing and locked. The sub-object instances can be exported to excel if further analysis is required. If the Validate & Upload option was not selected the process will end here.
- Regarding the Staff OBS. Only one OBS can be designed as the OBS that the interface will use to validate the Staff OBS records.
- The Staff OBS value from the template must match against the name of an OBS node in the designed Staff OBS.
- If the Staff OBS value matches against multiple nodes in the Staff OBS the record will be flagged as invalid as the process will not know which node to use.
- If the Validate & Upload option was selected the process will continue and any valid records will be xog’ed into the investment team. The xog will be executed as the user that initiated the process so any security rules enforced by xog will be respected by the process.
- Successful records will be flagged as Processed Successfully in the sub-object and remain locked. Records that did not load successfully, due to a xog error or security limitation will be flagged as Xog Load Error, unlocked, and updated with a description containing the full xog output.
- Records that failed validation or failed the xog load can be manually edited and revalidated, and attempt to be uploaded again. Subsequent runs of the process will not read in data from the file, but rather process only sub-object instances that currently exist.
- Configuration
-
The interface runs using a MS Excel template called Project Allocation Upload that will be distributed to users.- Configuration
- A master object called Allocation Upload Files will be created. The object will contain a required attachment field on the create page that will receive the Project Allocation Upload MS Excel file.
- A new sub-object called Allocation Upload Records will be created. This object will contain the fields necessary to receive the data rows from the Project Allocation Upload template.
- The master object will store the file level data while the sub-object will store the rows that belong to the file.
- Users must be granted security to view and edit the master and sub-objects in order to run the upload process.
- Project Allocation Upload Template
- The Project Allocation Upload template must remain static. Any changes other than creating additional time periods or additional rows will cause the process to error.
- Only the Project Allocation Upload template can be used to load records to the new objects.
- The Project Allocation Upload will only accept months across the x-axis in the format DD/MM/YYYY. The month headers must appear in the first row of the template and contain the first day of the month.
- The template must be distributed to the users that will be using the upload functionality.
- Users will be required to enter an Investment ID and Resource ID so the process can correctly identify investments and resources to upload the allocation hours against.
- A Staff OBS is not required but can be populated by users to have the data uploaded into CA PPM.
- The owner of the Project Allocation Upload template is responsible for providing users a valid list of Staff OBS Units.
- Investments will not be created through the interface. As such a valid Investment ID must be provided.
- Resources can be added to the investment team through the interface. If a valid Resource ID is provided the resource’s allocation will be updated if the resource already exists on the investment. If the resource does not already exist on the investment the resource will be added to the team along with the allocation hours.
- The Project Allocation Upload template will accept hours, not allocation percentages. Because CA PPM stores allocations as percentages of a resource’s availability the upload process must convert hours to a percentage. As a result small rounding errors may occur in the neighborhood of .01 hours per month.
- Resources cannot be removed from investment teams through the interface.
- The Project Allocation Upload template will support allocation uploads to different instances of the same role on the same investment as long as different Staff OBS units are provided.
- If multiple instances of the same role are assigned to the investment with the same Staff OBS the process will not know which instance of the role to upload the hours to. In these cases the process will consider these records as invalid. The PM will need to manually remove one of the instances or upload the hours manually..
- If multiple instances of the same role with the same Staff OBS unit are assigned to the same investment in the upload template the monthly hours will be totaled by investment, by role, by Staff OBS.
- The allocation template will follow the format in the screenshot area.
- Process
- To initiate the Allocation Interface a user will create a new Allocation Upload File instance, attach the Project Allocation Upload Template, and save the record. The file attachment field is an “enter-once” field, meaning that once a value has been set it cannot be changed. If a user wishes to upload another field they will create a new record.
- After the file has been attached the user will be presented with two check box fields, one to Validate and one to Validate and Upload. Checking either or both options will initiate the process.
- The process will first determine if any sub-object instances exist for the file. In other words, do any records already exist in the Allocation Upload Records sub-object pertaining to the newly uploaded file. If there are no records in the sub-object the process will use the uploaded file and read its contents into the sub-object. If errors are encountered during the file read they will be written to the process console, the process will throw an error, and end.
- Next, records will be validated. Only the sub-object instances that belong to the master object will be validated. Records belonging to other master object instances will not be validated or processed. All records in a status of Ready for Processing, Failed Validation, or Xog Load Error will be validated. Records will fail validation if an investment is not found corresponding to the investment ID provided, a resource is not found corresponding to the resource ID provided, or the date provided is not valid, or a provided Staff OBS does not yield a match. Records that fail validation will be flagged as invalid along with a description as to why they failed validation. Records that pass validation will be flagged as Ready for Processing and locked. The sub-object instances can be exported to excel if further analysis is required. If the Validate & Upload option was not selected the process will end here.
- Regarding the Staff OBS. Only one OBS can be designed as the OBS that the interface will use to validate the Staff OBS records.
- The Staff OBS value from the template must match against the name of an OBS node in the designed Staff OBS.
- If the Staff OBS value matches against multiple nodes in the Staff OBS the record will be flagged as invalid as the process will not know which node to use.
- If the Validate & Upload option was selected the process will continue and any valid records will be xog’ed into the investment team. The xog will be executed as the user that initiated the process so any security rules enforced by xog will be respected by the process.
- Successful records will be flagged as Processed Successfully in the sub-object and remain locked. Records that did not load successfully, due to a xog error or security limitation will be flagged as Xog Load Error, unlocked, and updated with a description containing the full xog output.
- Records that failed validation or failed the xog load can be manually edited and revalidated, and attempt to be uploaded again. Subsequent runs of the process will not read in data from the file, but rather process only sub-object instances that currently exist.
- Configuration
-
This process workflow with gel script forces billable hours on timesheet down to 40 hours, and sets overtime hours to non-billable. Timesheets with 40 or fewer hours are not touched. Process kicks off upon submission of timesheet. Steps are:- Determine if timesheet has > 40 hours. If so, proceed.
- Create a SPLIT row for each timesheet row, with Input Type Code = Non-Bill.
- Divide 40 by total timesheet ours. Store this value.
- Multiply each timesheet cell by the stored value, and enter the result into that cell.
- Take the difference (original cell value – new cell value), and enter in same cell on Split row.
- The end result will be 40 hours total on Billable rows, and overtime hours on Non-Billable rows.

