Billing Contracts Intermediate Processes

After importing the input fields and augmenting them with the data from their lookup objects, the Financial Analytics dataflow filters out non-relevant or repeated records.

You can use the dataflow editor in Analytics Studio to visualize the Financial Analytics dataflow and its nodes. Alternatively, you can download the dataflow definition file which is a JSON file representing the dataflow and its logic. For more information on the dataflow editor and the dataflow definition file, see Configure the Dataflow in the Salesforce Help.

Warning:

Modifying the Financial Analytics dataflow might result in the loss of functionality. Contact your system administrator before using the data manager tool in Analytics.

Filters

These are the main filter nodes in the Billing Contracts flow.

Filter Node

Description

FFBC_ContractLineItem_FILTER

Filters the contract by status and type.

Calculated Fields

These are the fields calculated by the Billing Contracts flow.

Field API Name

Description

CompositeKey

These fields are used in preliminary calculations by the Billing Contracts flow and are not present in the output dataset.

NextContractLeftKey
PreviousContractLeftKey
TempNextContractRightKey
TempPreviousContractLineItemLeftKey
TempPreviousContractRightKey
PreviousContractRightKey
NextContractRightKey
ComputedNextOpportunityId
ComputedNextOpportunityName
ComputedNextOpportunityProcessAction
RenewedContractLineItemLeftKey
RenewedContractLineItemRightKey
Churn

The churn value calculated using the following formula:

When 'ContractLineItemFfbcEndDate' is not null && 'NextContractLineItemId' == \"Unknown\" && 'ContractFfbcStatus' != \"Superseded\" && 'SystemNextOpportunityProcessAction' != ${Variables.ReplaceActionLiteral} then -'ValueContractLineItemFfbcMonthlyRecurringRevenue'

ChurnAnnual Calculates the annualized churn value.
ContractAdjustmentsReplaced

The contract adjustments replaced calculated using the following formula:

When 'SystemNextOpportunityProcessAction' == ${Variables.ReplaceActionLiteral} then -'ValueContractLineItemFfbcMonthlyRecurringRevenue'

ContractAdjustmentsReplacedAnnual Calculates the annualized contract adjustments replaced value.
ContractAdjustmentsReplacement

The contract adjustments replacement calculated using the following formula:

When 'SystemProcessAction' == ${Variables.ReplaceActionLiteral} && 'ContractFfbcStatus' != \"Superseded\" then 'ValueContractLineItemFfbcMonthlyRecurringRevenue'.

ContractAdjustmentsReplacementAnnual Calculates the annualized contract adjustments replacement value.
DownSell

The down sell value calculated using the following formula:

When 'PreviousContractLineItemId' != \"Unknown\" && 'SystemProcessAction' != ${Variables.UpsellActionLiteral} && 'ValueContractLineItemFfbcMonthlyRecurringRevenue' < 'ValueTotalPreviousMonthlyRecurringRevenue' then'ValueContractLineItemFfbcMonthlyRecurringRevenue' - 'ValueTotalPreviousMonthlyRecurringRevenue'

DownSellAnnual Calculates the annualized down sell value.
NetNew

The net new value calculated using the following formula:

When 'SystemProcessAction' == ${Variables.NewContractActionLiteral} && 'ContractFfbcStatus' != \"Superseded\" then case when 'PreviousContractLineItemId' != \"Unknown\" then 'ValueTotalPreviousMonthlyRecurringRevenue' else 'ValueContractLineItemFfbcMonthlyRecurringRevenue'

NetNewAnnual Calculates the annualized net new value.
RenewalGap

The renewal gap value calculated using the following formula:

When 'SystemProcessAction' == ${Variables.RenewActionLiteral} && 'ContractLineItemFfbcPreviousContractLineItemId' != \"Unknown\" then daysBetween(toDate('RenewedContractLineItemFfbcEndDate', \"yyyy-MM-dd\"), toDate('ContractLineItemFfbcStartDate', \"yyyy-MM-dd\")) - 1 when 'SystemNextOpportunityProcessAction' == ${Variables.RenewActionLiteral} && 'NextContractLineItemId' != \"Unknown\" then daysBetween(toDate('ContractLineItemFfbcEndDate', \"yyyy-MM-dd\"), toDate('NextContractLineItemFfbcStartDate', \"yyyy-MM-dd\")) - 1

Renewals

The renewals value calculated using the following formula:

When 'PreviousContractLineItemId' != \"Unknown\" && 'SystemProcessAction' == ${Variables.RenewActionLiteral} then case when 'ValueContractLineItemFfbcMonthlyRecurringRevenue' > 'ValueTotalPreviousMonthlyRecurringRevenue' then 'ValueTotalPreviousMonthlyRecurringRevenue' else 'ValueContractLineItemFfbcMonthlyRecurringRevenue'

RenewalsAnnual Calculates the annualized renewals value.
ReplacementDate

The replacement date calculated using the following formula:

case when 'SystemNextOpportunityProcessAction' == ${Variables.ReplaceActionLiteral} && 'ContractLineItemFfbcEndDate' is not null then toDate('ContractLineItemFfbcEndDate_sec_epoch' + 86400)

Upsell

The up sell value calculated using the following formula:

case when 'SystemProcessAction' == ${Variables.UpsellActionLiteral} then 'ValueContractLineItemFfbcMonthlyRecurringRevenue' when 'PreviousContractLineItemId' != \"Unknown\" && 'ValueContractLineItemFfbcMonthlyRecurringRevenue' > 'ValueTotalPreviousMonthlyRecurringRevenue' then 'ValueContractLineItemFfbcMonthlyRecurringRevenue' - 'ValueTotalPreviousMonthlyRecurringRevenue'

UpsellAnnual Calculates the annualized up sell value.
ValueRevenueRecognizedContractLineItem

Populated from the field specified in the Recognized To Date Value field on the settings record for the Billing Contract Line Item object.

The field on the Billing Contract Line Item object can be a currency or a number field. In either case, the value is converted to the currency of the Integration User. This ensures that the value is in the same currency as all other fields in the Billing Contracts dataset.

Note:

This field is only available if you use Revenue Management and you answered "Yes" to question 5b. Do you want to include the amount of revenue recognized for billing contract line items? in the configuration wizard.

ValueContractLineItemDeferredRevenue Calculated as ValueContractLineItemFfbcTotalBilled - ValueRevenueRecognizedContractLineItem. When ValueRevenueRecognizedContractLineItem is not available in the dataset, this is set to ValueContractLineItemFfbcTotalBilled.