Datasets & modeling
Available tables, key relationships, and financial reporting rules.
Your manifest and OData $metadata list the fields and types available in your environment. Tables can be empty; availability depends on your Acuity version.
Jump to Financial example, Relationships, or Custom fields.
Dataset catalog
Core tables
| Dataset | Row | Key |
|---|---|---|
projects | Project | project_pk |
proposals | Proposal, including retained converted proposals | proposal_pk |
financials | Annual or monthly financial detail | financial_pk |
organizations | Organization | organization_pk |
portfolios | Project portfolio | portfolio_pk |
proposal_portfolios | Proposal portfolio | proposal_portfolio_pk |
team_members | Team member | team_member_pk |
resources | Resource roster entry | resource_pk |
BI resources contains availability and archive fields, not period allocation or NPT cells. Those are in the separate project and proposal resource snapshots.
Project and proposal records
These tables include parent context such as parent_type, parent_id, project_id, proposal_id, and parent_name.
| Dataset | Row | Key |
|---|---|---|
risks | Risk | risk_pk |
issues | Issue | issue_pk |
status_reports | Status report | status_report_pk |
milestones | Milestone | milestone_pk |
project_tasks | Task | project_task_pk |
benefits | Benefit | benefit_pk |
decisions | Decision | decision_pk |
action_items | Action item | action_item_pk |
lessons | Learned lesson | lesson_pk |
dependencies | Dependency | dependency_pk |
project_scoring_criteria_values | Scoring value | project_scoring_value_pk |
project_learned_lesson_options | Lesson-option assignment | project_learned_lesson_option_pk |
Reference and portfolio tables
| Dataset | Row | Key |
|---|---|---|
scoring_criteria | Scoring criterion | scoring_criterion_pk |
scoring_criterion_options | Scoring option | scoring_criterion_option_pk |
categories | Category | category_pk |
departments | Department | department_pk |
strategic_objectives | Strategic objective | strategic_objective_pk |
project_priorities | Priority | project_priority_pk |
dependency_types | Dependency type | dependency_type_pk |
lifecycles | Lifecycle | lifecycle_pk |
milestone_performances | Milestone performance option | milestone_performance_pk |
company_learned_lesson_options | Company lesson option | company_learned_lesson_option_pk |
portfolio_decisions | Portfolio decision | portfolio_decision_pk |
portfolio_risks | Portfolio risk | portfolio_risk_pk |
phases is not currently an enabled BI dataset.
Financial example
Use financials.parent_type, parent_name, project_number, period_type, year, and financial_category with these measures:
Planned Amount = SUM(financials[planned_amount])
Actual Amount = SUM(financials[actual_amount])
Actual Minus Planned = [Actual Amount] - [Planned Amount]- Amounts are already in company currency units. Do not divide by 100. Keep benefit signs.
- Select the intended categories:
capital_expenditure,operating_expenditure,financial_benefit, ordepreciation. Keep depreciation separate for cash-expenditure measures. - Annual mode exports annual detail rows; monthly mode exports monthly rows. For monthly charts, filter
period_type = monthlyand usemonthwithyear. Setyearto Don't summarize. - Keep
financial_pkas text. Useparent_namefor combined project/proposal visuals. - Avoid adding project/proposal summary amounts such as
planned_costto financial detail amounts. - After financial-mode changes, wait for a successful Acuity export and run a full table refresh. Compare a known project and proposal for the same category and period.
Relationships
Use unique IDs with one-to-many, single-direction relationships from dimension to child. Avoid competing filter paths. Check the manifest for additional joins.
| Dimension key | Child column |
|---|---|
organizations.organization_pk | projects.organization_id, proposals.organization_id, financials.organization_id |
portfolios.portfolio_pk | projects.portfolio_id |
proposal_portfolios.proposal_portfolio_pk | proposals.proposal_portfolio_id |
projects.project_pk | Child project_id, including financials.project_id |
proposals.proposal_pk | Child proposal_id, including financials.proposal_id |
team_members.team_member_pk | Project/proposal project_manager_id or sponsor_id |
resources.resource_pk | Owner/assignee IDs, such as risks.risk_owner_resource_id or project_tasks.assigned_resource_id |
Use separate role dimensions or inactive relationships where manager and sponsor paths would be ambiguous. Preserve null values where they differ from zero or false; CSV represents missing scalar values as empty cells.
Converted proposals
A converted proposal can appear in both projects and proposals. Appending them can double-count the record. Financials uses its current parent_type, with either project_id or proposal_id populated.
For a combined parent dimension, keep one row per underlying ID, prefer the project row when duplicated, and join that ID to child parent_id.
Custom fields
Reportable custom fields are published columns in projects, proposals, risks, and resources. Use the manifest's actual column name, display_name, custom_field_id, and type metadata. Do not derive column names from current UI labels.
New or changed fields may need schema publication and generation. Check published_schema.published_at and pending_changes; ask Support about missing fields or incompatible type changes. Then refresh the schema in Desktop and review affected transformations and visuals. Deprecated columns may remain for compatibility.