Microsoft Project Add-In Utility
IPM Utilities is a set of tools created to streamline interactions between IPM procedures and the Microsoft Project schedule.
THE PRIOR VERSION OF THIS SOFTWARE IS DISCONTINUED AS OF 3/31/2026.
If you are searching for the 'Other Utilities' like Navigate Tasks or Inspect Schedule, see the OPDEC Schedule Assistant.
1. Download and Install
The IPM Utilities add-in is installed for all users on a computer, and the installation will require administrative privileges. The download information for the most recent version can be found below.
2. Activation
The IPM Utilities software is free but must be activated after a thirty-day trial period. This means users need to register the software with the free serial number db83-a1c7.
Online Activation - Activate Now
This option requires users to enter their name, company, email address, and serial number. Use the serial number db83-a1c7.
Offline Activation - Step 1
Offline Activation - Step 2
Activate Later
3. IPM Settings
This form is responsible for storing the field settings for the IPM Utilities. The settings entered here should always match the corresponding values used in IPM to map your data instance. See the Map Data section in Data Instance Admin for more information on each requested field setting and what data it should contain.
The Settings Profile is saved to the Microsoft Project schedule as custom document properties. Once you create the Settings Profile and save the Project file, the IPM Utilities settings should automatically populate from then on.
The Settings form requires the user to select several fields from their Project file through the drop-down boxes provided in the Field Settings section. If these settings are not updated or not correct, then users may experience errors while operating the utilities.
4. Import Status
This process uses a Microsoft Excel file exported from IPM to update the status of designated tasks in the Microsoft Project schedule. To accomplish this, follow these steps:
Open the MS Project file that was posted to IPM for statusing.
Select the “Import Status” button from the OPDEC tab
Check the 'Set Phys % Complete = CAM % Complete' option if desired.
This option also applies to the custom CAM completion percentage as the physical completion percentage. Doing so allows Microsoft Project to display task completion progress in the Gantt Chart view.
Check the “Override Critical Issues” checkbox if desired, but it is unchecked by default to include the extra validation.
This option allows the user to ignore critical issues found during the import and force the updates to proceed. It's advised to only check this box when the user has already reviewed the critical issues identified on a previous results report. There are however, three critical issues that no matter what option is checked, cannot be updated via the import: UIDs that no longer exist, Tasks that are now inactive, and Tasks that are now summaries. For more details, reference the Critical Issues subsection of the Import Status Results Report documentation below.
Check the “Use Custom Fields” option if desired.
This option allows users to include additional data from custom Text, Number, Flag, or Date fields within the schedule into the results report. See
Task Info below.
Press the “Import Status” button
Select the Excel file that was exported from IPM in the file dialog prompt.
The process checks to ensure a valid file was selected.
The process checks for any critical issues in the status import file. Please see the Results Report section below for more detail on these issues.
The import process will update the tasks as follows:
Forecast starts are given a “Start No Earlier Than” constraint date equal to the forecast start date requested
Forecast finishes are updated by changing the duration of the task
Actual start dates are updated as requested or as originally provided from the IMS to the status instance
Actual finish dates are updated as requested and the Constraint Type is removed
The CAM %C field is updated as requested or as originally provided from the IMS to the status instance
If requested, the physical %C is set to the CAM %C being imported
The process reviews the schedule after importing the status updates. If any differences are found between the status update and the state of the schedule afterwards, they are highlighted in the Results Report. Please see the Results Report section below for more detail.
If status updates were applied, the user is notified that the process completed and that they should review the results report for any issues that occurred as a result of the status update. If critical issues were found and the “Override Critical Issues” checkbox was not checked, the user sees a notification telling them that no status updates were applied, and that critical issues were found in the results report.
4.1 Import Status Results Report
After each status import, a results report is generated. It is saved in the same directory as the status import file. This report has several sections delimited by color-coded headers: control account information from the schedule, the original status updates from the import file, the relevant IMS data after the status updates are applied, a delta display for affected forecast dates, and any critical issues found during the status update.
4.1.1 Task Info
This section will always display the Control Account, Package ID, and Task Description for each task in the status file. Also, if the “Use Custom Fields” checkbox is selected, this section can display values for up to five custom fields from the IMS. These can be Text, Number, Flag, or Date fields, and can be used to provide additional reference information while assessing the results of the status import.
4.1.2 Status Updates From IPM
This section contains the original data from the Status file exported from IPM.
4.1.3 IMS Result After IPM Status Updates
This section shows the state of the IMS after the status updates from IPM were applied, highlighting deviations between what was requested versus the final result. This allows users to quickly see any deviations in what was requested to what the final result is. Note that this section will remain blank if critical issues were found, and the “Override Critical Issues” checkbox on the Import Status form is unchecked.
Cells highlighted in red indicate a difference between the value listed for a field in the Excel import file and the corresponding value in the IMS. When Actual Dates are highlighted in red, it typically indicates the task in the IMS is split.
The “Out of Sequence ID” column will list the Task IDs of any Out of Sequence predecessors that the current task has a relationship to. A task's predecessor is considered out of sequence by comparing the Actual Start and Actual Finish of the predecessor and current task based upon the relationship type (i.e. FS, FF, etc.). While out of sequence tasks do not necessarily indicate a problem, this and any other red indicated cells should be reviewed, understood, and resolved, if necessary, before continuing with further analysis.
4.1.4 Forecast Date Deltas
This section shows the variance between the Forecast Start and Finish dates before and after the status import. The variance is displayed in working days based on the schedule's default calendar.
4.1.5 Critical Issues
The final section reports any critical issues that were found before performing the status updates. By default, if any critical issues are found (except for “Split Tasks Identified”), the process will not apply any status updates. If the user wants to bypass these critical issues and proceed with the status updates, checking the “Override Critical Issues” checkbox on the import form would be necessary.
No matter the “Override Critical Issues” option chosen, the import process will never update tasks that exhibit any of the following three critical issues.
UID Not Found
The task UID in the import file is no longer in your current schedule.
Task is now Inactive
The task is now inactive in the current schedule and cannot receive status (its “Active” field value is set to “No”).
Task is now a Summary
The task is now a summary in the current schedule and cannot receive status (its “Summary” field value is set to “Yes”).
These checks below help illuminate conditions where the IMS data has changed since being shown to the users in IPM for statusing. The term 'expected values' refers to IPM's last known “Actual Start” and “CAM % Complete” as they were provided from the IMS to IPM. These expected values are in the “IMS Info as Provided to IPM” section of the Results Report. Note that these issues are only applicable to IPM Status exports generated with IPM version 9.3.94 or later.
Starting CAM %C
The task's current CAM % Complete value does not match the expected value.
Actual Start
The task's current Actual Start value is either missing or different from the expected value.
Forecast Start
The task has a Forecast Start provided in the Status file but already has an Actual Start assigned in the current schedule.
Actual Finish
The task's current Actual Finish value is either missing or different from the expected value.
Split Task Identified
The check is performed for each task after its status is updated. If the status update caused the task to split, this error will be shown.
5. Export Status
This utility exports the status of the Microsoft Project file to a predetermined format that can then be imported into the cost system. The typical process is dictated below:

