What's Up, DOCumentation? 1995 #6


December 13, 1995

To: Users of Robelle Software
Re: News of the HP 3000 and of HP-UX, 1995 #6

What You Will Find in This News Memo:

News Tidbits

Collaboration between SCO, Novell and HP.

There is an interesting article in the October 1995 issue of HP Omni magazine. The editor, Tim Cullis, gives some details on the agreement between HP, Novell and SCO to "take UNIX and NetWare into the next century". Initially, Novell will hand-over its UNIX business to SCO who will continue to enhance and support their own OpenServer in addition to UnixWare. The plan calls for merging the two operating systems some time in 1997.

On the other hand, Novell and HP will work on integrating NetWare Directory Services (NDS) and Open Software Foundation's Distributed Computing Environment (DCE). Basically, they want to replace DCE with the new extended NDS. At the same time, HP will provide SCO with HP-UX extensions to ease the move from a 32-bit to a 64-bit UNIX environment. The latter will be developed by HP and should be available in 1998. In the words of Tim Cullis, "...effectively Hewlett-Packard is delivering Novell's SuperNOS strategy (UNIX and NetWare sharing a common kernel)".

What is in store for MPE/iX? Again, according to Tim Cullis, it is unlikely that we will see a true MPE/iX 64-bit version. It will probably run under 64-bit UNIX or in parallel on a separate processor.

STExport - Another Tool for the Belt

In the last few months, our tech support people have received numerous requests for changes to Suprtool's Output ,Prn option. Customers have found that various database management system (DBMS) utilities cannot import files with the standard Prn format into their databases. Some databases complain about the quotes around byte-type fields, and others do not like commas as field delimiters. Some customers just want more control over such things as trailing spaces, leading zeroes and sign placement.

STExport allows users to format files that can be imported into their own spreadsheet or DBMS. STExport works on four data-types and has six different formatting commands to manipulate these data-types.


Each STExport formatting command applies to all the fields with a specific data-type. That means you can specify the format of each field type, but not of each individual field. For example, all numeric-type fields are formatted the same way.

These are the main data-types that STExport identifies:

Use the following table to determine which command applies to each data-type:

     Command       Data-Type

     Date          date
     Floating      floating
     Quote         byte
     Sign          numeric
     Spaces        byte
     Zero          numeric

Column and Delimiter Commands.

You can also specify the delimiters between each field or whether the output is in a fixed or variable format.

Sample run of STExport

Before you can use STExport to convert a file, first create a self-describing file by using Suprtool's Link or Query option with the Output command. We recommend the Link option because it retains the date and decimal formats specified in the Item commands. This information is used by STExport.

Then you can use STExport to read the self-describing file and produce an output file called Exfile. To demonstrate how dates are handled, you insert a separator in each date-field.

     :run stexport.pub.robelle
     $input salefile      {self-describing input file}
     $date  yyyymmdd "-"  {dates with a dash separator}
     $sign trailing       {sign is trailing}
     $output exfile       {output to file called Exfile}

The resulting file will look like this,

     2222,1995-03-31,1,0.11,1995-01-01,1,0.01,0.01,"joe's hardware"

Only the last field is a byte-type. All other fields are converted from their internal numeric representation to a string of digits. All date fields are converted from their internal yyyymmdd format to the external yyyymmdd format with a dash separator between the day, month, and year. All fields with implied decimal places have a decimal point after the conversion. A comma is used to separate individual fields.

STExport is available from within Suprtool by typing the Export command and passing the STExport command name.

     >export input salefile

STExport will be distributed free of charge to all Suprtool customers as part of the Suprtool 3.8 release in 1996. Until then, it is available in Suprtool's latest pre-release version (3.7.22).

Technical Tips

Qedit 4.4 Manual in WinHelp Format.

You will notice something new in the Qedit 4.4 manual: a 3.5" floppy disk in the back cover. This disk contains the full contents of the printed Qedit User Manuals for both MPE and HP-UX in the Microsoft Windows Help format. These Help files can be used with Windows 3.1 and Windows 95. To install the Help files, insert the disk in your 3.5" drive and run a:setup. You can make copies of the disk for others in your organization. You can also download the Help files from our Internet FTP site at ftp.robelle.com.

Windows 95 Tips for MPE Users.

Many of our customers have started to upgrade some of their PCs to Windows 95. At first they notice the new user interface with the Start button, the 3D look, and the new graphics architecture. The Windows 3.1 Program Manager is banished and its Program Groups have become folders, which can now contain nested folders. Most old Windows applications can still run on Windows 95, but old utilities cannot. Then users may notice:

