Rule ID: DQC_0043 - this public exposure version was available for comment until September 5, 2017.
View: as part of public exposure version v.5.0.0.RC3 || Return to summary page.


Rule function

The rule identifies the balance type of the elements in the calculation linkbase that are children of the operating cash flow elements in the US GAAP taxonomy, specifically the elements NetCashProvidedByUsedInOperatingActivities or NetCashProvidedByUsedInOperatingActivitiesContinuingOperations and determines whether their effective calculation weights are accurate. The effective calculation weight is the calculation weight of the child element relative to operating cash flow element irrespective of the level the child element exists at in the calculation hierarchy.   The rule flags an error in the following conditions:

  • If the child element of an operating cash flow element has a debit balance type and a negative effective calculation weight.
  • If the child element of an operating cash flow element has a credit balance type and a positive effective calculation weight. (See exceptions below)

There are a number of exceptions to this rule, specifically net income elements which are the starting point for the calculation of operating cash flow and will be a credit item with a positive balance. Therefore any net income related children are excluded from the rule. These are as follows:

  1. ProfitLoss
  2. NetIncomeLoss
  3. IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest
  4. IncomeLossFromContinuingOperations
  5. IncomeLossAttributableToParent
  6. IncomeLossIncludingPortionAttributableToNoncontrollingInterest
  7. IncomeLossBeforeExtraordinaryItemsAndCumulativeEffectOfChangeInAccountingPrinciple
  8. NetIncomeLossAvailableToCommonStockholdersBasic
  9. NetIncomeLossAllocatedToGeneralPartners
  10. NetIncomeLossAllocatedToLimitedPartners
  11. DiscontinuedOperationIncomeLossFromDiscontinuedOperationBeforeIncomeTax
  12. ExtraordinaryItemGainOrLossNetOfTaxAttributableToNoncontrollingInterest
  13. ExtraordinaryItemGainOrLossNetOfTaxAttributableToReportingEntity
  14. ExtraordinaryItemNetOfTax
  15. ExtraordinaryItemsGross
  16. GainLossOnSaleOfPropertiesNetOfApplicableIncomeTaxes
  17. IncomeLossAttributableToNoncontrollingInterest
  18. IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity
  19. IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
  20. IncomeLossFromDiscontinuedOperationsNetOfTax
  21. IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToNoncontrollingInterest
  22. IncomeLossFromDiscontinuedOperationsNetOfTaxAttributableToReportingEntity
  23. NetIncomeLossAttributableToNoncontrollingInterest
  24. IncomeLossBeforeGainOrLossOnSaleOfPropertiesExtraordinaryItemsAndCumulativeEffectsOfAccountingChanges
  25. NetIncomeLossAttributableToParentNetOfFederalHomeLoanBankAssessments
  26. ComprehensiveIncomeNetOfTax
  27. IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic
  28. IncomeLossFromContinuingOperationsBeforeIncomeTaxesMinorityInterestAndIncomeLossFromEquityMethodInvestments
  29. IncomeLossFromContinuingOperationsBeforeInterestExpenseInterestIncomeIncomeTaxesExtraordinaryItemsNoncontrollingInterestsNet
  30. IncomeLossFromSubsidiariesNetOfTax

The rule should report every fact associated with the child element in the XBRL instance. This is because once the calculation weight is changed the sign of the reported values will need to be changed.

When the elements NetCashProvidedByUsedInOperatingActivitiesContinuingOperations and NetCashProvidedByUsedInOperatingActivities both appear in the calculation linkbase then the rule should only be run for NetCashProvidedByUsedInOperatingActivities.

Problem solved by the rule

In the cash flow statement a number of items will roll up into Net Cash Provided by (Used in) Operating Activities.  Because the parent element NetCashProvidedByUsedInOperatingActivities has no balance attribute, the calculation weights are not checked in XBRL specification validation.  This means that filers can use any weight they like on the child elements and an XBRL error will not result. Historically, a large number of companies have used an incorrect weight on the calculation and as a result the element being added into Net Cash Provided by (Used in) Operating Activities has an incorrect sign (i.e. Is negative when it should be positive).  In the example rule message below, the filer has used the element provision for doubtful accounts with a negative value when it should have been positive. This issue cannot be solved using a negative rule, as the element could justifiably be entered with a negative value in some cases.

