Error handling

Debugging can be a pain. Here's how to mitigate the most common errors in Francis

Infinity (division by zero?)

The "Infinity (division by zero?)" error, often known as "#DIV/0!", occurs when a division by zero is attempted.

While this error may be caused by incorrect cell referencing or unintentional deletion of a referenced value, it is most often caused when division is attempted on a time series that contains numeric values of zero. Examples include calculating margins or KPIs based on a metric such as revenue that is occasionally zero.

To prevent this from happening, leverage our built-in IF-statements to check the divisor before division.

IF("DENOMINATOR"[0] = 0, 0, "NUMERATOR"[0] / "DENOMINATOR"[0])

IF("Revenue"[0] = 0, 0, "Gross profit"[0] / "Revenue"[0])

In other words, if the denominator is zero, the function returns zero, avoiding the error. Otherwise, the function performs the division as intended.

INF_LOOP: Infinite loop detected, caused by a recursive back-reference

The INF_LOOP error is caused by a formula entering a continuous, non-terminating loop. This error is commonly due to recursive references in formulas where a call refers back to itself either directly or indirectly, causing an endless loop.

Common causes

  • Direct self-referencing: A formula directly refers to a previous period in its row

  • Indirect self-referencing: A chain of cell references leads back to previous periods of the original row. With interconnected formulas, dependencies can create loops

Can only make reference with non-positive index

This error message is triggered when there's an attempt to reference a future period (positive index). In Francis, cells are references by 1) their rows name, and 2) their index relative to the current cell you are editing.It's important to note that Francis supports references only to cells within the current or previous periods (i.e., non-positive indices).

Common Causes

  1. Forecast-Based Purchase Orders: When purchase orders in the current period are based on the forecasted sales of products in a future period.

  2. Hiring Based on Future Revenue Forecasts: When hiring decisions in the current period are made in anticipation of forecasted revenues in future periods.

Recommended Solutions

  1. Manual Value Entry: Directly input the required values into your formulas.

  2. Time-Shifted Referencing: Adjust by lagging the values by the necessary time period. This method effectively shifts future values into the current period for valid referencing.

Last updated