So why doesn't Windows 95 completely supplant Windows NT? There are several good reasons: memory protection does not completely protect system data from user applications as in NT, the design is a 16/32-bit hybrid for backward compatibility, the file system is still based on the original FAT system of DOS and wastes considerable disk space, international characters are still handled via the clumsy ANSI character set with code pages instead of Unicode and pre-emptive multitasking is only ensured when all applications are running in 32-bit mode.

To display the Windows 95 logo, an application must satisfy the following requirements:

Any respectable Windows 95 application should also use Tab controls for long dialogs, a 3D appearance for user interface elements, the right mouse button to bring up property pages (context menus). It should also be able to move .INI file attributes into the new System Registry and expose its capabilities to other applications and developers as an OLE server.

Windows 95 Shortcuts.

Windows 95 uses the same keystroke shortcuts as Windows 3.x, plus many new shortcuts some of which combine the mouse with keystrokes. For example,

Window Overlay in Windows 95.

By default Windows 95 opens a new window for every folder that you open. This can make your desktop look a little messy and make it difficult to find folders. To solve this, you can get Windows 95 to re-use your current window with the opened folder. To change the default, you must do the following:

Voila! Now you can re-use each window while browsing for your application.

Windows 95 and Chinese Characters.

In a previous What's Up DOCumentation? article, we mentioned that some existing Windows software packages for inputting and displaying Chinese characters do not work under Windows 95. The situation has improved since then.

Twinbridge Chinese Partner, NJ-Win, and UnionWay are some of the software packages that have released new versions. Besides being compatible with Windows 95, these programs include support for Chinese, Japanese, and Korean characters. You can use them in conjunction with popular Web browsers to view Asian Web sites. You can download working demos of these programs from their FTP site. Microsoft has also announced that Windows 95 will be available in Taiwan, Japan, and Korea at the end of November.

Missing Taskbar.

One of our techies spent four days without a Taskbar (and no Start button) trying to figure out why he had only a thin grey line at the bottom of the screen. It turned out that he had "minimized" his Taskbar. To revive it, he brought the cursor arrow down over the grey line until the arrow changed into a skinny arrow. Then he dragged the Taskbar line up until it "maximized".

Shutdown Warning.

Don't just turn off your system when you are done. You must shut it down properly or your files won't get updated. The same warning applies to the 32-bit file system in Windows 95. You can use ALT+F4 to close the current application.

For More Information: Consult yahoo's Win95 page.

Final Tip: The CD-ROM version of Windows 95 includes the Windows 95 Resource Kit, which is both indexed and searchable.

About Robelle

Welcome Allen James Greer.

Since October 11th, a new person has taken residency in the Greer's household. Allen James Greer, weighing a healthy 10 pounds 4 ounces (4720 grams), made his official entry into the world. He is the third child of David Greer, Robelle's president, and his wife Karalee. Both parents and the baby are doing fine.

According to David, Allen's older siblings, Jocelyn and Kevin, have adjusted well to their baby brother. He is not sleeping through the night yet, but he is getting closer. Mom and dad might catch up on their sleep by springtime.

Congratulations, David and Karalee, and welcome, Allen.

Robelle Products: Problems, Solutions, and Suggestions

Suprtool Version 3.7

Incorrect Duplicate Totals.

One of our customers discovered a problem with the Total function on the Duplicate command. This customer was reading a flat file and used Duplicate to generate sub-totals on two fields. After some verification, he noticed that some totals were incorrect. Here is an example of the task:

     >input datafile
     >define department,1,9
     >define unit-count,10,4,display
     >define unit-value,14,8,display
     >define unit-size,22,9,display
     >define location,31,1
     >sort department
     >extract department
     >duplicate none keys total unit-count unit-value
     >list standard

After investigating, we discovered that the problem only occurs when Suprtool deals with odd-length records in the Input file or in the Extract record. Most totals are correct, but some are not. The problem appears in version 3.7 and has been fixed in pre-release 3.7.12 and higher. Pre-releases are available on request for customers with support contracts.

As a workaround, you can pad the Extract record with some additional information to make records an even length. For the example above, we can make the following modification,

     >extract department, " "

Qedit Version 4.3

Correct Number of Commas.