Ensure the correct Settings are applied and then select the “Export Status” button from the OPDEC tab
Choose from the Export Format drop-down depending on which Cost System is being utilized by the program: Deltek's MPM or IPM's Internal Cost Module.
Press the Export Status button
The tool will update users on the export process using the status bar on the dialog
When the process completes, the resulting “.csv” file(s) will be in the same folder as the MS Project file provided, unless the “Use Custom Location for Export Files” setting is checked in the current IPM Settings profile. These files must then be handed off to finance for import into the cost system.
Please note only tasks with the following criteria are exported for status:
Tasks must be Active in Project
Tasks must have a Package ID
Tasks must have a valid Earned Value Technique or Milestone ID.
Note that tasks with an 'AE' or 'BE' Earned Value Technique are not considered valid for status exports.
5.1 Errors
The export process first validates the schedule data to ensure it can be transferred to the destination cost system without issues. Below is a listing and explanation of these errors.
The assigned earned value technique of '@@@' is invalid
The value in the EVT field (specified in settings) did not match any expected EVT values (See EVT list from
Glossary). AE (Apportioned Effort) and BE (BCWP Entry) values will not trigger this error, but they will also not be exported.
Summary's Actual Finish doesn't match latest Actual Finish of its detail
The summary task dates should align with the latest Finish date of its detail. If the summary is a MWPC task, please ensure that all its children are identified appropriately with Milestone ID's and Milestone Weights. This check is primarily for catching milestone summaries that include detail tasks not part of the milestone (e.g. a summary task with 'MWPC' EVT, and six detail tasks. Four of the detail tasks are labelled as MWPC with the appropriate Milestone ID/Weight, and two are not. The two that are not could throw off the summary's actual finish calculation.).
A 'MW' or 'MWPC' EVT assigned to a non-summary task
Non-numeric value in CAM % Complete field
Cost Contract Code field didn't contain a value.
CAM % Complete is > 0 but no Actual Start given
Actual Finish given with CAM % Complete < 100.
CAM % Complete = 100 but no Actual Finish given.
The task has a forecast Start date prior to the Status Date.
The task has a forecast Finish date prior to the Status Date.
The task has an Actual Start date beyond the Status Date.
The task has an Actual Finish date beyond the Status Date.
Duplicate EV packages encountered
Milestone with no Milestone Weight assigned
Milestone with no Work Package ID assigned
Milestone's Work Package ID doesn't match its summary's
Milestone cannot have an Actual Finish if parent doesn't have Actual Start
Milestone cannot have an Actual Finish before its parent's Actual Start date.
Milestone cannot have an Actual Finish later than its parent's Actual Finish.
Milestone doesn't have an Actual Finish while its parent does.
Milestone forecasted to finish before its parent's Start date.
Milestone forecasted to finish after its parent's Finish date.
Milestone not summarized by a task with EVT of MW or MWPC.
6. Export BCR
This utility is responsible for carrying BCR changes from Microsoft Project over to IPM. It accomplishes this by exporting all of the necessary information from each activity that is marked with a BCR number in the 'BCR #' field identified in the settings. The export is created in a comma-separated values text file (.csv) in the same folder location as the Project file, unless you checked the “Use Custom Location for Export Files” option in your IPM Settings profile. This file can then be uploaded into IPM.
Before the utility allows the creation of the export file for IPM, it will first verify the integrity of the changes being made. The validation process will check for several things, but some checks are given a lower priority than others. These low priority checks will be listed as Warnings, while the urgent checks will be listed as Errors. Please see below to determine the criteria for any errors or warnings that may be received. Note that inactive tasks are not subjected to these logic tests, but they may still be exported if the BCR field values correspond.
6.1 Errors
Task has EVT but no Package defined
Invalid Baseline Start
Invalid Baseline Finish
Baseline Start must be prior to Baseline Finish
Invalid Baseline Duration
Activity with an unknown, invalid EVT
An EVT was encountered that does not match those that are accepted by IPM (See EVT list from
Glossary).
Package ID does not have an EVT assigned
Package ID found multiple times with an EVT assigned
Package ID has duplicate Milestone IDs assigned
Package ID cannot have spaces, commas, or apostrophes
Task has a baseline duration without a Package or Exemption defined
Closed Task with no Actual Start, Actual Finish, or CAM %C < 100
Task is assigned a Milestone ID without a Milestone Weight
Task is assigned a Milestone Weight without a Milestone ID
Milestone Weight value cannot exceed 16 digits and 4 decimal places
Activity must have an EVT of 'AE' if Base WBS provided
Activity with 'AE' EVT must have a value in the Base WBS field
Activity with 'AE' EVT must have a Base WBS field assigned in the settings
Base WBS on 'AE' EVTs cannot be itself
Task cannot have both an EVT and Milestone ID/Weight
Detail Package ID must match its summary Package ID
Detail Control Account must match its summary Control Account
The activity is part of the detail for a summary task tagged with the BCR number, the summary has an EVT, and the detail activity has either no Control Account or a Control Account that does not match its summary's.
Detail BCR # must match its summary BCR #
Detail activities of a milestone summary cannot be milestones
The activity is a detail activity of a summary within a summary. The first summary level has an EVT of 'MW' or 'MWPC'. The summary within that summary is listed as a milestone. This activity is part of the detail for the second level summary, and it is also defined as a milestone with an ID and Weight provided.
Detail tasks of a summary with a BCR # cannot be inactive.
Milestone not summarized by a task with EVT of MW or MWPC
Weighted EVT Package has no milestones defined
Summary's Baseline Start date must align with its detail activities.
Summary's Baseline Finish date must align with its detail activities.
MW and MWPC EVTs must be summaries
These earned value techniques require earned value milestones to be identified within the schedule. This is done by using a summary activity as the work package and sub-activities as the milestones. If milestones are not requested or required within the schedule, the EVT needs to be reevaluated,
Activity does not have a Control Account assigned
EVT cannot be identified at both the summary and detail level
6.2 Warnings
Activity name is duplicated within this BCR #
Milestone ID does not equal activity UID
7. Export IPMDAR
This utility provides a system to export schedule data into a valid IPMDAR deliverable known as the IPMDAR Schedule Performance Dataset. This is accomplished by inputting Contractor Information and using custom fields within the Project to provide the information required by the dataset. The combination of inputs and Project field mappings is called a Settings Profile in the tool. Once the first profile is established, the tool can automatically export schedule data into the strictly formatted JSON text files, which are then zipped into a final deliverable file.
7.1 Getting Started
Before beginning, gather the required data and ensure the schedule is updated to provide all the applicable information that's requested by the IPMDAR.
7.1.1 Prerequisite Data
Contract/Contractor Information. This includes identifying information about the contract, the contract's security level, program, and point of contact for this report. See the 'Contractor Info' tab of the Settings form for a complete list.
Associated Task Data. The schedule will need to use custom task fields to identify the Task Subtype, Planning Level, and other data such as the corresponding Control Account, Earned Value Technique, Work Package ID, etc. See the 'Core Field Mappings' tab of the Settings form for a complete list.
Any other custom Project/Task information that could be useful. Additional information, although not specifically requested, may be provided through the Custom Project Fields and Custom Task Fields tabs of the Settings form. This is up to the user's discretion to decide what other data in the schedule could supplement the submission.
The schedule must meet the following criteria for the tool to run:
Must have a valid Status Date
Must have a Project Start Date
Must have a Project Finish Date
Note that Inactive tasks are automatically excluded from the export. However, the tool reports active task logic as it is shown in MS Project. If active tasks are logically linked to inactive tasks, these links should be removed before exporting to avoid mentioning logic links to nonexistent tasks.
Note that any tasks with links to external tasks in another file will not report on those links. All task relationships must be contained within one file.
7.1.2 Settings
To get started, launch the tool from the ribbon button. Next, click on Tools → Settings to open the IPMDAR Settings window.
Contractor Info: Fill out all applicable fields with the appropriate Contract, Program, Disclosure, Contractor, Point of Contact, and EVMS information. Please note the following while doing so:
A Security Marking designation must be provided in the Disclosure section.
If a Contractor ID Code Type is provided, a corresponding ID Code must also be provided.
If EVMS is accepted on your program, the date of EVMS acceptance must also be provided.
Custom Project Fields: This tab is optional. If there is other relevant information in the schedule that should be provided, enter that data here. There are up to ten fields available. The Field Name describes the data, the Field Value is the data itself, and the Field Comments provide additional elaboration if needed. Please note that any field names require field values and vice versa.
Custom Task Fields: This tab is optional. If there is custom information associated with each task, enter that data here. There are up to ten field inputs available. The specified field will be exported for each task in the schedule. Please note that any field names require field values and vice versa. If the selected Project field is a Lookup field, the “Use Lookup Desc” checkbox will become enabled. Use this option to use the Lookup field's description as its value instead of the field's item.
Core Field Mappings: Map each dropdown box to its applicable Project field. The Task Subtype, Task Planning Level, and On Critical Path settings are the only settings required to run the tool, although others should be given if available/applicable. The dropdowns will allow inputs from custom Text, Number, Outline Code, and Flag fields. If the selected Project field is a Lookup field, the “Use Lookup Desc” checkbox will become enabled. Checking this box will use the Lookup field's description as its export value instead of the field's item.
Note that there is an additional field, Task Type, exported as well. The tool automatically sets the task's Type. See the possible task types and their corresponding criteria below.
Task Types
SUMMARY - Summary field equals 'Yes'.
MILESTONE - Milestone field equals 'Yes'.
HAMMOCK - Task has no predecessors, and also has linked fields.
ACTIVITY - All tasks not meeting any of the other above criteria.
Note that the Earned Value Technique is translated from IPM's required value into the IPMDAR's required value. See how each IPM EVT value maps to the corresponding IPMDAR EVT value below ([IPM EVT] = [IPMDAR EVT]).
2-period X/Y EVTs (e.g. 50/50) = FIXED_X_Y
0/100 = FIXED_0_100
PC = PERCENT_COMPLETE
LOE = LEVEL_OF_EFFORT
AE = APPORTIONED_EFFORT
MW & MWPC = MILESTONE - Consider using a Custom Task Field to provide Milestone Weights.
BE = OTHER_DISCRETE - The additional IPMDAR field, “Other Earned Value Technique” is populated with “BCWP Entry”)
No IPM earned value techniques will be translated to “Standards” or “Units”, which are techniques also accepted by the IPMDAR.
Note that due to the end points of the Critical and/or Driving path(s) being dependent on contract requirements, and subject to change during the life-cycle the contract, manual identification of the associated activities using a Flag field is required.
Once a Settings Profile has been created, the export is ready to run. Input a valid Reporting Period End date, choose the duration unit of measure (“Days” or “Hours”), and click “Run Export”. The tool will gather the schedule data, export it to the corresponding JSON files, and then zip (compress) those files into a deliverable result. The exported files will always be saved in the same location as the schedule, unless the “Use Custom Location for Export Files” setting is checked in the IPM Settings profile.
7.3 Solving Issues
If data omissions or logical errors are found, they will be presented in a display grid after the tool is finished analyzing the schedule. Four columns of information about the issues are provided: Count, Issue Severity, Export File, and Issue Description. Note that the “Copy to Clipboard” button will copy the issue grid to the clipboard, allowing the data to be pasted into other applications such as Excel.
Count - Provides a row number for each issue.
Issue Severity - Tells the user if an issue is an error (export will not occur) or a warning (export will occur).
Export File - Tells the user which associated IPMDAR export file is affected by the issue.
Issue Description - Briefly describes the reason for the issue.
The errors must be resolved for the tool to export a result successfully. Please see below for a list of the possible errors and their resolutions.
7.3.1 Errors
“Invalid Task Subtype - Value must match predetermined list” - The Task Subtype field values must exactly match one of the following. Any other values will be flagged with this error message.
RISK_MITIGATION_TASK
SCHEDULE_VISIBILITY_TASK
SCHEDULE_MARGIN
CONTRACTUAL_MILESTONE
“Invalid Task Planning Level - Tasks with type 'ACTIVITY' must have a Planning Level value.” - The Task Planning Level field must be populated for all tasks categorized as activities. This includes all tasks that are not summaries, milestones, or hammock tasks.
“Invalid Task Planning Level - Value must match predetermined list.” - The Task Planning Level must also match one of the following predefined values accepted by the IPMDAR:
“The required fields (see documentation) must all be provided.” - Each task must have values for the following Project fields. Those missing one of these will be flagged with this error.
Start
Finish
Early Start
Early Finish
Late Start
Late Finish
“The conditional fields (see documentation) must all be provided or excluded” - Each task must either have values for all of the following fields or not have values for any of the following fields:
Baseline Duration
Start Variance
Finish Variance
Baseline Start
Baseline Finish
“Each Calendar must have at least one associated workshift - See calendar 'Calendar Name'“ - This error indicates that the calendar listed in the message ('Calendar Name') had no work shifts defined, meaning it had no default working times established for working days. A common cause of this is “24 Hour” calendars that have one shift that starts and ends at the same time (typically 12:00 AM). To resolve, use the “Change Working Time” button in Project and set work shifts for each calendar used by a task in the schedule.
7.3.2 Warnings
8. Import Baseline EV Data
This process uses a Microsoft Excel file exported from IPM to update your Microsoft Project file with earned value data.
The information being imported to your Project file represents all the EV data that was identified during the IPM baseline process. Work Package ID, Milestone ID, Milestone Weight, EVT, and schedule Exemption information is updated to the schedule to ensure a solid linking connection to the cost data.
NOTE: It is very important that this process is executed if schedule changes are to be uploaded to IPM, overwriting the schedule that is already there. Avoiding this step can cause EV information identified in IPM to be lost.
9. Export Calendars
Clicking on this utility exports your Microsoft Project file's calendar to a “*.CSV” text file that is saved in the same location as the Project file, unless you checked the “Use Custom Location for Export Files” setting in your IPM Settings profile. This text file is then uploaded into IPM to report the non-working days for the schedule.
10. Help
The Help button launches the local documentation in the default web browser.
11. About
The About button will display basic information about your version of the installation as well as contact information for questions about the utilities.
12. Version History
21.0.2 (1/30/2026)
Export IPMDAR:
Added compatibility for schedules with subprojects.
Corrected issue with opening settings on some schedules.
Export Status:
Corrected issue with validating Milestone summary tasks that did not have any Milestone children.
21.0.1 (1/20/2026)
Export IPMDAR:
Corrected issue with the user's Use Lookup preference on the field mapping setting not saving.
Corrected issue with midnight times in a calendar's work shifts.
Corrected issue with particular scenario causing the export to fail to continue if certain validation warnings were displayed.
21.0.0 (12/31/2025)
Upgrades the visual interface.
Removes the Other Utilities. The IPM Utilities is now an add-in focused solely on facilitating data transfer between Microsoft Project and IPM. The removed features can be found in the new OPDEC Schedule Assistant tool.
20.4.6 (11/11/2024)
Resolves issue with Other Utility Settings profiles not being selected properly when changing the dropdown.
Users are now prevented from creating settings profile names with leading/trailing whitespace.
20.4.5 (10/22/2024)
Resolves error when importing status against a task with an elapsed duration.
20.4.4 (9/23/2024)
Updated the following processes to accommodate for newly introduced 2-period X/Y Earned Value Techniques of 10/90, 60/40, 75/25, and 90/10
Import Status
Export Status
Export BCR
Export IPMDAR
20.4.3 (6/11/2024)
Import Status
Updated the results report to include information about each task's control account and also display forecast date shifts.
Added new feature to allow custom Project field data to be exported into the Import Status results report.
Resolved an error that could occur when importing status multiple times consecutively.
General
Removed unnecessary prerequisites from installer.
Added OPDEC, Inc. as the Trusted Publisher for the add-in assembly.