Suprtool 5.7 for HP e3000:
Change Notice
Doc-To-Help Standard Manual
by Robelle Solutions Technology Inc.
Program and manual copyright © 1981-2015 Robelle Solutions Technology Inc.
Permission is granted to reprint this document (but not for profit), provided that copyright notice is given.
Qedit and Suprtool are trademarks of Robelle Solutions Technology Inc. Oracle is a trademark of Oracle Corporation, Redwood City, California, USA. Other product and company names mentioned herein may be the trademarks of their respective owners.
Robelle Solutions Technology Inc.
Suite 372, 7360 137 Street
Surrey, BC Canada V3W 1A3
Phone: 604.501.2001
Fax: 604.501.2003
Support: 289.480.1060
E-mail: sales@robelle.com
E-mail: support@robelle.com
Web: www.robelle.com
Contents
Table of
Contents
Introducing Suprtool Version 5.7 4
Introduction........................................................................................................... 4
Highlights in Suprtool 5.7....................................................................................... 4
Highlights in Suprtool 5.6....................................................................................... 4
Highlights in Suprtool 5.5....................................................................................... 4
Highlights in Suprtool 5.4....................................................................................... 5
Known Problems.................................................................................................... 5
Compatibility........................................................................................................ 6
CPU Serial Number and CPU Name (HPSUSAN & HPCPUNAME)............................... 6
Documentation....................................................................................................... 6
Installation 7
Overview............................................................................................................... 7
Ecometry Users...................................................................................................... 7
Installation Instructions............................................................................................ 7
Installation Assistance............................................................................................. 7
Enhancements in Version 5.7 8
Introduction........................................................................................................... 8
Linkmgr................................................................................................................ 8
Stexpmgr.............................................................................................................. 8
$Proper................................................................................................................. 8
$Translate............................................................................................................ 10
Enhancements in Version 5.6 12
Introduction......................................................................................................... 12
Extract Command................................................................................................. 12
$SubCount.......................................................................................................... 13
Enhancements in Version 5.5 14
Introduction......................................................................................................... 14
Set XLTRIM....................................................................................................... 14
Escape Command.................................................................................................. 14
Bugs Fixed 15
Bugs Fixed In Suprtool 5.5.................................................................................... 15
Bugs Fixed In Suprtool 5.4.01................................................................................ 15
Bugs Fixed In Suprtool 5.3.11................................................................................ 15
Suprtool
provides fast access to your data on the HP e3000. With Suprtool, you can
perform many necessary DP functions easily, with just a few simple commands. At
Robelle we are constantly working on your enhancement requests so that we can
include them every year when we release an updated version of Suprtool.
á STExport now has a ÒsuprmgrÓ file similar to Suprtool. STExport will process all the commands found in STEXPMGR.PUB.SYS.
á Suprlink now has a ÒsuprmgrÓ file similar to Suprtool. Suprlink will process all the commands found in LINKMGR.PUB.SYS.
á
Suprtool now has the
$proper function which will shift the first character in a string and any first
character after a space or ampersand.
á
Suprtool now has the
Translate command and a $translate function to obfuscate test data or any byte
field from being readable.
á Suprtools' extract command now has three special keywords to help with extract using a range, which is designed to make your Suprtool scripts more easily maintained. Suprtool now has $all, $first and $last which respectively means all fields, the first field or the last field. Note that $first and $last may only be used in a range extract.
á $subcount has been added to keep a running count for a given sort break.
á
Set XLTRIM On now tells
Suprtool to close a file and release the disc space between EOF and the Flimit.
á
STExport's Escape command has
been re-engineered to fix some corner cases that didn't work previously.
á
Due to an issue with Btrees,
Suprtool would incorrectly select records when doing an update or delete, and
if using chain with a btree index on a master dataset.
á The $edit function did not work properly with alpha based edit masks and if the target was greater than 32 characters.
á
Suprtool now treats KSAM64
files with labels as SD files, in the same manner as KSAMXL files are.
á A warning will print if a non-regular SD file is loaded into a Table with the data option. The data is not loaded into the table.
á
An error will print if an
extract command attempts to reference data when loaded from table that in turn
was loaded when using a non-regular SD file, such as KSAM/XL, KSAM64 and CM
KSAM.
á
Suprtool did not print out a
warning message when attempting to combine sort with output,else.
á
Bradmark's DBGeneral can
produce Jumbo datasets that are a single chunk, Suprtool did not handle these
single chunk master jumbo datasets properly as the last block calculation was
done only after opening the last chunk itself. We have adjusted the logic in
making sure the calculation is done for this case earlier. Adager does not
create these single chunk jumbo datasets. There is an un-documented $control directive
in dbschema called $forcejumbo, which will produce one of these single chunk
jumbos so we are supporting it in Suprtool 5.3.11.
á The Output command has been enhanced to accept the new verb "else", which when invoked it will write out the records that do not qualify and write them to an external file.
á Suprtool did not properly clear the data field information from a table at the end of a task.
á Suprtool did not properly zero out a packed field target when an table entry was not found when extracting data from a table.
á
If $lookup can now return the data portion loaded into a table to
use in a comparison.
á
STExport HTML command did not calculate the maximum record size
properly in some cases.
á
Suprtools prefetch default value has been changed from 2 to 0.
Set
Itemlock does not work in one particular case.
Suprtool/iX
is compatible with MPE V, MPE XL, and MPE/iX, including MPE/iX 6.5, 7.0 and
MPE/iX 7.5.
Suprtools
default prefetch value has been changed from 2 to zero.
Ksam64 files were not assumed to be Self-describing like CM KSAM and KSAMXL files when it was the input file and had labels.
A warning will print if a non-regular SD file is loaded into a Table with the data option.
An error will print if an extract command attempts to reference data when loaded from table that in turn was loaded when using a non-regular SD file, such as KSAM/XL, KSAM64 and CM KSAM.
Suprtool
and its associated products run only on CPUs whose serial numbers have been
encoded ("showvar hpsusan" on MPE/iX). They also may be encoded with
your HPCPUNAME values. If it fails to run and you get an "invalid
HPCPUNAME" or "invalid HPSUSAN" error message, contact Robelle
for assistance.
The
user manual contains the full description of all the Suprtool suite of products
including Dbedit, Suprlink, STExport and Suprtool2, as well as usage tips and
commands for each. The manuals are up-to-date with all the latest changes. To
see only the changes in the latest version, see the "What's New"
section of the manual, or see the change notice.
You
can download our manuals and change notices in various formats and you can order printed (hardcopy) manuals from our
web site at:
http://www.robelle.com/library/manuals/
We
have two types of Installations, Tape and Download. We provide links to the
Installation instructions on our web site for each type of Install.
Users
of the Ecometry application need to use the installation instructions supplied
by Ecometry Corporation. Those instructions have extra steps for updating the
Ecometry code accounts.
You
will find the Ecometry version of these instructions at http://www.robelle.com/ecometry/
Types
of installations, tape, download combined qedit and suprtool tape.
If
you received a production release tape from Robelle, then you can install using
the instructions on this web page:
http://www.robelle.com/support/install/tape/stprod.html
If
you downloaded the Suprtool production release from our web site then the
instructions can be found here for the ftp download method:
http://www.robelle.com/downloads/install-stprod-ftp.html
and
here for the WRQ download method:
http://www.robelle.com/downloads/install-stprod-wrq.html
If
you have any questions about the upgrade process or run into any problems,
please call us. Technical support is available on weekdays from 8 a.m. to 4 p.m.
Pacific time at 289.480.1060 or you can e-mail your question to support@robelle.com.
You can also write the script using $first / $last as your preference, but $first and $last are also useful if you need to add data into the middle of the fields you extract:
Suprtool
is constantly being updated with new features. The following section describes
the new enhancements to Suprtool since Suprtool 5.6.
Suprlink now has a ÒsuprmgrÓ file similar to Suprtool. Suprlink will process all the commands found in LINKMGR.PUB.SYS.
STExport now has a ÒsuprmgrÓ file similar to Suprtool. STExport will process all the commands found in STEXPMGR.PUB.SYS.
Suprtool now has the $proper function which will shift to upper case the first character of a byte type field and after any space or ampersand. It will also shift to lower case any other characters in the byte-field.
>in mprod
>list stan
>xeq
Apr 29, 2014 13:00
File: mprod
Page 1
PRODUCT-DESC
skil 3/8" variable speed drill
b&d router
skil var. sp. auto-scroll saw
skil 8 1/2" circular saw
b&d cordless screwdriver
makita 8 1/4" circular saw
b&d variable speed jigsaw
makita 1/2" router
makita 3/8" var. speed drill
skil router
b&d 7 1/4" circular saw
b&d 3/8" variable speed drill
makita 1" jigsaw
Considering the following data, you can fix all of the product names with one simple task:
>in mprod
>ext product-desc=$proper(product-desc)
>list stan
>xeq
May 01, 2014 11:40
File: MPROD
Page 1
PRODUCT-DESC
Skil 3/8" Variable Speed Drill
B&D Router
Skil Var. Sp. Auto-Scroll Saw
Skil 8 1/2" Circular Saw
B&D Cordless Screwdriver
Makita 8 1/4" Circular Saw
B&D Variable Speed Jig Saw
Makita 1/2" Router
Makita 3/8" Var. Speed Drill
Skil Router
B&D 7 1/4" Circular Saw
B&D 3/8" Variable Speed Drill
Makita 1" Jig Saw
Note that any character after a space, Ò&Ó, or Ò-Ò is upshifted for a proper name. Suprtool will also downshift those characters that do not qualify as needing proper capitalization and it is a capital character, the proper function will downshift those characters. See an example below:
>IN NAME
>LIST
>XEQ
>IN NAME.NEIL.GREEN (0) >OUT $NULL (0)
NAME
= NEIL ARMSTRONG
>IN NAME
>EXT NAME=$PROPER(NAME)
>LIST
>XEQ
>IN NAME.NEIL.GREEN (0) >OUT $NULL (0)
NAME
= Neil Armstrong
The $proper function only works on byte type fields. (5.6.12)
Suprtool now has a $translate function which in conjunction with the translate command allows you to build a translation table, whereby you can translate from any byte character to any character. We have also added a method to a supplied translate table which will allow you to obscure the data such that it canÕt be read.
>in
newprod
>list
>xeq
>IN
NEWPROD.NEIL.GREEN (0) >OUT $NULL (0)
PRODUCT-DESC = Skil 3/8" Variable
Speed Drill
>IN
NEWPROD.NEIL.GREEN (1) >OUT $NULL (1)
PRODUCT-DESC = B&D Router
>in
newprod
>translate
tounread
>ext
product-desc=$translate(product-desc)
>out
unread,link
>xeq
IN=13,
OUT=13. CPU-Sec=1. Wall-Sec=1.
>in
unread
>num
1
>list
>xeq
>IN
UNREAD.NEIL.GREEN (0) >OUT $NULL (0)
PRODUCT-DESC = Hzxo .2)? Epcxpqot Hatts
Rcxoo
Warning: NUMRECS exceeded; some records not
processed.
IN=2,
OUT=1. CPU-Sec=1. Wall-Sec=1.
>in
unread
>translate
toread
>ext
product-desc=$translate(product-desc)
>list
>xeq
>IN
UNREAD.NEIL.GREEN (0) >OUT $NULL (0)
PRODUCT-DESC = Skil 3/8" Variable
Speed Drill
>IN
UNREAD.NEIL.GREEN (1) >OUT $NULL (1)
PRODUCT-DESC = B&D Router
You
can make your own Translate table using the Translate command, where you can
specify the character you want to translate and what you want to translate to,
using Decimal Notation. So if you want to translate ÒAÓ to ÒZÓ, you would type
the command:
Translate Ò^65:^90Ó
So you
specify the from character on the left in decimal which is the capital-A and
the to-character is also in decimal format which is capital-Z, which is decimal
90. If you want to reverse the translation you can simply do the following
command and translate the field back with:
Translate Ò^90:^65Ó
This is not meant to be an encryption solution, but it will help obfuscate test date really quickly. (5.6.12)
Suprtool
is constantly being updated with new features. The following section describes
the new enhancements to Suprtool since Suprtool 5.5
Suprtool's extract command now has three new keywords, which can be used for extract range feature. You can now say extract $all, extract $first / $last on an SD file or Image/Eloquence dataset. The intention is to make your scripts more easily maintained. If you had a script that you wanted to put a sequence number at the beginning and then extract the rest of the dataset you previously had to specify the starting field and the ending field. For example if the first field in a dataset was order-no and the last field was pst-code you may have a script that looked like this.
base orddb
get customers
def seq-no,1,4,double
ext seq-no=$counter
ext order-no / pst-code
out newfile,link
xeq
If you added any fields to the beginning or end of the dataset you would have to re-write the script. Now you can write the script as being:
base orddb
get customers
def seq-no,1,4,double
ext seq-no=$counter
ext $all
out newfile,link
xeq
You can also write the script using $first / $last as your preference, but $first and $last are also useful if you need to add data into the middle of the fields you extract:
base orddb
get customers
def seq-no,1,4,double
ext $first / zip
ext seq-no=$counter
ext tax-code / $last
out newfile,link
xeq
Please note that if a self-describing file has a fieldname that is a duplicate field and one of the duplicate fields is the last field in the file, then $first / $last and $all, will only extract up to the first occurrence of the duplicate fieldname. This may seem as an issue but it is consistent with what Suprtool does currently with extract from a range. Currently and prior to the $first / $last enhancement Suprtool would have extracted only up to the first occurrence of the field if you had a file such as this:
>form
File: newfile
(SD Version B.00.00) Has
linefeeds
Entry:
Offset
CHAR-FIELD
X5 1
INT-FIELD
I1 6
DBL-FIELD
I2 8
PACKED-FIELD
P12 12
PACKED*-FIELD
P12 18
QUAD-FIELD
I4 24
ID-FIELD
I1 32
LOGICAL-FIELD
K1 34
DBLLOG-FIELD
K2 36
ZONED-FIELD
Z5 40
FILLER
X36 45
FILLER X36 81
Entry Length: 116 Blocking: 1
Notice that FILLER is a duplicate named field, so if you entered,
extract char-field / filler, Suprtool would only extract up to and including
the first FILLER field. For consistency, extract $first / $last behaves the
same way.
$SubCount has been added to provide a counter that only gets reset at a given sort break.
In file1sd
Sort char-field
Def control-count,1,4,double
Ext $first / $last
Ext control-count=$subcount(char-field)
Out newfile,link
xeq
What Suprtool will do in this case is start incrementing a number starting with 1, and increase by 1 for any given char-field value. This way you can add a counter based on a sort break for a given field.
Suprtool
is constantly being updated with new features. The following section describes
the new enhancements to Suprtool since Suprtool 5.4.
Suprtool
now has the command Set xltrim on, which tells Suprtool to close the output
file in a manner in which it releases the disc space between EOF and the
Flimit, but the Flimit remains the same. This trim will only occur of set
squeeze is not set or if set squeeze is off.
STExports
Escape command has been revised to be faster and a couple of corner cases.
Ksam64 files. Ksam64 files were not assumed to be Self-describing like CM KSAM and KSAMXL files when it was the input file and had labels.
$edit function. The $edit function did not work well with alpha based edit masks and if the target was greater than 32 characters.
Table File Data Load. A warning will print if a non-regular SD file is loaded into a Table with the data option. The data is not loaded into the table.
Table File Data Lookup. An error will print if an extract command attempts to reference
data when loaded from table that in turn was loaded when using a non-regular SD
file, such as KSAM/XL, KSAM64 and CM KSAM.
BTrees and Chain. Due to an issue with Btrees, Suprtool would incorrectly select
records when doing an update or delete, and if using chain with a btree index
on a master dataset.
Output, Else. Suprtool would not print a warning when output,else was specified during a sort operation.
GET Command. The Get command would get too many records if the dataset was a single chunk jumbo dataset. Only Dbgeneral and dbschemas $forcejumbo can make these single chunk datasets.
Table Command. Suprtool did not properly clear the data field information from a table at the end of a task.
Extract from Table. Suprtool did not properly zero out a packed field target when an table entry was not found when extracting data from a table and the Packed field was P12 or higher.