Cost rollup in project currency

  • Release version: Yokohama
  • Updated January 30, 2025
  • 3 minutes to read
  • Summarize
    Summarized using AI
    This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.

    Summary of Cost Rollup in Project Currency

    This content explains how cost rollup works in projects and sub-projects that use different currencies within ServiceNow. It details how amounts entered in functional currency fields are converted to project currency, how financials roll up from sub-projects to parent projects, and the impact of configuration properties on these processes.

    Show full answer Show less

    Key Features

    • Currency Conversion for Project Amounts: When entering amounts in functional currency fields (like Planned capital, Planned operating, Actual cost, and Planned benefit), these values are automatically converted to the project currency and saved in corresponding project currency fields.
    • Constraints on Manual Entry: Manual entry or updates to functional currency fields are only allowed if the project does not have associated cost plans, benefit plans, or expense lines.
    • Multicurrency Cost Rollup Property (com.snc.project.multicurrency.rollupifdifferent): Controls how cost rollup behaves when parent and sub-projects have different project currencies.
      • True: Enables association of sub-projects with different currencies and rolls up amounts by converting sub-project costs to the parent project currency using the Budget Reference Rate. The rolled-up amount is an estimate due to exchange rate variations.
      • False: Allows association regardless of currency differences but only rolls up costs when parent and sub-project currencies match.
    • Interaction with Functional Currency Rollup Property (com.snc.project.rollup.cost):
      • If com.snc.project.rollup.cost is false, costs from sub-projects do not roll up regardless of currency settings.
      • If com.snc.project.rollup.cost is true and multicurrency rollup is false, rollup only occurs when project currencies match.
      • If both properties are true, rollup supports sub-projects with same or different currencies.

    Key Outcomes

    • ServiceNow customers can manage projects with different currencies more effectively by configuring the currency rollup properties to suit their organizational needs.
    • Accurate rollup of costs occurs when parent and sub-project currencies match; otherwise, rollups provide approximate values due to currency conversion.
    • Proper configuration prevents errors such as disallowed associations between projects of differing currencies when rollup settings are incompatible.
    • Understanding the interplay between the two main properties ensures correct setup for cost rollups and prevents system errors during project association.

    Cost rollup calculation in projects and sub-projects with different currencies varies with the budget reference rate. The rate at which the amount is converted depends on the conversion rate.

    Convert amount entered in functional currency fields to project currency

    When you create a project in functional currency of the Default view, you can manually enter or update the amount in the Planned capital, Planned operating, Actual cost, and Planned benefit fields. As you enter values in these fields, the amount is converted to project currency and stored in the corresponding project currency fields such as Planned cost in project currency, Planned operating in project currency, Actual cost in project currency, and Planned benefit in project currency fields.

    Note:
    You can do so only if the project does not have a cost plan, benefit plan, or expense lines attached to it.

    Roll up project financials from sub-projects to parent projects

    Use the com.snc.project.multicurrency.rollup_if_different property for financial rollups when the sub-projects and parent project have different project currencies.

    Table 1. Multicurrency cost rollup property behavior
    Property flag Behavior
    True If the property is set to True, then you can:
    1. Associate a sub-project to a parent project, where both the projects have different project currencies.
    2. Roll up the sub-project amounts to the parent project amounts. However, the accuracy of the rolled up amount in the parent project varies because of the currency variation.
      • If the project currencies of the parent project and the sub-project are the same, then the project currency amounts from the sub-projects to its parent and the top project are rolled up by adding up the amounts in the sub-project, and the rolled up amount is accurate.
      • If the project currencies of the parent project and the sub-project are different, then all the costs of the sub-projects are converted to the project currency of the parent or the top project, referencing the Budget Reference Rate. The rate at which the amount is converted depends on the exchange rates between the project currencies, and the specified time period at which the conversion is made. Hence, the rolled up amount is only an estimate or an approximate value.
    False If the property is set to False, then you can:
    1. Associate any number of sub-projects to a parent project, where the project currencies are same or different.
    2. Roll up only if the project currencies of the sub-project and the parent project match.

    However, the behavior of com.snc.project.multicurrency.rollup_if_different property is different when flagged along with com.snc.project.rollup.cost property.

    Table 2. Multicurrency cost rollup property in combination with functional currency property
    Properties flag Behavior
    com.snc.project.rollup.cost property is false You can associate any sub-projects with parent project that have same or different project currency but the costs of sub-projects do not roll up to the parent project.
    com.snc.project.rollup.cost property is true and com.snc.project.multicurrency.rollup_if_different property is false You can associate sub-projects with parent project that has the same project currency.
    com.snc.project.rollup.cost property is true and com.snc.project.multicurrency.rollup_if_different is true You can associate any sub-project that has the same or different project currency with the parent project.

    Illegal association of properties and possible errors

    Following are the possible errors that may occur while making an illegal association:

    Table 3. Property combinations for sub-project and parent project association
    com.snc.project.rollup.cost com.snc.project.multicurrency.rollup_if_different Behavior
    False Either true or false Can associate sub-project to parent project even though project currency of sub-project and parent project is different but costs from sub-project to parent project cannot be rolled up.
    True False Cannot associate sub-project to parent project if project currency of the sub-project and parent project is different.

    In such case of an association, an error message: System policy does not allow parent and child projects to have different project currency pops up.