Release notes for SirPro V7.5

From m204wiki
Jump to navigation Jump to search

This document lists the changes that have been made for SirPro version S7.5. It requires Model 204 release 7.5 or higher.

Procedure Search screen (SEARCH)

Field changes

The searching capabilities have been enhanced to provide better impact analysis. The following fields has been changed or added.

Procedure name

Enter a procedure name or search mask. If a procedure name is entered and any matching procedures are found, a procedure list is presented.

Wildcard strings are valid in this field, using "*" as a substitution character for any number of characters in the procedure name. For example: *XYZ will find all procedure names ending in the string XYZ, and XYZ* will find all procedure names beginning with XYZ.

A space indicates "AND", so entering "PU END" would return only those procedures whose names contain both the character sets "PU" and "ND", so, PUNP-END or PUMPKIN.SPENDER.

The "or" bar indicates "OR", so "PU|ND" would find any procedures containing the strings "PU" or "ND". This might include "PUMP", "COLORPURPLE" and "NINTENDO".

Wildcards can be used in conjuntion with the AND/OR selections, so "PUPR*|SCPR*|MOPR*" would find all procedures starting with any of the above strings.

The routine currently has a bias in favor of "OR" selections, so a selection like "PUPR*|SCPR AND" won't work. It will return all procedures beginning with PUPR, then will attempt to add to the list any procedure with the characters "SCPR AND", which will find nothing, because of the embedded space. So do not combine AND and OR selections.

Search strings

The maximum length has bene increased to nn.

# of context lines

Numeric indicator (0 through 9) of number of lines of code to display before and after the line containing the search string.

# occurrences to find

The number (from 1 to 999) that specifies the number of occurrences within a procedure that will be displayed.

Hide SEQa/BASEs

SirLib users will see a prompt and entry area that allows the display or hiding of SEQ. and BASE. procedures, which are used in code management functions but are not intended to be edited directly. Enter "Y" to prevent this procedures from being displayed, and "N" to display them.

Ignore Comment Lines

If set to Y it will ignore any Soul formatted comment lines. If set to N all found lines will be included.

New Function Keys

PF5 - Toggle between case sensitive/insensitive

In Case Sensitive mode, a search for "html" would only find the lower-case version of that string. In Case-Insensitive mode the same search would find procedures containing either "html" or "HTML".

PF6 - Create Proc

Other features

Longer proc names

Better subsystem transfer

Save profile for each change

Procedure List screen (PL)

Field changes

Command Line

Most of the functions able to be performed on the Search screen may now be done as commands in the Command Line field. In addition commands can be strung together using the semicolon as a delimiter. For example to switch to a new field and display those procedures that have HELP in their name can be done as:

FL SIRIUS;A HELP

If a command is in error it will now leave the command on the screen so it can be amended.

Most commands have a full name and an abbreviation.

CommandDescription
PROCS | A [xxxx]

Changes the procedure name filter to 'xxxx'. Wildcarding is assumed and fully supported, so for instance, the command 'PROCS CADDIE' will find all procedures with the string 'CADDIE' in its name. If specific wildcard characters are used, the search is done for the specified pattern, so 'PROCS I.*' restricts the display to procedures beginning with 'I.' If the filter name 'xxxx' is omitted then all procedures are displayed.

AND xxxx

Changes the procedure name filter by combining 'xxx' with the existing value with AND logic, applying 'distributive law' if necessary. For instance, if the current value of the procedure name filter is 'A|B', an 'AND C' command will change it to 'A C|B C' by applying 'distributive law':

 (A|B) C -> A C|B C.

Hence this filters the current display listing to show only those that also meet the new criteria.

+AND xxxx

Changes the procedure name filter by combining 'xxx' with the existing value with AND logic, but WITHOUT applying 'distributive law'. It just simply appends 'xxxx' to the existing procedure name filter. For instance, if the current value of the procedure name filter is 'A|B', an 'AND C' command will change it to 'A|B C'.

OR xxxx

