inherited data model and FpSpread1.CircularFormula

Posted by: kbj on 7 October 2019, 2:34 am EST

  • Posted 7 October 2019, 2:34 am EST

    With a inherited from the DefaultSheetDataModel, the FpSpread1.CircularFormula event no longer fires.

    Public Class classDm
    Inherits DefaultSheetDataModel
    End Class
  • Replied 9 October 2019, 1:23 am EST

    . . .While we're at it . . .
    Is there a way to scan as worksheet to identify cells with circular formulas?
  • Replied 8 October 2019, 11:11 pm EST


    I am able to reproduce the issue at our end. I will escalate the issue to our development team(276567) and inform you once I get any reply from them.

  • Replied 9 October 2019, 2:50 pm EST


    Currently, it is not possible to identify cells with circular formulas with inherited DefaultSheetDataModel. Also, the above is the expected behavior of Spread 12.

    Could you please explain why are you using the inherited DefaultSheetDataModel so that we may know how to support your scenario.

  • Replied 10 October 2019, 1:12 am EST

    Are you saying that the only way to identify circular formulas in a non-inherited data model worksheet is by the FpSpread1.CircularFormula event firing? If that is so, how would the user know when a formula has been fixed? (other than by a cell stubbornly not recalculating)
    I use an inherited data model to wrap cell values in an object that includes worksheet and cell row and column information which is used by a custom celltype to measure, format, locate and paint the value based on which row and column the cell is in. I do the wrapping in the data model's overridden getValue function. It works very well for my purposes.
    Of course if the celltype was provided the cell and woksheet being processed, I wouldn't need a custom data model.
    That being said, the ability to customize a data model is an important one.
  • Replied 10 October 2019, 9:43 pm EST


    >>Are you saying that the only way to identify circular formulas in a non-inherited data model worksheet is by the FpSpread1.CircularFormula event firing?
    Yes, currently it is the only way to fire FpSpread1.CircularFormula event.

    I have forwarded the information to our development team and will update you once I got nay information from them.

  • Marked as Answer

    Replied 14 October 2019, 7:22 pm EST

    Hello Kingman,

    As per the developer, we don't support custom data model in the new spreadsheet core engine. The new core engine is designed to support complex calculation features like formula array, dynamic array. external variables, expression view... Some feature like dynamic array change other cell values automatically base on the root cell formula. It's nearly impossible to implement that feature with a custom data model because the core engine . In addition, the performance of calculation, filtering, sorting... will be affected much.

    Also, they are considering to add "IEnhancedCellType" interface to support your requirement. However, the timeline of this feature is not decided yet.

Need extra support?

Upgrade your support plan and get personal unlimited phone support with our customer engagement team

Learn More

Forum Channels