AccessMyLibrary provides FREE access to millions of articles from top publications available through your library.
Create a link to this page
Copy and paste this link tag into your Web page or blog:
Many developers use 1-2-3 and Symphony to create models for design and analysis. But the many releases with varying capabilities can make for development headaches. Rather than develop different models for each release, you can develop one model that works in slightly different ways, depending on the release it's running in. By including macros that can identify the environment, your models can have wider application, or simply tell users that they won't work in their particular spreadsheet programs.
Consider the difference between 1-2-3 and Symphony. While their worksheet files are compatible, their menu sequences are different. Since their menus are different, macro command sequences for each product are also different. For example, the 1-2-3 macro sequence to print a range named balance is:
/PPRbalance[|]AGQ
The Symphony macro command sequence for the same operation is:
{SERVICES{PSSRbalance[|]QAGQ
If you specify the current program in a cell named pr, you can combine the macros in a single worksheet as follows:
{IF pr="123"{/PPRbalance[|]AGQ {IF pr="Symphony"{{SERVICES{ PSSRbalance{AQGQ
The macros in figure 1 let you create a single model that runs without modification in either 1-2-3 or Symphony. These macros first figure out whether they are running in 1-2-3 or Symphony, then determine the release of the program. This means that you can write separate macro sequences for 1-2-3 and Symphony in the same worksheet, ensuring that your macros will run the correct menu sequences. Your macros also can tell the user if the model requires a feature or features that the user's release does not support.
The macros in figure 1 work in 1-2-3 Releases 1A, 1A*, 2, 2.01, 2.2, 3, 3.1, and 1-2-3/G, as well as Symphony Releases 1, 1.1, 1.2, 2.0, and 2.2 (the macro identifies Symphony 1.01 as 1). You should be able to modify them to work in 1-2-3/M, or 1-2-3 for other platforms like DEC, Unix System V, and Sun, simply by using the @INFO("system") formula in addition to the @INFO("release") formula.
WORKSHEET FILE INCOMPATIBILITIES
Files created in Symphony may have a variety of features that are not available in 1-2-3. For instance, Symphony doesn't automatically run the \0 macro, as 1-2-3 does. In Symhony you must specify the cell address or range name of the macro you want to autoexecute with the SERVICES Settings Auto-Execute command. 1-2-3 ignores this setting when it loads the Symphony file and instead runs the \0 macro (if there is one). Further, if you …