Project Management migration
Field-level mapping, validation, and rollback between OpenText Project and Portfolio Management (PPM) and Asana. We move data and schema; workflows are rebuilt natively in Asana.
OpenText Project and Portfolio Management (PPM)
Source
Asana
Destination
Compatibility
9 of 12
objects map 1:1 between OpenText Project and Portfolio Management (PPM) and Asana.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from OpenText Project and Portfolio Management to Asana is a portfolio-to-project migration, not a simple record copy. OpenText PPM structures work as a multi-level hierarchy Demands into Programs into Projects with dedicated resource management, financial budget lines, and stage-gate governance; Asana models work as Teams containing Projects containing Tasks with Portfolios as a one-level aggregation layer. Programs map to Asana Portfolios or Projects depending on whether the customer treats them as executive-level containers or delivery-level units. We perform a pre-migration schema discovery pass to enumerate every active OpenText custom property, map each to an Asana custom field, and flag the financial module and demand-management objects that have no native Asana equivalent so the customer can plan a replacement approach before migration begins. Workflows, stage-gate approval chains, and resource capacity heatmaps do not migrate; we deliver a written inventory of every automation and governance rule requiring manual rebuild in Asana.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a OpenText Project and Portfolio Management (PPM) object lands in Asana, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
OpenText Project and Portfolio Management (PPM)
Program
Asana
Portfolio or Project
1:1OpenText Programs (top-level containers grouping related projects) map to Asana Portfolio if the customer uses them as executive-level governance containers, or to an Asana Project if the customer uses Programs as delivery-level units. We determine the mapping during scoping by reviewing the customer's OpenText Program usage patterns. Program-linked financial rollups, stage-gate lifecycle status, and owner assignment migrate to custom fields on the destination Portfolio or Project.
OpenText Project and Portfolio Management (PPM)
Project
Asana
Project
1:1OpenText Projects map directly to Asana Projects. We preserve project name, description, start and end dates, status, owner assignment, and cross-project dependencies. Dependencies in OpenText (finish-to-start, start-to-start, finish-to-finish, start-to-finish with lag) map to Asana dependencies using the Dependents API field. Custom fields on OpenText Projects migrate to Asana project-level custom fields.
OpenText Project and Portfolio Management (PPM)
Task
Asana
Task
1:1OpenText Tasks map to Asana Tasks within the target Project. Start date, due date, percent complete, priority, assignee, and description transfer directly. Task hierarchy (WBS levels) migrates as subtasks in Asana where the nesting depth is preserved. We note that Asana does not support multi-level task numbering; if the customer uses WBS codes in OpenText, those migrate as custom text fields.
OpenText Project and Portfolio Management (PPM)
Portfolio
Asana
Portfolio
1:1OpenText Portfolios (top-level governance aggregations above Programs) map to Asana Portfolios. Portfolio-level financial cost lines and budget allocations migrate to custom fields on the Portfolio. Portfolio custom fields in Asana are scoped to the Portfolio level only and do not cascade to child Projects or Tasks; they are a completely separate field namespace from project-level custom fields.
OpenText Project and Portfolio Management (PPM)
Resource
Asana
Member (User in Team)
1:1OpenText Resources (staff members, equipment, or capacity units) map to Asana Members. We resolve OpenText resource_email or owner_email to an Asana user account. OpenText skill profiles and availability calendars do not have a native Asana equivalent; skill data migrates as a multi-select custom field on the Asana user profile, and availability data is flagged as requiring manual reconstruction in Asana's workload view.
OpenText Project and Portfolio Management (PPM)
Financial Line
Asana
Custom Fields on Project or Portfolio
lossyOpenText budget cost lines, benefit lines, and financial rollups have no native Asana equivalent. We migrate available financial data as numeric custom fields (Budget, Actual Cost, Forecast, Benefit) on the relevant Asana Project or Portfolio. Top-down budget allocations migrate as custom fields with the budget type; actuals migrate as updateable fields for post-migration tracking. If the customer requires ongoing financial management, we recommend a dedicated finance tool integration (NetSuite, Excel connector, or a budgeting platform) as part of the post-migration workflow.
OpenText Project and Portfolio Management (PPM)
Demand
Asana
Project or Task (intake replacement)
1:manyOpenText Demands (incoming work requests or ideas) have no direct Asana equivalent. Active Demands with clear scope migrate as Asana Projects; ill-defined Demands or ideas migrate as Tasks in an intake project that the customer's PMO maintains. Approval status and priority migrate as custom fields. The customer plans a replacement intake process (Asana form, Jira Service Management intake, or manual triage) as part of post-migration setup.
OpenText Project and Portfolio Management (PPM)
Request
Asana
Task
1:1OpenText Requests (workflow items in the demand-management intake process) migrate as Tasks in the intake Project. Submission data, requestor, approval status, and request type migrate as standard or custom fields. Workflow state transitions from OpenText (e.g., Submitted, Under Review, Approved, Rejected) migrate as a custom picklist field representing the request lifecycle.
OpenText Project and Portfolio Management (PPM)
Time Entry
Asana
Task (as timesheet note)
1:1OpenText time entries logged against Projects or Tasks migrate as Task-level notes or a custom duration field in Asana. Approval history on timesheets is not always fully exportable and is flagged as a partial-migration item. Asana does not have a native timesheet approval workflow; if the customer requires this, we recommend a separate time-tracking integration (Harvest, Toggl, or a custom Asana form-based timesheet process) post-migration.
OpenText Project and Portfolio Management (PPM)
Attachment / Document
Asana
Project or Task Attachment
1:1Documents attached to OpenText Projects or Tasks are extracted from OpenText's file management layer and uploaded to the corresponding Asana Project or Task as attachments. We handle the binary file transfer in a parallel stream to the record migration, preserving the association to the correct project or task. OpenText's internal document versioning does not transfer; the latest version of each document migrates without version history.
OpenText Project and Portfolio Management (PPM)
Dependency
Asana
Dependency (Asana Dependents field)
1:1OpenText project-level and task-level dependencies (finish-to-start, start-to-start, finish-to-finish, start-to-finish with lag) migrate as Asana dependencies using the Dependents field on Tasks. Lag values transfer as custom numeric fields where needed. Cross-project dependencies are fully supported in Asana; the destination project must exist before the dependency reference is resolved, so we sequence project migration to resolve references before dependent records are created.
OpenText Project and Portfolio Management (PPM)
Custom Property (all objects)
Asana
Custom Field (project-level or portfolio-level)
lossyOpenText custom properties on Programs, Projects, Tasks, Resources, Demands, and Requests are enumerated during the pre-migration schema discovery pass. Each custom property maps to an Asana custom field of the matching data type (text, number, date, picklist, multi-select). Portfolio-level and project-level custom fields in Asana are separate namespaces; we assign each OpenText custom property to the correct destination scope. Tier or edition constraints on custom field limits are reviewed during scoping (Asana Starter allows 15 project-level custom fields; Business and Enterprise allow 100+).
| OpenText Project and Portfolio Management (PPM) | Asana | Compatibility | |
|---|---|---|---|
| Program | Portfolio or Project1:1 | Fully supported | |
| Project | Project1:1 | Fully supported | |
| Task | Task1:1 | Fully supported | |
| Portfolio | Portfolio1:1 | Fully supported | |
| Resource | Member (User in Team)1:1 | Fully supported | |
| Financial Line | Custom Fields on Project or Portfoliolossy | Fully supported | |
| Demand | Project or Task (intake replacement)1:many | Fully supported | |
| Request | Task1:1 | Fully supported | |
| Time Entry | Task (as timesheet note)1:1 | Fully supported | |
| Attachment / Document | Project or Task Attachment1:1 | Fully supported | |
| Dependency | Dependency (Asana Dependents field)1:1 | Fully supported | |
| Custom Property (all objects) | Custom Field (project-level or portfolio-level)lossy | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
OpenText Project and Portfolio Management (PPM) gotchas
Acquisition lineage creates schema version ambiguity
Limited publicly documented API constrains automation
Large dataset performance degrades significantly
Custom properties schema varies by instance
File attachments require separate transfer from records
Asana gotchas
Automation rules have no export representation
API rate limits cap bulk migration throughput
Portfolios are view-only objects that do not hold data
Custom field enum options cannot be updated via API
Subtasks do not appear in project views by default
Pair-specific challenges
Migration approach
Technical discovery and schema audit
We connect to the OpenText PPM environment (via API access where available, file-based export fallback confirmed during scoping) and enumerate all active objects, custom properties, and relationship metadata. This includes Programs, Projects, Tasks, Resources, Financial Lines, Demands, Requests, Portfolios, Dependencies, and all custom field definitions with their data types. We audit the schema version to identify any Micro Focus-era legacy artifacts and flag deprecated object types for exclusion. The discovery output is a written data inventory and a mapping specification reviewed by the customer's PMO lead before migration design begins.
Financial and intake gap analysis
We analyze the OpenText financial module and demand-management usage to determine what migrates to Asana custom fields, what requires a replacement tool recommendation, and what is archived as reference data. If the customer uses budget rollups, cost-benefit analysis, or resource capacity heatmaps, we document the gap against Asana's native capabilities and recommend a post-migration replacement strategy (custom fields, third-party integration, or manual process). If the customer uses OpenText Demands and Requests for PMO governance, we map the active workflow items to Asana Projects or Tasks and document the intake rebuild requirements.
Asana workspace and schema design
We configure the destination Asana workspace: Teams, Projects, Portfolios, and custom fields. Custom fields are created to match OpenText custom property types (text, number, date, picklist, multi-select) with project-level or portfolio-level scope assigned based on the mapping specification. If the customer uses Asana Goals, we confirm whether OpenText strategic alignment data maps to Goals or is archived as a reference report. All schema is deployed into an Asana Sandbox or test workspace first for validation before production migration begins.
Dependency sequencing and resource reconciliation
We extract the full dependency graph from OpenText PPM (project-level and task-level finish-to-start, start-to-start, finish-to-finish, and lag values). Dependencies are sequenced so that the referenced parent record is created before the dependent record, avoiding broken references. We extract every distinct OpenText Resource and match by email to an Asana user account. Resources without a matching Asana user are held in a reconciliation queue for the customer's admin to provision before record import resumes.
Production migration in dependency order
We run production migration in record-dependency order: Portfolios (if separate from Programs), Programs, Projects (with cross-project dependencies resolved), Tasks (with subtask hierarchy preserved), Resources (as Asana Members with skill custom fields), Financial data (as custom fields on Projects and Portfolios), Demands and Requests (as Projects or intake Tasks), Attachments (parallel file transfer stream), and Dependencies (added after all Projects and Tasks exist). Each phase emits a row-count reconciliation report before the next phase begins.
Cutover, validation, and rebuild handoff
We freeze OpenText PPM writes during cutover, run a final delta migration of any records modified during the migration window, then enable Asana as the system of record. We deliver a written inventory of every OpenText workflow, stage-gate approval chain, resource capacity heatmap, and demand-management intake rule requiring rebuild in Asana. We support a one-week hypercare window where we resolve reconciliation issues raised by the customer's PMO. We do not rebuild OpenText workflows as Asana rules or automations inside the migration scope; that is a separate engagement or an internal admin task.
Platform deep dives
OpenText Project and Portfolio Management (PPM)
Source
Strengths
Weaknesses
Asana
Destination
Strengths
Weaknesses
Complexity grading
Standard Project Management migration. 3 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across OpenText Project and Portfolio Management (PPM) and Asana.
Object compatibility
3 of 8 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
OpenText Project and Portfolio Management (PPM): Not publicly documented for the PPM product specifically.
Data volume sensitivity
OpenText Project and Portfolio Management (PPM) doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during OpenText Project and Portfolio Management (PPM) to Asana migration scoping. Not seeing yours? Book a call.
Walk through your OpenText Project and Portfolio Management (PPM) to Asana migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave OpenText Project and Portfolio Management (PPM)
Other ways to arrive at Asana
Same-Project Management migrations
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.