Forward and Backward Compatibility


4.6  •  5.0  •  5.1  •  5.2  •  5.3  •  5.4  •  6.0  •  6.1  •  6.2  •  6.3  •  6.4  •  6.5

We put a lot of effort to ensure backward compatibility -- so that each new Analytica release can run models created in an earlier release with the same results. This page explains rare exceptions and what to do if you find them. Then we explain forward compatibility -- how you can often run models created with a recent release in an earlier release.

Backward compatibility

You can view, evaluate, and modify any model created in earlier releases of Analytica with Analytica 6.4. No file conversions are required. Each new release of Analytica includes a variety of bug fixes, so it is conceivable that your model might change its behavior if it uses an "undocumented feature "that was really a bug that we have fixed.

Show result warnings

When you are trying a model for the first time in 6.4, the first thing you should do is ensure that Show Result Warnings is checked in the Preferences box. While evaluating your model, avoid selecting Ignore Warnings if warnings do appear. If any expression in your model produces a warning that you can live with, surround the expression with IgnoreWarnings() to suppress the warning, so that you don’t feel compelled to select the Ignore Warnings button. When you leave warnings on while your model evaluates, most potential backward-compatibility issues are reported to you.

Regional sort (collation) order

Analytica 4.5 and later uses regional sort order when comparing and sorting text, where earlier releases used pure ANSI (ASCII) order. Region awareness allows more intelligent handling of accented characters and other language subtleties. In the unlikely event that your model relies on ANSI ordering, you can configure it to use ANSI ordering in Analytica 4.5 or later as follows: press F12 to open the Typescript window and type: TextLocale: ANSI.

Character codes

Every character has a numeric character code associated with it, which is used by the Chr() and Asc() functions. The characters associated with codes from 128 to 160, 173, 178 and 179 have changed to be consistent with the Unicode standard. Your model is only impacted by this if it relied on the specific numeric value passed to Chr() or received from Asc(). If uses these characters in text or attributes, the conversion in handed automatically or you will see no difference.

Recommended Modifications

After you upgrade to the most recent release, there are several setting changes we recommend you make to your model, although these are optional. Analytica will initially configure these to operate a legacy mode to minimize the chance of introducing a difference when you start using your model in the new release; however, legacy modes prevent you from taking full advantage of improvements and fixes.

ClearType fonts

Analytica 4.4 and later can render influence diagram nodes using ClearType fonts, which are smooth anti-aliased fonts that look nicer than the fonts used pre-4.4. To turn on ClearType fonts in legacy models, open the Set Diagram Style... box for your top-level model diagram from edit mode and check the ClearType fonts checkbox (the checkbox will not be present for models started in Analytica 4.4 or later, which already use ClearType). Then visit each module and adjust any nodes that word wrap in an undesirable fashion. For most diagrams, you can do this by pressing Ctrl+A (select all) and then pressing Ctrl+T (Adjust size) multiple times until an acceptable appearance is obtained. With ClearType support, Ctrl+T cycles through multiple criteria for adjusting node sizes.

Domain as self index

You should turn off the Domain acts as self index preference. A small percentage of models created in Analytica 4.2 or earlier might be impacted, and only in those cases should this preference be on, at least until you update the model appropriately. The older domain treatment is inferior in many ways, and some features are only available when this preference is off.

Proactive evaluation

We recommend that you turn off the Proactively evaluate indexes preference. This will generally speed up the time it takes to load your model. This preference is on in models created initially in Analytica 4.3 or earlier.

Forward compatibility

It is also possible to run models created or edited in Release 6.4 in earlier releases of Analytica, provided you don’t rely on functions, features, characters, or functionalities new to Analytica 6.4. The models load into earlier releases of Analytica, although they might encounter problems during parsing or evaluation in the places where 6.4 features are used. A few 6.4 features might be stripped out of the model if it is re-saved from an earlier release, such as values for system attributes or system variables that don’t exist in the earlier version.

UTF-8 file format

Models that contain Unicode characters (characters not present in the ASCII, or ISO-8859-1, character set, generally those with character codes above 255, including Chinese, Japanese, Korean, Cyrillic, Greek and other alphabets and esoteric mathematical and graphical symbols) are saved using the UTF-8 character encoding, whereas Analytica 4.4 and earlier assume model files to be ASCII-encoded. These UTF-8 files will load into Analytica 4.4 and earlier, but extended characters (any character with an ASCII code above 127) become mangled into two or three characters. The user is warned about the problem when the model is loaded into the earlier release.

This is not a problem if you have not used any Unicode characters in your model, since in that case, Analytica will save your model using the ASCII encoding. If your model does utilize Unicode characters, then you need to tell your users that 4.5 or later is required, since Unicode support was introduced in Release 4.5.

See Also


You are not allowed to post comments.