Table of Contents

POL Migration - Frequently Asked Questions

This page collects questions raised by Altus Partners during Project Online migrations. For overview material see Migration Overview; for the procedure see Migration Process.

General

Q1.1 Can the scripts be used to extract data from Project Server?

The migration scripts are configured for Project Online and SharePoint Online. They will need updates to extract from Project Server. Investigation is planned for Q4-2026, once the Project Online migrations are complete.

Q1.2 Who can use the migration scripts?

The scripts are designed for Altus Partners assisting their clients with Project Online migrations to Altus. They must not be shared directly with customers or clients.

Q1.3 Is there a cost for the schedule migration scripts?

The scripts are offered as part of the Altus subscription. Altus also offers a fixed-price package for customers who want Altus to run the migration. Partners may offer their own migration package.

Q1.4 Will there be a UI for the scripts?

No — there is not enough time before the Project Online retirement to build a UI. The focus is on completing the tools and giving Partners and Customers six clear months to migrate.

Q1.5 Will the scripts work with GCC-High environments?

Yes. Add the following before running the scripts:

  • Start PowerShell with -AzureEnvironment 'USGovernmentHigh'.
  • Set the global variable $global:Environment = 'AzureUSGovernment'.

Project Online data

Q2.1 Will Local Resources be migrated to Altus?

No. They remain in your MS Project schedule and can be substituted with Altus Bookable Resources later.

Q2.2 Can the migration process be run multiple times?

Yes. On subsequent runs the Altus schedule is only updated where items in the source .MPP file have changed. The same applies to project and resource information.

Q2.3 Will time-phased data be migrated?

A scheduler enhancement to publish time-phased cost data to the Altus finance application is planned for early May 2026. Tracking: https://portal.productboard.com/yyt7thvepjsnv8mh5ifqk1yo/c/116-altus-tasks-time-phased-effort-and-resourcing.

Q2.4 Will custom fields be migrated?

Yes — Project, Resource, and Task custom fields can all be migrated. Limitation: non-text-based lookup tables for task custom fields are not output by the Microsoft export scripts and therefore cannot be migrated by the Altus scripts.

Q2.5 Will baselines and resource rates be migrated?

Yes. All 11 Project Online baselines can be migrated, and all cost rates per resource are migrated to the Altus bookable resource. Baseline numbering:

Type Baseline numbers Notes
Protected 0 – 5 Can be locked down by security group.
Unprotected 6 – 10 Open to any user.

Q2.6 Will timesheet data be migrated?

No — the Dataverse storage cost would be significant. Existing actuals in the .MPP are protected by the assignment-level Protected Actuals Before date. Approved Altus timesheet actuals are imported from this date onwards, so historical actuals are preserved without needing to migrate timesheets.

Protected Actuals Before date

Q2.7 Will cost data be migrated?

A new MS Project Cost API will publish all costs (Work, Material, and Cost resources) from Project Desktop to the Altus Finance application. Further details to be shared at the May 2026 Partner meeting.

Q2.8 How long does the schedule migration take?

Indicative timings (network speed and schedule complexity will vary):

Step Time
Export script ~15–20 seconds per .MPP and its associated JSON
Resource import ~1–2 minutes per 100 resources
Project import ~15–20 seconds per project

Schedule publish times depend on schedule size:

Size Tasks Time
Small < 200 < 30 seconds
Medium 200 – 1,000 30 seconds – 1 minute
Large 1,000+ 1+ minutes

Q2.9 Why are Workflow History and Portfolio Analyses "Won't have"?

Both have low data volumes and low user traffic in Project Online. For workflows, projects can be moved to the relevant Altus BPF stage by the user (or in bulk via XrmToolBox). The Portfolio Analyser data structure differs significantly from the Altus Strategic Portfolio Analyser, and the manual effort to recreate it is small.

Q2.10 How will I know the migration has succeeded?

Each script writes a verbose log file. The log captures successes and failures, allowing you to fix data and re-run as needed.

Q2.11 What about assignments for non-System Users?

Assignments are only honoured in Altus where the assigned person exists in the System User table. The user does not need to be active — bookable resources can be linked to inactive system users. If no system user exists, the bookable resource is not created and the assignment is removed; the task itself is published but appears unassigned.

Q2.12 Can I choose which task custom fields are mapped?

Yes. The scripts migrate Project Online enterprise task custom fields to MS Project local fields, and you decide both the local field used and the mapping to the Altus task custom field. See Migration Process § 7.

Q2.13 Why is the start date different between Altus and MS Project?

In MS Project the start date is set explicitly at the project level. In Altus the project start date is automatically calculated from the earliest task start date. This may produce different values for the same project.

MS Project — Start Date setting:

MS Project start date setting

Altus — Start Date calculated from earliest task:

Altus start date calculated from tasks

Q2.14 Can I migrate hierarchical lookup tables?

Yes. Note that Dataverse currently has no native tree view, so hierarchical lookups are surfaced with . separators between levels in the Power Apps lookup picker.

Hierarchical lookup table in Altus

Hierarchical lookup picker

Q2.15 How many MS Project task fields can I map?

Task-level enterprise custom fields are converted to MS Project local fields, which are limited:

Local field type Number available
Date 10 (Date1 – Date10)
Duration 10 (Duration1 – Duration10)
Finish 10 (Finish1 – Finish10)
Flag 20 (Flag1 – Flag20)
Number 20 (Number1 – Number20)
Start 10 (Start1 – Start10)
Text 26 (Text1 – Text26)
Outline Code 10 (Outline Code1 – Outline Code10)

If you have more enterprise task custom fields than slots available, the surplus cannot be mapped between MS Project Desktop and Altus. You can still create those fields directly on Altus tasks and edit them in the Altus schedule.

Q2.16 How does the schedule migration handle different currencies?

Pass -ProjectCurrency to Publish-MPPsToAltus.ps1 set to the matching currency. See Troubleshooting § Script currency issue.

ProjectCurrency parameter example

SharePoint Online list items

Q3.1 What lists do the scripts migrate OOTB?

The default Risks and Issues registers from Project Online. All OOTB columns are mapped to the Altus Risk and Issue tables.

Q3.2 Can I migrate list custom fields?

Yes. Supported types: Boolean, Date and Time, Date Only, Decimal, Lookup, Money, Number, Options (Choice), and Text. Configure in export.config.json — see Migration Reference § Risks.

Q3.3 Can I migrate custom lists?

Yes. Add an entry to export.config.json for each custom SharePoint list. Example blocks are in Migration Reference § Custom lists.

SharePoint Online documents

Q4.1 Will metadata and version history be migrated?

Yes. Documents are downloaded with metadata tags, and full version history is exported when -ExcludeVersionHistory $false is passed to the export script.

Q4.2 Will sub-folders be migrated?

Yes. The exporter walks each project's document library and preserves files within sub-folders.

Q4.3 Where can we migrate documents to?

After export, you can upload the documents to any of:

  • A Teams / Microsoft 365 Group created for the Altus project.
  • A new non-Project-Online SharePoint document library.
  • An existing non-Project-Online SharePoint document library.