Example rule message

The concept Provision For Doubtful Accounts is included in the calculation of Net Cash Provided By Used In Operating Activities. Provision For Doubtful Accounts is a debit balance type concept representing a natural cash inflow in the reconciliation of net income (loss) to Net Cash Provided By Used In Operating Activities.

A debit balance type concept should always be assigned a positive one (+1) calculation weight, as it is an addition to net income (loss) to reconcile to Net Cash Provided By Used In Operating Activities. Provision For Doubtful Accounts has been incorrectly provided a negative one (-1) calculation weight in the extension taxonomy.

Correct the calculation weight to positive one (+1) and input the value as a positive amount.

The properties of this us-gaap:ProvisionForDoubtfulAccounts fact are:

Period : 2015-11-01 to 2016-10-31
Dimensions : none
Unit : USD
Rule version : 5.0

For Developers

The Global Rule Logic document contains general guidelines for implementation of rules.

The rule message template contains text and parametric reference to arguments of the rule operation, using the syntax ${parameter} to indicate that insertion of a parameter’s value is to occur.

Message template

Template for children of NetCashProvidedByUsedInOperatingActivities

The concept ${fact1.label} is included in the calculation of ${NetCashProvidedByUsedInOperatingActivities.label}. ${fact1.label}  is a ${fact1.balance}  balance type concept representing a natural cash inflow in the reconciliation of net income (loss) to ${NetCashProvidedByUsedInOperatingActivities.label}.

A ${fact1.balance}  balance type concept should always be assigned a ${if fact1.balance = debit THEN “positive one (+1)”  ELSE if fact1.balance = credit THEN “negative one (-1)” }  calculation weight, as it is ${if fact1.balance = debit THEN “an addition”  ELSE if fact1.balance = credit THEN “a subtraction” } to net income (loss) to reconcile to Net Cash Provided By Used In Operating Activities. ${fact1.label}  has been incorrectly provided a  ${if fact1.balance = credit THEN “positive one (+1)”  ELSE if fact1.balance = debit THEN “negative one (-1)” } calculation weight in the extension taxonomy.

Correct the calculation weight to ${if fact1.balance = debit THEN “positive one (+1)”  ELSE if fact1.balance = credit THEN “negative one (-1)” } and input the value as a positive amount.

The properties of this ${fact1.name} fact are:
Period: ${fact1.period}
Dimensions: ${fact1.dimensions}
Unit: ${fact1.unit}
Rule version: ${ruleVersion}

Template for children of NetCashProvidedByUsedInOperatingActivitiesContinuingOperations

The concept ${fact1.label} is included in the calculation of ${NetCashProvidedByUsedInOperatingActivities.label}. ${fact1.label}  is a ${fact1.balance}  balance type concept representing a natural cash inflow in the reconciliation of net income (loss) to ${NetCashProvidedByUsedInOperatingActivitiesContinuingOperations.label}.

A ${fact1.balance}  balance type concept should always be assigned a ${if fact1.balance = debit THEN “positive one (+1)”  ELSE if fact1.balance = credit THEN “negative one (-1)” }  calculation weight, as it is ${if fact1.balance = debit THEN “an addition”  ELSE if fact1.balance = credit THEN “a subtraction” } to net income (loss) to reconcile to Net Cash Provided By Used In Operating Activities. ${fact1.label}  has been incorrectly provided a  ${if fact1.balance = credit THEN “positive one (+1)”  ELSE if fact1.balance = debit THEN “negative one (-1)” } calculation weight in the extension taxonomy.

Correct the calculation weight to ${if fact1.balance = debit THEN “positive one (+1)”  ELSE if fact1.balance = credit THEN “negative one (-1)” } and input the value as a positive amount.

The properties of this ${fact1.name} fact are:
Period: ${fact1.period}
Dimensions: ${fact1.dimensions}
Unit: ${fact1.unit}
Rule version: ${ruleVersion}

Rule element ID index

The rule element id is used to identify unique elements or combinations of elements tested in the rule.

Rule element ID Parent Element
DQC.US.0043.6833 NetCashProvidedByUsedInOperatingActivitiesContinuingOperations
DQC.US.0043.7488 NetCashProvidedByUsedInOperatingActivities

View: as part of public exposure version v.5.0.0.RC3 || Return to summary page.

Approved Guidance and Validation Rules