FlowSheets - Breaking out of the Limitations of Traditional Spreadsheets

ANKHOR FlowSheet starts with all that is good about spreadsheets and takes them to the next level, overcoming the known problems and limitations and enabling a visual way for manipulating data.

Like with spreadsheets, you work with tables into which data is either manually entered or imported from an outside data source, e.g. read from a file or retrieved by a SQL query. However, a FlowSheet can contain more than one table per sheet, while in spreadsheet applications, the table is the sheet.

In spreadsheets you then apply calculations by assigning formulas built with operators to cells that receive the result of applying these formulas to other cells (or rows and columns of cells) of the sheet. The following is an example for a spreadsheet calculating the sum of the columns A, B and C:

A simple spreadsheet

With a FlowSheet, you create formulas by placing operators in it, and connecting the data tables with inputs of these operators. The result of applying such an operator is again a table, which is available at the operator’s output and has exactly the size required for holding the result. Here the same example as a FlowSheet:

How to build the sum of the columns of a table in ANKHOR FlowSheet

A structure like this represents a classic data flow graph using tables as the main data type. This is why we came up with the name “FlowSheet” to describe this combination of dataflow graph and spreadsheet.

The significant differences between this FlowSheet and the above example spreadsheet are:

  • You get a complete overview of your input table data, the operations applied to the data and all intermediate results. Nothing is hidden: you see all formulas at one glance, not only the one of the cell you are currently looking at.
  • The results are automatically available in a fittingly sized table, and can be used for further manipulation by other operators or for display in a Dashboard.
  • The results are separated from your input data and do not clutter up a single “table sheet”.