Please enable JavaScript to view this site.

A-Shell Reference

Navigation: Operations > APEX

Other Topics

Scroll Prev Top Next More

Following is a collection of APEX miscellaneous topics that are interesting or important, but don't seem to fit elsewhere in the documentation.

Licensing

The programs and files needed by APEX are automatically installed on the PC with the underlying software (A-Shell for Windows or ATE). Starting from the date it is installed, APEX will work in unrestricted mode for approximately 30 days. After that free-trial period, APEX reverts to demo mode, which means that it will work so you can see its functionality, but with a rather annoying message saying that it is in demo mode. To enable full APEX operation on your PC, you will need to obtain an APEX license.

Debugging APEX

In case of a problem launching the preview from ATE, use the System Message Window to help clarify what is happening. Call up the A-Shell Developer Control Operations dialog with control+shift+double-right-click, then select System Message Window. When the debugging/trace window comes up, repeat the print attempt. It will log the command string that is actually being used, which might then be helpful to test independently, such as from Start..Run, or at least useful in identifying the problem

Settings

In ATE, changes to Preferences are immediately stored with the connection profile in the Windows Registry. This means that they are both implemented immediately, and saved for future use; all subsequent operations of the preview window, whether in this session or new sessions, will reflect the latest settings.

In A-Shell/Windows, changes to Preferences are part of the overall A-Shell settings set which, along with the other options on the various Settings menu dialogs, are stored in the A-Shell settings (.ash) file. However, as with all other settings, changes made in the dialogs are not automatically written to the file. Thus, they only affect the current session. To make them permanent, you must save them via the File...Save option.

Files and Folders

When you call up the Preferences menu, the actual words you see are taken from the file sys:sbrmsg.usa. If you see odd codes in place of intelligible options, then your sbrmsg file is not being found.

Any temporary work files required by APEX are created in the APEX folder.

The default location of the APEX folder is This PC\documents\apex (c:\users\<username>\documents\apex), and this folder will be created the first time it is needed. If you don't like this location and/or want it to be placed somewhere else, you may create an environment variable called "APEX" and point it wherever you wish.

Most of the print preview and display-related aspects of APEX are performed by a program module called sftprintpreview_###.dll where "###" is platform and version information. This file lives in the main A-Shell or ATE folder on your PC.

Margins

In A-Shell 6.5.1679 of April 2020, there was a significant change to how APEX displays reports that are being sent to virtual printers. In short, we removed the automatic setting of XORIGIN/YORIGIN to 360 twips (1/4 inch) for virtual printers, such as PDF writers, that do not report a built-in physical margin. Adding the margin looks better in the case where you are thinking in terms of what the report would look like on a real printer, but it's misleading in the case of virtual printers like PDFX. Such virtual printers have no inherent margins, but may add them when viewing in the PDF viewer, or when printing. Note that while this is a change in behavior, it only occurs when APEX is being used to preview output of a virtual printer, which is of questionable utility in the first place; in any case the change doesn't affect the actual printed output.

Unfortunately, this change would cause reports to display differently than the did previously. They may be more correct, but they're also different that what APEX users we're used to. So the behavior was modified again such that that the settings of //XORIGIN,360 and //YORIGIN,360 were added when none was specified—unless the //SETOPTION,NO-AUTO-MARGINS directive specified. This avoids a subtle but possibly unwanted behavior change when updating. Going forward, though, the NO-AUTO-MARGINS option is recommended.