A customer received a comma-delimited file from an outside source. He had to edit some of the fields to make sure they would not get rejected during the import operation. He also wanted to make sure that he had the exact number of fields, no more, no less.

Let us assume that the file contains six fields and that the fields do not contain commas. In a normal comma-delimited file, we expect each record to contain five commas. If records contained fields with commas, however, the field count may not be accurate.

     This,line,has,only five,fields.

We need to use the Pattern option and the QeditCount JCW to make sure there are no more than five commas.

     /list "@,@,@,@,@,@,@" (pattern)
     if qeditcount > 0 then
        echo ***** !qeditcount lines with too many commas *****

Similarly, we can use the following commands to make sure the records have at least five commas. Notice that we are also using the Nomatch option on the List command.

     /list "@,@,@,@,@,@" (pattern nomatch)
     if qeditcount > 0 then
        echo ***** !qeditcount line(s) with too few commas *****

You might want to put all these commands into a single command file and call it Chkcomma. Running Chkcomma from Qedit would give us the following results:

         2     This,line,has,more,than,six,fields.
     1 line found
     ***** 1 line(s) with too many commas *****
         3     This,line,has,only five,fields.
     1 line found
     ***** 1 line(s) with too few commas *****

Frequently Asked Questions

How can I enter a long If command in Suprtool?

A Suprtool command line cannot exceed 256 characters. You can reach this limit if you try to stack all your task commands into a single entity.

     base ...;get ...;sort ...; &
     extract ...; duplicate ...; if ...; &
     output ...;xeq

The only solution in this situation is to put individual commands on separate lines. Then you can control the length of each command. If you are not stacking commands, you may also run into this problem if you use a long and complex If command. In that case, there are different ways to get around the problem.

If your command is complex and you are using long item names, you can assign shorter names by using Define statements. Then you can refer to the same item by using the short or long form.

     define low,re-order-quantity
     define curqty,on-hand-quantity

At the expense of readability, you can also remove unnecessary spaces. For example, you can use if curqty< low instead of if on-hand-qty < re-order-quantity.

If your If command is too long because your list contains numerous values, you can load these values into a table.

     table itemtbl,item-no,item,"111111"
     table itemtbl,item-no,item,"222222"
     table itemtbl,item-no,item,"333333"
     if $lookup(itemtbl,item-no)

This table can replace the following If command,

     if item-no="111111","222222","333333"

If you cannot apply these suggestions to your situation, you can also use the $READ function. The maximum length of the If command is then based on the complexity of the expression and not its length.

The $READ function reads the If expression from $STDINX, or from the use-file when it contains the If command. $READ continues to prompt for input lines until you press Return or enter "//". You must remember to enter all the necessary parts of the If expression including connectors like "and", "or" and commas. With $READ, you do not need an ampersand (&) to continue from one line to the next.

     >get m-supplier
     >if $read                  {prompt for the expression}
     -cust-status = "20" and    {$READ prompts with "-"}
     -state = "AZ",             {the comma is still needed}
     -        "OR"              {no comma on the last line}
     -                          {blank line to terminate $READ}

Xpress Version 3.1.04

Xpress Enhanced for E-mail Responses.

After reading an incoming mail message, Xpress asks you where it should put the message. Typically, you might keep it in your Filing Cabinet, or Waste Basket for further attention. Xpress then prompts you for a reply, which will automatically be sent to the author of the original message.

Since it has become customary for a reply to quote text from the original message, the latest pre-release version of Xpress (3.1.04) has been enhanced to make this easier. If you select Out Basket (option 3) as the destination for an incoming message and then select Edit Message (option 6), Xpress will automatically save the original text in your Waste Basket, as well as copy it into the outgoing text file for editing. You can then quote the original message in your reply without affecting the saved copy of the original message.

This pre-release version of Xpress is available on request for customers with support contracts.

Tip for Formatting Replies.

It is customary to mark quoted text with a ">" in column 1. It is also common to have a standard heading and footing. Here is a simple Qedit command file to quickly pre-format an e-mail response. It requires a file (HDR) with your standard header text and a file (SIG) with your preferred footer. Both of these files must be in your current logon group.


     /changeq 1 ">" @   { insert a ">" in front of each line }
     /addq 0 = HDR      { Insert the contents of HDR file before }
                        { the first quoted line }
     /addq ] = SIG      { Append the standard footing from file SIG }
     /vis 1             { edit the reply in full-screen mode }

Creation Date: Dec 13, 1995
[Robelle] [Qedit] [Suprtool]