Actuals

Actuals in PSA are the result of calculations that are run on the transactions that occur in a business recordClosed Timecard Split, Expense, Milestone, Miscellaneous Adjustment or Budget. PSA tracks actuals by incrementing values by specified amounts in each time period. Actuals include:

  • Bookings
  • Billings
  • Revenue
  • Costs
  • Margin

Actuals Processing

Depending on the configuration set in the Actuals configuration groupClosed A collection of configuration options contained in the configuration groups tab that defines behavior of a PSA object or feature., actualsClosed Totals for a given time period. are updated by processing transaction deltas either in Immediate, Scheduled, or Continuous mode.

  • When the Immediate mode is set, actuals are processed in real-time.
  • When the Scheduled mode is set, a batch mechanism processes changes to transactions resulting from actions on a business recordClosed Timecard Split, Expense, Milestone, Miscellaneous Adjustment or Budget. Scheduled mode is more scalable and fault-tolerant than immediate mode. When in scheduled mode, transactions are scheduled for processing. For more information, see Scheduling of Actuals Calculation.
  • In the Continuous mode, when unprocessed transaction deltas are created, a queueable is triggered in the background to process these transaction deltas. For more information about changing the mode and configuring continuous mode configuration options, see Actuals Settings.

For more information, see:

You can control when transactions are processed using the Actuals Verifier tab. For more information, see Verifying Actuals.

PSA tracks actuals by incrementing values by the specified amount in each time periodClosed A period of time with a start date and an end date to which forecasts, actuals calculations, billing event batches, utilization calculations and region plans belong.. You can use the Actuals Verifier to recalculate actuals. When you recalculate actuals using the Actuals Verifier, PSA reprocesses all transactions that have occurred on each item in each regionClosed A level of hierarchy used in PSA to which other objects belong such as resources, opportunities and projects., practiceClosed A level of hierarchy used in PSA to which other objects belong such as resources, opportunities and projects., groupClosed A level of hierarchy used in PSA to which other objects belong such as resources, opportunities and projects., projectClosed A collection of activities and related items to be managed over a defined time range, such as timecards, expenses, milestones and budgets., or resourceClosed A contact that works on a project.. This can take a long time to process.

Tip:

You must enter a time period on the record that you want actuals to appear on.

Recalculating Actuals

Discrepancies can occur between actuals and the transactions on business records. In PSA, you can verify and recalculate actuals.

Recalculating Resource and Project Actuals

PSA recalculates actuals for specific projects and resources. When you recalculate project actuals, the system automatically includes parent and child projects even when you don't select them.

Note:

If you want to recalculate actuals for anything other than specific projects or resources, use the Actuals Verifier.

Updating Actuals for Reorganized Projects

PSA updates actuals for reorganized projects when a project’s parent project is updated. They are updated in both Scheduled and Continuous modes.

In Scheduled Mode

When a project’s hierarchy is updated, the parent project's Actuals: Need Recalc checkbox is automatically selected. Then the scheduled project actuals recalculation job recalculates actuals for these projects.

In Continuous Mode

When a project’s hierarchy is updated, actuals are automatically updated by triggering a new queueable job to run in the background. This job creates transaction deltas to remove the values from the old parent project's actuals and adds values to the new parent project's actuals. The ProjectActualsCalculateDeltaContinuous job is paused when the deltas are generated due to project hierarchy change. Once the deltas have been generated, the continuous mode is restarted to process the transaction deltas.

Note: The continuous mode job gives priority to transaction deltas created from new business records over the transaction deltas created because of a change in the project hierarchy.

If the transaction delta creation process fails with errors, an app log is created and the Actuals: Need Recalc checkbox is set to true for that project. Such a project’s actuals must be recalculated either manually or with the scheduled recalculation job.

For more information, see Project Fields.

Monitoring the Actuals Job

From the Async Job Records tab, you can monitor the status of Actuals jobs in your Salesforce org. For more information, see Monitoring Asynchronous Jobs.

Actuals Verifier

You can use the actuals verifier to check for inconsistencies in the actuals numbers reported against the transactions in PSA. During actuals verification, PSA creates verification actuals records, which it uses to compare against the actuals records. If inconsistencies are detected, you can choose whether to recalculate actuals. When you recalculate actuals using the Actuals Verifier, PSA reprocesses all transactions that have occurred on each item in the region, practice, group, project, or resource that you select. This can take a long time to complete.

Warning:

Recalculating actuals does not work if the transaction records on your org have been modified. We recommend that you only recalculate all actuals as a last resort. Contact your Certinia consultant or Certinia Customer Support before recalculating actuals or using the Actuals Verifier.

Calculating Project Actuals in Different Currencies

If you are using multiple currencies, you can set an alternate currency to calculate actuals, compare, and report the project actuals in different currencies. For more information, see Displaying Project Actuals in Alternate Currencies.

Currency Validation

An error displays if the currency of the parent actuals record does not match and a new actuals record is being created or the currency of the actuals record is changed.