Section 8: Commands
Commands
Use APPX ILF X-Ref (reliable) and APPX PDF X-Ref (not so reliable) from item 2.9. Check for APPX Inquiry Process too!
- Inspect End-of-Process Event Point in Query
ASI: 12.11
- Revise Combined Event Points
ASI: 9.12, 9.42 CAUTION: Not all combined event points are being flagged!
- Set Alt Commands Skipped - Alt # > 1
ASI: This message is printed if an input or output process has commands present in the Set Alternate No. command series and the window has an Alternate No. greater than 1. The conversion utility does not convert these commands since they are not executed in SP2. No action is needed.
- Revise Use of (PHASE)
APPX CG: In APPX, (PHASE) becomes OPERATIONAL PHASE. This predefined field may be compared against or set only to one of the constant literals INITIAL SETUP, LIVE OPERATIONS, or RECOVERY PROCESSING (or to a field whose value is one of these literals). Any statements that set or compare OPERATIONAL PHASE to another field are flagged and must be revised.
- Revise Use of (PF KEY) On Display Only Window
ASI: 9.21
- Inspect Use of (PF KEY) 1
APPX CG: In APPX, PF keys 1 and 2 are combined into the SCAN key. The statements should be inspected to see if the distinction between keys 1 and 2 is significant.
- Inspect Use of (PF KEY) 2
APPX CG: In APPX, PF keys 1 and 2 are combined into the SCAN key. The statements should be inspected to see if the distinction between keys 1 and 2 is significant.
- Revise Use of (PF KEY) 6
- Revise Use of (PF KEY) 7
- Revise Use of (PF KEY) 8
- Inspect Use of (PF KEY) 13
- Revise Use of (PF KEY) 14
- Inspect Use of (PF KEY) 16
- Revise Use of (PF KEY)
- Revise Use of (SCAN)
- Inspect Use of (INCLUDE)
ERRORRevise Use In End-of-Function Command SeriesASI: 11.3 This message prints if an ERROR command is found in the End of Function command series for an update function.
AT FIELDRevise AT FIELD in Non-Image Event PointASI: 8.21
BEG READInspect for BEG AT / END ATASI: 8.10/OK
DATE ADDInspect DATE ADD: AAA FieldName
Unit n AAA FieldnameASI: 8.15
SET MNTHInspect Usage of SET MNTH ShortASI: 8.16
WARNINGRevise Use In End-of-Function Command SeriesASI: 11.3 This message prints if an WARNING command is found in the End-of-Function command series for an update function.
END ATInspect Usage of END ATASI: 8.10/OK
READNEXTInspect for READNEXT Within BEG READ LoopASI: 8.9
APPX CG: READNEXT within a BEG READ/END READ loop operates slightly differently in APPX than in SPEED II. In SPEED II, a BEG READ command affects the current file position and, thus, the record read by a READNEXT within the loop. In APPX, a BEG READ statement has no affect on what record is read by a subsequent READNEXT.
If the conversion program detects READNEXT following a BEG READ statement in the command series, it is reported in the conversion message. The BEG READ may not necessarily be related to the same file as the READNEXT; the conversion program does not check for this (if the files are not the same, the conversion message can be ignored).
The APPX statements should be inspected to see if the READNEXT is within a BEG READ/END READ loop on the same file. If so, a BEG AT should be added before the READNEXT to read the desired record.
CNV ZONERevise Use of CNV ZONEASI: 8.37
CNV FLTRevise Use of CNV FLTOK INPUTAAA FIELDNAME Field Not On FileOK INPUTAAA FIELDNAME Cross Appl Field NOFOK INPUTAAA FIELDNAME Inspect - Not In PCFASI: 9.25 All OK INPUT commands which reference a field which is not in the input function PCF file are listed.
SELECTRevise Use of SELECTSELECTSELECT not converted - No Extra TF LevelAPPX CG: In SPEED II, the SELECT statement permits a variable value for Shared Y/N, SELECT is converted to a CLOSE followed by an OPEN. APPX does not permit a variable value for this in the OPEN statement. The conversion program converts this by inserting an IF statement to test the value of the variable, but can do this only if there is at least one level remaining in the T/F field on the SELECT statement.
SELECTCheck for Subsequent IF EXIST on AAA FILENAMEAPPX CG: In SPEED II, the SELECT statement is used to open a file for another company. This is converted to a CLOSE followed by an OPEN, each of which is preceded by a SET statement setting the predefined field NEXT DATABASE to the database ID (company ID). If this file is subsequently checked using an IF EXIST statement, it is necessary to manually insert prior to the IF EXIST statment a SET statement setting NEXT DATABASE to the database ID.
*Revise Reference To 'PF' / 'SPEED' / 'EXPLAIN'**Revise Reference To 'PF' / 'SPEED' / 'EXPLAIN'ERRORRevise Reference To 'PF' / 'SPEED' / 'EXPLAIN'WARNINGRevise Reference To 'PF' / 'SPEED' / 'EXPLAIN'MESSAGERevise Reference To 'PF' / 'SPEED' / 'EXPLAIN'CANCELRevise Reference To 'PF' / 'SPEED' / 'EXPLAIN'ASI: 2.30 (SPEED/EXPLAIN flagged in V05 after 08/27/96) The appropriate message is printed if the command contains any one of the following phrases: 'PF', 'Pf', 'pf', 'SPEED', 'Speed', 'speed', 'EXPLAIN', 'Explain', or 'explain'.
- AAA FIELDNAME Field Not On File
ASI: This message is printed when attempting to determine if a total field is being used in a non-total command.
- AAA FIELDNAME Cross Appl Field NOF
ASI: This message is printed when attempting to determine if a total field is being used in a non-total command.
SETInspect COMMAND On Total-Type FieldCOMPUTEInspect COMMAND On Total-Type FieldRESTOREInspect COMMAND On Total-Type FieldASI: 8.13, 10.23, 11.4 A message is printed if the left operand for one of these statements is a total field.
TOTALAAA FIELDNAME Inspect - RoundingASI: 8.27
TOTALAAA FIELDNAME Field Not On FileASI: This message is printed when checking the precision of the operands for a TOTAL command.
TOTALAAA FIELDNAME Cross Appl Field NOFTOTALRevise Rounding: AAA FIELDNAME
with: AAA FIELDNAMEASI: 8.27
- AAA FIELDNAME Field Not On File
ASI: This message is printed when validating a constant against the receiving field.
- AAA FIELDNAME Cross Appl Field NOF
ASI: This message is printed when validating a constant against the receiving field.
- Revise Invalid Date Constant
CNV BINInspect Usage: APPX Rounds - SP2 TruncatesASI: 8.7 All CNV BIN commands are flagged.
CNV BINAAA FIELDNAME Field Not On FileASI: This message prints when checking the operand of a CNV BIN command to see if it is a 3 byte alpha field.
CNV BINAAA FIELDNAME Cross Appl Field NOFASI: This message prints when checking the operand of a CNV BIN command to see if it is a 3 byte alpha field.
CNV BINRevise CNV BIN - Uses 3-Byte AlphaAPPX CG: SP2 permits a CNV BIN command using a three-byte alpha field. APPX does not permit this. Any instances of a CNV BIN command using a three-byte alpha field must be revised.
IFRevise RelationANDRevise RelationORRevise RelationASI: 8.34 This message prints if the relation operator is 'BW'
- Inspect Use of (ALTERNATE NUMBER)
ASI: 8.23 This message prints if the command is not in the SP2 Set Alternate No. command series.
- Inspect Use of (RECORD NUMBER) If Multi-Level
ASI: 8.24 Note that the conversion log message is misleading. Until this feature is implemented in APPX, it does not work at any level.
- Inspect Use of (FUNCTION CODE) In Sort
ASI: 12.11
APPX CG: In SPEED II, a sort function is completed before a subsequent output or update. Consequently, if (FUNCTION CODE) is set in a sort function, a subsequent output or update can be executed conditionally based on the (FUNCTION CODE) value. In APPX, a query process (which performs the sort) is executed concurrently with an output or update process, and will begin execution before the query sets (PROCESS CODE), which is the APPX equivalent of (FUNCTION CODE).
- Revise (PRINT FILE) For Portability
- Inspect Use of (SCAN) If Multi-Level
- Inspect Use of (NEXT COMPANY)
- Revise (PRINT LIBRARY) For Portability
- Revise (PRINT VOLUME) For Portability
- Revise (PRINT SIZE FACTOR) For Portability
SET(PF KEY) Not In Valid Event PointASI: 9.32 All SET commands which modify the value of (PF KEY) are listed if they are not in the Pre-Display or Option Intercept command series in an input function.
SETAAA FIELDNAME Field Not On FileSETAAA FIELDNAME Cross Appl Field NOFSETAAA FIELDNAME = Num Use CNV TEXT?ASI: 8.28 To find commands setting an alpha field from an indexed variable (the only circumstance specifically known to be a problem), run the APPX Software, Inc. UTL CS utility "APPX STMT 'Format 5' List" and enter "ALPHA" as basic field type 1, "NUMERIC" as basic field type 2, and "---" as app ID 2. If any found, use a numeric work field to set the alpha field, rather than the indexed variable.
- Inspect Query For Updating
ASI: 12.11
RUNRevise Xtrnl Fn For PortabilityRUNRevise Xtrnl Fn For Portability /X-Appl Ref AAARUNInspect X-Application Reference to AAARUNWAIT Converted To LOGOUTRUNSET ALARM Cannot Be ConvertedRUNPRINT USAGE LOG Cannot Be ConvertedRUNTRANSFER USAGE LOG Cannot Be ConvertedRUNINTERNAL Cannot Be ConvertedASI: 8.19