Release notes for SirPro V7.5

From m204wiki
Revision as of 21:39, 27 April 2016 by JAL (talk | contribs) (→‎Other features: add content to empty headers)
Jump to navigation Jump to search

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

SirPro is a member of the RKTools product family; see also the release notes for RKTools version 7.5.

The previous version of SirPro was 707, available in March, 2010.

Procedure Search screen (ProcSearch/PS)

Option 1, Procedure List, from the SirPro main menu brings you to this screen.

Field changes

The searching capabilities are enhanced to provide better impact analysis. The following fields are changed or added.

Search Strings

The maximum length has been increased to 66 for each of the five search string fields.

# of context lines

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

# occurrences to display

This number (from 1 to 999) specifies how many occurrences of a search string within a procedure to display.

Hide SEQs/BASEs

SirPro users who are also SirLib users can display or hide SEQ. and BASE. procedures, which are used in code management functions but are not intended to be edited directly.

Ignore Comment Lines

You can ignore any SOUL-formatted comment lines or include all found lines.

New function keys

PF5 - Toggle between case sensitive/insensitive

In case-sensitive mode, a search for "html" finds only the lowercase version of that string. In case-insensitive mode, the same search finds procedures containing either "html" or "HTML".

PF6 - Create Proc

Enter the SoulEdit editor within a skeleton procedure-creation template.

Other features

Logical And/Or for Procedure Name search

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

As in previous SirPro versions, wildcard strings are valid in this field, using an asterisk (*) as a substitution character for any number of characters in the procedure name. For example: *XYZ finds all procedure names ending in the string "XYZ", and XYZ* finds all procedure names beginning with "XYZ".

New in version 7.5:

  • A space indicates a logical And operation. Entering PU END returns only those procedures whose names contain both the character sets "PU" and "ND", for example, PUNP- or PUMPKIN.SPENDER.
  • A vertical bar (|) indicates a logical Or operation. PU|ND finds procedures containing the strings "PU" or "ND", for example, PUMP, COLORPURPLE, and NINTENDO.
  • Wildcards can be used in conjunction with the And/Or selections. PUPR*|SCPR*|MOPR* finds all procedures starting with any of the above strings.

Note: You must use caution when combining And and Or selections, because the routine currently has a bias in favor of Or selections. Specifying PUPR*|SCPR AND for example, does not work. It returns all procedures beginning with "PUPR", then attempts to add to the list any procedure with the characters "SCPR AND", which finds nothing because of the embedded space.

Field error tagging

In case of an error in field specification, for example an invalid Context field, the field is tagged red and an error message is displayed above the PF keys.

Longer procedure names

Still TBD.

Better subsystem transfer

Users can now move from any screen in SirPro, for example, to a screen in SirMon by specifying MON 3.2, for example, in the command line. The 3 refers to option 3 from the SirMon main menu, which opens the USER Monitor Options screen. The 2 refers to option 2 on the USER Monitor Options screen, which invokes the display of system users and measures of their level of activity.

Similarly, SCAN n.n takes you to SirScan screens, FILE n.n to SirFile screens, and PRO n.n to SirPro screens.

Save profile for each change

Most changes you make to SirPro screens are saved, including entries like last item searched for and any procedure selection restrictions, and they are restored if you exit and then return to SirPro.

Procedure List screen (ProcList/PL)

This screen displays a list of the procedures that satisfy the specifications made on the Procedure Search screen described above.

Field changes

Command line

Most of the functions you can perform on the Procedure Search screen may now be done as commands in the command line field. In addition, You can string commands together using a semicolon as a delimiter.

For example, to switch to a new file, SIRIUS, and display those procedures that have "HELP" in their name, specify:

FL SIRIUS;A HELP

An erroneous command remains on the screen so it can be amended.

Most commands have a full name and an abbreviation.

Procedure List commands
CommandDescription
{PROCS | A} [xxxx] Changes the procedure name filter to 'xxxx'. Wildcarding is assumed and fully supported, so for instance, the command PROCS CADDIE finds all procedures with the string "CADDIE" in its name.

If you use specific wildcard characters, 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, all procedures are displayed.

AND xxxx Changes the procedure name filter by combining xxxx with the existing value with And logic, applying the "distributive law" if necessary. For instance, if the current value of the procedure name filter is A|B, an AND C command changes it to A C|B C by applying the 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 xxxx with the existing value with And logic, but without applying the "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 changes 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 changes 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 is created.
{FILE | FL} xxx Changes the file context to xxx using the existing privileges to the file.
FLP xxx Changes the file context to xxx with a prompt for password.
{GROUP | GP} xxx Changes the group context to xxx using the existing privileges to the group.
GPP xxx Changes the group context to xxx with a prompt for password.
PASSWORD | PWD Reopens the current file or group with a 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 the Last Updater ID field. The valid value for xxx is a string not longer than 10, or is a 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* looks 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. 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 gives a default value of 0 to the # of context lines field.

OCC [nnn] Changes the value of the # of occurrences to find field. The valid value for the optional nnn is a number between 1 and 999 or it is ALL. If there is no nnn specified, it gives a default value of 1 to the # of occurrences to find field.
IC [x] Changes the value of the Ignore Comment lines field. The valid values for the optional x are Y and N. If there is no x specified, it gives a default value of Y to Ignore Comment lines.
HS [x] Changes the value of the Hide SEQs/BASEs field. The valid value for the optional x is Y or N. If there is no x specified, it gives a default value of Y to Hide SEQs/BASEs.

Sel (selection) field

The following procedure selection option is added:

E (Edit)
Invokes SoulEdit, the SOUL editor.

The following new selection options are part of SirLib, the managed update and configuration management system. If SirLib is not installed, these commands are not valid.

Options that require SirLib
CommandDescription

U (Undo)

May only be executed against a change deck. This command performs the same operation as Q, resulting in a "working" procedure and a sequenced copy of that procedure being created in the user's selected development procedure file. 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 both of these:

  • A new working procedure with all updates applied and the user's current changes still in place
  • 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

The new PL command allows direct entry to the Procedure List screen in SirPro. The format is:

PL [procedurePattern] [FILE fileName | GROUP groupName]

If FILE or GROUP is not supplied, the current open context is used. The context is obtained using $view('APDFCNTX') (see APDFCNTX parameter).

Note: If a procedure name search is required for the words "FILE" or "GROUP," it must be entered as:

PL file FILE filename

where:

  • file indicates procedures whose name contains the word "file."
  • FILE is required because the context is not automatically added if searching for the words "FILE" or "GROUP."

Enhanced Help

(in progress)