SirTune and Model 204 quad types
Jump to navigation
Jump to search
The basic unit of work in compiled SOUL is the "quad."
Every SOUL statement generates one or more quads.
By breaking down Model 204
processing by quad types (using the QUAD
parameter on STATE
reports), you can get an
idea of the general type of work occurring in an Online.
To interpret a QUAD report, it is important to know what the individual quads do. $Function quads are easy to interpret since they are listed by function name. Other quads are listed here with a brief description of their function.
ADDAV | Add a fieldname/value pair to a record. Can be an ADD statement, part of a CHANGE statement or one line in a STORE RECORD statement. |
---|---|
INSERT | Add a fieldname/value pair to a record for the INSERT statement. |
ANDQ | Perform a logical AND in a 204 expression (possibly in an IF statement). |
ARADD | Perform an arithmetic addition in an expression. |
ARDIV | Perform an arithmetic division in an expression. |
ARMUL | Perform an arithmetic multiplication in an expression. |
ARSUB | Perform an arithmetic subtraction in an expression. |
ASSQ | Assigns result (possibly intermediate) of an expression to a result variable. |
ASSQCN | Assigns integer constant to a (possibly intermediate) fixed result variable. |
ASSQEE | Assigns result (possibly intermediate) of a string expression to a string result variable. |
ASSQNN | Assigns result (possibly intermediate) of a numeric expression to a numeric result variable. |
ASSQO | Assigns Blob field value to the user buffer. |
AUDITUS | The part of the AUDIT statement that actually moves data into the journal. |
BACKOUT | The BACKOUT statement. |
BAND | Boolean AND. Combine two bit maps as part of FIND statement or in list manipulation. |
BASE | Handles the SFGE$ and SFL$ conditions in a FIND statement. |
BEQVAL | Handles the field = VALUE IN label condition for an ordered character field, where label refers to an enclosing FOR EACH VALUE loop or to a NOTE statement. |
BLIKE | Handles the IS LIKE condition on a FIND statement for an ordered character field. |
BNOT | Boolean NOT. Invert a bit map as part of FIND statement or in list manipulation. |
BOPER | The part of a FIND statement associated with looking up a a fieldname/value pair in the ordered index. Never occurs in a group context FIND. |
BOR | Boolean OR. Combine two bit maps as part of FIND statement or in list manipulation. |
BRANGE | Handles a range find condition for an ordered index field on a FIND statement. |
BRNCH | Branch used in computed JUMP statement or to branch around subroutine. |
BVAL | The FIND ALL VALUES statement. |
CHGAV | Delete a fieldname/value pair from a record for the CHANGE statement. |
CLGLOB | The CLEAR GLOBALS statement. |
COMMIT | The COMMIT statement. |
COUNT | Count number of entries in found set. Used in COUNT and FIND AND PRINT COUNT statements. Also used in FIND statement to determine if a DYRWT message should be issued for a table B (direct) search. |
CSORT | Copy data to CCATEMP for SORT or FOR EACH VALUE IN ORDER statement. |
CTO | The COUNT OCCURRENCES statement. |
DEDB2 | The EXEC DB2 ... END EXEC statement. |
DEQSET | Unlock a record set after deleting them in a DELETE RECORDS IN/ON statement. |
DIS | Handles IS =, IS ALPHA =, and IS NUM = conditions on a FIND statement. |
DLIKE | Handles a IS LIKE condition on a FIND statement for a non-ordered character field. |
DOPER | Part of a Find that looks up a fieldname/value pair in table C, the ordered index, or table B (direct search or hash key). The table C, ordered index, and hash key lookups show up as DOPER instead of POPER/NOPER, BOPER/NOPER, and HOPER/NOPER pairs in a group context find. The only time DOPER shows up in a non-group context is when a table B (direct) search is performed. |
DOTEST | Increments and tests index in a FOR index loop (FOR I FROM ...) |
DPRES | Handles an IS PRESENT condition on a FIND statement. |
DRANGE | Handles a range find condition for an non-ordered field on a FIND statement. |
DROPA | Deletes each occurrence of a field in a record (DELETE EACH statement). |
DROPAV | Delete a fieldname/value pair from a record. Used for the DELETE statement. |
D2DELRS | A DELETE RECORDS statement on a remote file. |
D2EFIND | A FIND statement on a remote file. |
D2ESORT | A SORT statement on a remote file. |
D2FILR | A FILE RECORDS statement on a remote file. |
D2LIST | A PLACE RECORDS or REMOVE RECORDS statement on a remote file. |
D2OPCUR | "Open cursor" on a remote file, to fetch sorted records or values to handle FOR EACH RECORD/VALUE in remote group context. |
ECALL | The CALL statement. |
EICLOSE | The CLOSE statement. |
EICLRGO | Handles CLEAR GLOBAL statement for global images. |
EICLRT | The CLEAR TAG statement. |
EIMOD | The MODIFY statement. |
EIOPEN | The OPEN statement. |
EIPOS | The POSITION statement. |
EIPREP | The PREPARE SCREEN statement. This includes PREPARE statements where the word SCREEN is implied. |
EIPREPI | The PREPARE IMAGE statement. This includes PREPARE statements where the word IMAGE is implied. |
EIREAD | The READ SCREEN statement. This includes READ statements where the word SCREEN is implied. |
EIREADI | The READ IMAGE statement. This includes READ statements where the word IMAGE is implied. |
EIRPOS | The RELEASE POSITION statement. |
EITAG | The TAG statement. |
EIWRITE | The WRITE IMAGE statement. This includes WRITE statements where the word IMAGE is implied. |
ELCLOSE | The CLOSE PROCESS statement. |
ELCNFRM | The CONFIRM statement. |
ELCNFRMD | The CONFIRMED statement. |
ELFLUSH | The FLUSH statement. |
ELINVITE | The INVITE statement. |
ELOPEN | The OPEN PROCESS statement. |
ELQUERY | The QUERY PROCESS statement. |
ELRCV | The RECEIVE statement. |
ELSEND | The SEND statement. |
ELSIGNL | The SIGNAL statement. |
ELSNDERR | The SEND ERROR statement. |
ELTEST | The TEST statement. |
ELTRNSFR | The TRANSFER statement. |
ELWAIT | The WAIT statement. |
EMID | The IDENTIFY statement. |
ENQSET | Lock a record set about to be deleted in a DELETE RECORDS IN/ON statement. |
ENRA | Extract the value of a field. Mostly used for IS LIKE and IS NOT LIKE clauses. |
ENRACO | Copies a value in a field used in an expression into STBL. |
ENRAPR | Print a field value for a PRINT statement. |
ENRASSF | Assign the value of a field to a percent variable. |
EQQ | Perform a numeric or string equality test to produce a logical true or false (0 or 1) result (possibly in an IF statement). |
ERETRN | The RETURN, BYPASS PENDING, or RETRY statements and implied RETURNs at the end of a subroutine. |
EVCRLOC | IFAM only. |
EVIFONT | Font switch produced by *FONT keyword on a PRINT statement. Only used in DBCS environment. |
EVOPCUR | IFAM only. |
FEO | Finds next occurrence of a field for FOR EACH OCCURRENCE statement. |
FILEDOL | Handles the FILE$ in a group context FIND statement. |
FMCMD | File maintenance commands (DEFINE FIELD, REDEFINE FIELD, DELETE FIELD, RENAME FIELD, SECURE, DESECURE, ALLOCATE, DELETE GROUP). Only allowed to be used by CCA products. |
FOR | FOR EACH RECORD, FOR n RECORDS, and FOR EACH VALUE loops. Finds the next record number or value to process in loop. |
FOREMOTE | Get next record in a FOR EACH RECORD or FOR EACH VALUE loop against a remote file. |
FOREV | The start of a REPEAT FOREVER or REPEAT WHILE loop. |
FORNO | The FOR RECORD NUMBER statement. |
FORNOREM | The FOR RECORD NUMBER statement against a remote file. |
F2LKI | FLOD only. |
GETMORE | IFAM only. |
GETNN | IFAM only. |
GLOOP | Group LOOP. Switch to next file in group in any group related operation including FIND statements. |
HOPER | Hash OPERation. Looks up records in table B in a hash key file when the hash key appears in a FIND statement. |
INTQ | Converts a string or floating point value in an expression to a fixed-point value. |
ISNTPRES | Check for absence of a field in a record for an IS NOT PRESENT test in an expression to produce a logical true or false (0 or 1) result (possibly in an IF statement). |
ISORT | Initialization for SORT or FOR EACH VALUE IN ORDER statement. |
ISPRES | Check for presence of a field in a record for an IS PRESENT test in an expression to produce a logical true or false (0 or 1) result (possibly in an IF statement). |
ITSQ | Used for SoftSpy. |
JUMP | Branch associated with JUMP TO or IF/THEN/ELSE statement. |
JUMPTEST | Branches to correct computed jump label in computed JUMP statement. |
LIKE | Perform a wildcard character test for an IS LIKE clause in an expression to produce a logical true or false (0 or 1) result (possibly in an IF statement). |
LOCDOL | Evaluate LOCATION$ FIND condition for Parallel Query Option/204. |
LOOP | Get the next file segment in a multi-segment statement. Used in FIND, FILE RECORDS, PLACE RECORDS, REMOVE RECORDS, and DELETE RECORDS statements. |
LOOPEND | Branch associated with LOOP END statement. |
LOOPENDC | Conditionally exit a loop for a REPEAT WHILE statement. |
MSORT | Sort data in CCATEMP for SORT or FOR EACH VALUE IN ORDER statement. |
NEGQ | Unary minus sign, for example, %I=-%I . |
NEWPAGE | The NEWPAGE statement. |
NMEVEQ | Evaluates equality condition for numeric range field on a FIND statement. |
NMEVGE | Evaluates greater than or equal condition for numeric range field on a FIND statement. |
NMEVGT | Evaluates greater than condition for numeric range field on a FIND statement. |
NMEVLE | Evaluates less than or equal condition for numeric range field on a FIND statement. |
NMEVLT | Evaluates less than condition for numeric range field on a FIND statement. |
NOPER | Normalize OPERation. Converts a single record entry, record list (in table D) or a bit map (in table D) into a bit map in CCATEMP. Part of a FIND statement. |
NOTDSET | Inverts a found set or list for the DELETE RECORDS statement. |
NOTE | Note a value for the NOTE statement. |
NOTQ | Perform a logical NOT in a Model 204 expression (possibly in an IF statement). |
NTIMES | The start of a REPEAT n TIMES loop. |
NUMQ | Converts a string value in an expression to a floating point value. |
ONQ | Sets ON unit address and branches around ON unit for the ON statement. |
ORQ | Perform a logical OR in a Model 204 expression (possibly in an IF statement). |
PAFN | Prints all field names for the PRINT ALL FIELD NAMES (PAFN) statement. |
PAUSE | The PAUSE statement. |
PID | Prints the record ID for the *ID clause of a PRINT or AUDIT statement. |
PLAREM | PLACE/REMOVE RECORDS ON/FROM LIST statement. Turn bits on/off in list bitmaps. |
PNUM | Print a number; used in PRINT and FIND AND PRINT COUNT statements. |
POINT | Evaluates POINT$ condition in a FIND statement. |
POPER | The part of a FIND statement associated with looking up a a fieldname/value pair in table C. Never occurs in a group context FIND. |
POSNEV | The POSITION statement. |
POSQ | Unary plus sign, for example, %S=+%S . |
PRINTALL | The PRINT ALL INFORMATION (PAI) statement. |
PRTNCOL | Prints a field value in the PRINT statement if the fieldname was immediately preceded by a number indicating a maximum number of lines. |
PSNOP | Copying a bit map page. Use in PLACE RECORDS and REMOVE RECORDS statements and in FIND statements on previously created found sets or lists. |
PSNOPEBM | Part of FIND statement; copies (sometimes) existence bit map to CCATEMP. |
PSTRG | Print a string; used in PRINT statements. |
PTALL | EACH fieldname parameter in a PRINT statement. |
QEND | End of most multi-part or multiple file segment statements. Occurs in FIND, DELETE RECORDS IN, SORT, FILE RECORDS, PLACE, REMOVE, and many other statements. |
QENDF | Ends a FOR loop. |
QENDG | End of group loop. Occurs in FIND and other statements in group context. Associated with a GLOOP quad. |
RELALL | The RELEASE ALL RECORDS statement. |
RELSERQ | The RELEASE RECORDS IN statement. |
REMBREV | The REMEMBER statement. |
RESHTR | The RESET HEADER/TRAILER statement. |
RRECD | Remove a record from table B for a DELETE RECORD statement. |
RSPOPER | The part of a FIND statement associated with looking up a fieldname/value pair in table C. Never occurs in a group context FIND. RSPOPER is used instead of POPER when using record security in an APSY pre-compiled proc. |
SAVE | Save invisible key data in table C or in the ordered index for a FILE RECORDS statement. |
SETHIO | Start of SET HEADER/TRAILER statement. |
SITEM | Start of STORE RECORD statement. Creates empty record in table B and adds hash or sort key in hash or sort key file. |
SITEMREM | Start of STORE RECORD statement for remote file. |
SOLOOP | Not used. |
SOPER | Set OPERation. Sets a segments bit map in a found set for a FIND statement (or a PLACE/REMOVE statement). Also responsible for enqueuing on the found set unless doing FIND WITHOUT LOCKS. |
SOPEREBM | Part of DELETE RECORDS statement; copies existence bit map to CCATEMP. |
SOR | Find next record in a SORT KEY file for a FOR EACH RECORD IN ORDER BY sort key statement. |
STOREND | Not used. |
STPIF | The STOP IF COUNT statement. |
STRGQ | Converts a floating point value in an expression to a string value. |
SUBS | Retrieves a value in an array based on a subscript. |
TAB | TAB parameter in a PRINT, SET HEADER, or SET TRAILER statement. |
UITEM | Start of UPDATE RECORD statement. |
UITEMREM | Start of UPDATE RECORD statement for remote file. |
WCARDX | Output a PRINT or AUDIT line. |
WCARDW | SKIP n LINES, where n > 1. |
WITHQ | WITH parameter in a PRINT, AUDIT, SET HEADER, or SET TRAILER statement. |
See also
- SirTune introduction
- SirTune data collection under MVS
- SirTune data collection under CMS
- SirTune data collection statements
- SirTune MODIFY and SMSG commands
- SirTune report generation
- SirTune reports
- SirTune user states
- SirTune and Model 204 quad types
- SirTune statement wildcards
- SirTune date processing