Analytica 4.0 beta Release Notes/22.214.171.124
Changes in 126.96.36.199
The notes here are for the next beta build that is expected to be released. For the current beta build, see Analytica 4.0 beta Release Notes/188.8.131.52.
(straight bug fixes and minor textual changes not listed)
- Attrib of Obj: Returns Null if attribute value is not defined. (Formerly returned Undefined)
- The defaultValue for non-specified cells to MdTable is now Null (formerly it was Undefined)
- Fixed bug in which local index objects were not being reclaimed.
- Introduced the MetaIndex..Do construct.
- Several bug fixes impacting Meta-Inference.
- External values from variables having an explicit domain (list, list-of-labels or index domain) can be shown in Symbol and Color roles (as categorical).
- Pivot controls use Blank, rather than "No Index", when no option selected.
- is hidden in browse mode.
- For J:=X Do expr, now iterates over IndexValue(X), not over the value of X which occurred previously. These differ when X has a self-index. The new functionality means you can use A[X=J] from within the body expr.
- For a:=X Do expr now allows X to be a general expression, not just an index as was previously required. When an array, a iterates over all elements of X. When X is an identifier, For a:=X Do ...' and For a[ ]:=X Do ... are the same unless X has a self-index, in which case For a:=X Do ... iterates over IndexValue(X), while For a:=X Do... iterates over the main value of X, computed in context.
- In pivot controls and graphing role pulldowns, the option formerly labeled "No Index" or "No Dimension" now displays as a blank label. Select the blank option for "None".
- It is possible to specify a default value, specific to a table, to be used as the default value when new rows are added to the table. The table-specific value can be an array, with a different default for each column. This must be set via typescript. See Table Splicing
- You can control the global atomic default used as the default for table cells when new cells are added (and a table-specific default does not exist). Default now is 0.0. Can use blank -- new cells show up blank. See Table Splicing
- A table definition accepts blank cells. For example: Table(Time)( 1, ,2) -- in this example, the second cell is blank. When this evaluates, a warning is issued, and if ignored, the blank cell evaluates to Null.
- Legacy tables having no commas are now parsed, and re-written to have commas. For example: Table(Time)(1 2 3) is rewritten as Table(Time)(1,2,3), so that legacy models that omitted commas are accepted.
- Bug fix to often seen problem in which non-functional scroll bars appear on tables when window is maximized.
- In a pivot control, the option formerly labeled "No Index" is now displayed as a blank label.
- The profiling library has been reworked to use VarTerms rather than string identifiers. This has the benefit that you can double click on the row header when looking at a report and hyperlink to the object named.
- Access to hidden definitions via the ADE API has been restricted. There is now a new error code, CAEngine::ErrorCode == 70, indicating that the requested definition is hidden, which may be returned by CAObject::DefTable or CAObject::GetAttribute.