Analytica 5.0 beta Release Notes/Changes in

The following page lists changes in beta build since the previous build.

Cell-level formats

  • A flag was added so that the CellFormatExpression can be applied to an edit table. This isn't recommended (if you don't know what you are doing, this could be problematic). But it can be useful it some cases. The flag is a new bit-field attribute, CellFormatFlags, with bit 1 set to apply CellFormatExpression to edit tables. This can only be set in Typescript.
  • The CellBar function now auto-ranges the «min» and «max» to the range of selected cells (i.e., when it appears inside a CellSpan), as opposed to auto-ranging to the set of all cells in the array, including cells outside the selected range. Also added parameters
    • «scaleToSpan»: (true) when false scales to all values in the array, when true only to the range selected within enclosing CellSpans.
    • «scaleToAllSlices»: (true) scales to all slices, versus to only the slices selected by slicer controls.
  • CellBorder(side:'outer',...) and CellBorder(side:'inner',....) now adapt to whether the Totals column is displayed.
  • You can assign the result of evaluating cell format predicates directly to the Att_CellFormat attribute (such as from a button script). It automatically converts this to the desired un-evaluated text expression. A use of this is when debugging custom computed cell-format logic in the CellFormatExpression attribute, where it is more convenient, and then later when you have the logic working, just assigning the result of the same logic to the static Att_CellFormat attribute.
  • Corrected some splicing problems with cell formats when indexes change, including the case of cell formats in a DetermTable.
  • Corrected several cases when borders didn't render correctly.
  • Corrected some cases where formats that were specified for header cells were incorrectly applied to body cells following a sequence of pivots.
  • Fixed a problem where cell formats did not display initially when a result table was first displayed.
  • Fixed a problem in which Analytica and other open applications flashed a lot, causing a delay, when opening the Cell Formats dialog. In Windows 10 this often caused an unnecessary delay of 1-2 seconds.


  • When copying a result graph in DIB format, eliminated stray lines that would sometimes appear along the top and left edges of the copied edges.
  • Fixed a crash that occurred when copying a 4-byte (21-bit) UTF-8 character (a character in the supplementary planes).
  • Fixed a bug that crashed or caused some data to not get copied (intermittent) when copy-pasting GradientClass objects using Copy/Paste.


  • Disabled the Move Node hover icon (4-arrow icon). (its aethetic appearance wasn't up-to-snuff, and you can just drag the node anyway).
  • The Edit Table hover icon now appears in browse mode for tables. In some cases in edit mode, a pencil icon appeared instead of a table icon.


  • When using := to assign to a DetermTable, the DetermTable itself is indexed by Domain of X, where X is a selector variable. So the array you assign would previously have to be indexed by Domain of X. However, if the Definition of X evaluates to a list, you might have an array indexed by X (i.e., by the IndexValue of X) rather than by the Domain of X. Usually, IndexValue(X) is a subset of Domain of X, and sometimes in a different order. the Operator := was enhanced to allow the array being assigned to be index by IndexValue(X) instead of Domain of X, and the operator then assigns only the subset of rows in the underlying DetermTable that are actually selected.
  • Unicode characters in the supplemental planes (Chr(0x10000) to Chr(0x10FFFF)) are now more fully supported.
    • Previously, they were treated as two characters, but displayed as one, and hence, were partially supported.
    • The Chr function now accepts values between 0x100000 and 0x10FFFF, and Asc returns values in this range.
    • Functions that deal directly with UTF-8, like ReadTextFile, ReadFromUrl, WriteTextFile, etc, can now handle 4-byte UTF-8 sequences, where previously these were limited to 3-byte sequences.
    • When editing, these now occupy a single cursor position, whereas previously they acted like two characters, and you were able to place your cursor in the middle of a character.
    • Text functions with character position parameters or that return the number of characters, like TextLength, SelectText, Asc, FindInText, etc., now count these characters a single character, not as two characters.


  • The special case of ChanceDist(1,a) no longer issues a warning that the probabilities don't add up to 1. This is now a convenient syntax to use when you want a uniform distribution over a set of elements -- you don't have to write: ChanceDist(1/IndexLength(a), a).
  • The «caseInsensitive» parameter was not being honored by SplitText for non-regular-expression separators.
  • ReadFromUrl was not reading UTF-8 text correctly. The raw UTF-8 was returned, rather than the Unicode characters.
  • Fixed some issues with MdTable when the «valueColumn» labels don't match the index values. An error message that should display didn't, and in other cases the error displayed by the error text was missing the bad label.
  • FindInText returned the wrong position and length with text involving unicode characters.


  • Fixed a problem in which the beta installer was unable to find the previously installed release of Analytica, or the previous beta, preventing it from automatically obtaining or renewing the 5.0 beta license.

Model saving and loading

  • Fixed an issue that would cause a model to become "dirty" even though no change had occurred, so that you'd be prompted to save the when closing the model.


  • Manual changes to column width or row height are now undoable.
  • In some large tables, Choice and Checkbox controls stopped displaying after scrolling several pages into the table.
  • Fixed a crash when exporting a literal list definition.
  • Fixed some problems with column resizing then a table is scrolled all the way to the far right, at maximum scroll.

You are not allowed to post comments.