Changes the procedure name filter by combining 'xxxx' with the existing value with OR logic. For instance, if the current value of the procedure name filter is 'A|B', an 'OR C' command will change it to 'A|B|C'. Hence this adds additional procedures to the display listing.

CREATEPROC | CREATE | CP [xxxx]

Creates a new procedure named 'xxxx' in the current file/group context. If there is no 'xxxx' specified, an unnamed procedure will be created.

FILE | FL xxx

Changes the file context using the existing privileges to the file.

FLP xxx

Changes the file context with prompt for password.

GROUP | GP xxx

Changes the group context using the existing privileges to the group.

GPP xxx

Changes the group context with prompt for password.

PASSWORD | PWD

Reopens the current file or group with prompt for password. It implies a switch of privileges associated with the password to the current file or group.

LASTID | LID [xxx]

Changes the value of 'Last Updater ID'. The valid value for 'xxx' is a string not longer than 10, or blank.

HAS | HA | H [xxx]

Changes the selection to procedures containing the specified string 'xxx'. 'HAS $GETG' restricts procedures to those containing $GETG. HAS does not support wildcards, so a search for 'locate*' will look for the string 'locate*'. If the string 'xxx' is omitted the search string is cleared.

DISPLAY |  CODE | SHOW | CL [n]

With these commands you can alter the number of lines of code to be displayed beginning with the first of any found search string. Obviously, if no search string was specified on the previous screen, this command has no effect. Valid values for 'n' are 0 through 9. If there is no 'n' specified,it will give a default value of 0 to the '# of context lines'

OCC [nnn]

Changes the value of '# of occurrences to find'. The valid value for the optional 'nnn' is either a number between 1 and 999 or 'ALL'. If there is no 'nnn' specified, it will give a default value of 1 to the '# of occurrences to find'.

IC [x]

Changes the value of 'Ignore Comment lines'. The valid value for the optional 'x' is 'Y' or 'N'. If there is no 'x' specified, it will give a default value of 'Y' to the 'Ignore Comment lines'.

HS [x]

Changes the value of 'Hide SEQs/BASEs'. The valid value for the optional 'x' is 'Y' or 'N'. If there is no 'x' specified, it will give a default value of 'Y' to the 'Hide SEQs/BASEs'.

Selection field

The following procedure selection option has been added:

 E  (Edit):  Invokes the SoulEditor. 

The following new selection options a part of the Sirius Configuration and Change Control System (SirLib). If SirLib is not installed then these commands are not valid. Further information on managed updates and the Configuration Management system is in the SirLib User's Guide.

 U (Undo): May only be executed against a change deck.  This command
    performes the same operation as a Q, resulting in a "working"
    procedure and a sequenced copy of that procedure being created
    in the user's selected development procfile.  However, the U
    command specifically includes the change deck against which it is
    executed in the code for the working procedure, but NOT in the
    code from the sequenced copy.  In other words, it recreates
    the state of the development procedures that created the change
    deck against which the U command is executed.
    Typically, the U command is used to recreate the state of development
    when the programmer has accidentally deleted the procedures she
    was working on, either manually, or via the "Clean-up" switch on
    the Xcompare screen.
    The U command is a special-use feature, and there are a number
    of ways in which it will fail to work -- most notably, if the
    selected change deck is somewhere in the middle of a series of
    changes and, by excluding it from procedure creation, some code
    dependency is missing.  However, for its primary function --
    recovering from a mistake that was made very recently, typically
    as the most recent change to a procedure, it should always work.
 Y  This change-control prefix command provides a special check-out
    ability in which the user can "refresh" their local working copy
    of a procedure with changes that have been checked in by other
    programmers since the working copy was originally taken from
    the source procedure file.  "Y" is applied against the working
    procedure, a screen is presented, and the result is a new
    working procedure with all updates applied AND the user's current
    changes still in place, and a sequenced copy that has all updates
    applied, but the user's current changes not in place.
    In other words, the "Y" command is very much like a "Q" command,
    but it is done while changes are in progress, and it slips
    into place other changes that have occurred since the original
    procedure check-out.

New PL subsystem

(Adrian to complete)

Enhanced Help

(in progress)