- %INDX1 ;ISC/REL,GRK,RWF - ERROR ROUTINE ;1/9/95 15:19
- ;;7.3;TOOLKIT;;Apr 25, 1995
- A N %,%1
- S ERTX=LAB_$S(LABO:"+"_LABO,1:""),ERTX=$E(ERTX_" ",1,11),%1=$T(ERROR+ERR),ERTX=ERTX_" "_$S(ERR:$P(%1,";",4,9),1:ERR)
- I ERTX["|" F %=1:1 S ERTX=$P(ERTX,"|")_$S($D(ERR(%)):ERR(%),1:"??")_$P(ERTX,"|",%+1,99) Q:ERTX'["|"
- B I $P(%1,";",3)]"" D Q:%1]"" ;Don't flag kernel doing kernel.
- . S %1=$P(%1,";",3)
- . F Q:RTN[$P(%1,",") S %1=$P(%1,",",2,99) ;quit if RTN[%1 or null.
- . Q
- I ERR=17,$E(RTN)'="%",$E(LAB)="%" Q ;Don't flag %RTN w/o %.
- S %=$G(^UTILITY($J,1,RTN,"E",0))+1,^(0)=%,^(%)=ERTX Q
- ;
- E(ERR) ;
- G A Q
- ;
- ERROR ;
- 1 ;;;F - UNDEFINED COMMAND (rest of line not checked).
- 2 ;;;F - Non-standard (Undefined) 'Z' command.
- 3 ;;;F - Undefined Function.
- 4 ;;;F - Undefined Special Variable.
- 5 ;;;F - Unmatched Parenthesis.
- 6 ;;;F - Unmatched Quotation Marks.
- 7 ;;;F - ELSE Command followed by only one space.
- 8 ;;;F - FOR Command did not contain '='.
- 9 ;;;W - QUIT Command followed by only one space.
- 10 ;;;F - Unrecognized argument in SET command.
- 11 ;;;W - Invalid local variable name.
- 12 ;;;W - Invalid global variable name.
- 13 ;;;F - Blank(s) at end of line.
- 14 ;;;F - Missing LABEL, REFERENCED in this routine.
- 15 ;;;W - Duplicate label.
- 16 ;;;F - Error in pattern code.
- 17 ;;;W - First line tag NOT routine name.
- 18 ;;;W - Line contains a CONTROL (non-graphic) character.
- 19 ;;;S - Line is longer than 245 bytes.
- 20 ;;;S - View command used.
- 21 ;;;F - General Syntax Error.
- 22 ;;;S - Exclusive Kill.
- 23 ;;;S - Unargumented Kill.
- 24 ;;;S - Kill of an unsubscripted global.
- 25 ;;;S - Break command used.
- 26 ;;;S - Exclusive or Unargumented NEW command.
- 27 ;;;S - $View function used.
- 28 ;;;S - Non-standard $Z special variable used.
- 29 ;;ZIS;S - 'Close' command should be invoked through 'D ^%ZISC'.
- 30 ;;;S - TAG+OFFSET syntax.
- 31 ;;;S - Non-standard $Z function used.
- 32 ;;;S - 'HALT' command should be invoked through 'G ^XUSCLEAN'.
- 33 ;;;S - Read command doesn't have a timeout.
- 34 ;;ZIS;S - 'OPEN' command should be invoked through ^%ZIS.
- 35 ;;;S - Routine exceeds SACC maximum size of 5000 (|).
- 36 ;;ZTM;S - Should use 'TASKMAN' instead of 'JOB' command.
- 37 ;;;F - Tag is not valid.
- 38 ;;;F - Call to this MISSING LABEL (see INVOKED BY list).
- 39 ;;;S - Kill of a protected variable (|).
- 40 ;;;S - Space where a command should be.
- 41 ;;;S - Star or pound READ used.
- 42 ;;;F - Null line (no commands or comment).
- 43 ;;;F - Invalid or wrong number of arguments to a function.
- 44 ;;;S - Version number not found on 2nd line of routine.
- 45 ;;ZTM,ZTLO,ZIS;S - Set to a '%' global.
- 46 ;;;F - Quoted string not followed by a separator.
- 47 ;;;S - Lowercase command(s) used in line.
- 48 ;;;F - Missing argument to a command post-conditional.
- 49 ;;;F - Command missing an argument.
- 50 ;;ZTM;S - Extended reference.
- 51 ;;;F - Block structure mismatch.
- 52 ;;;F - Reference to routine '^|'. That isn't in this UCI.
- 53 ;;;F - Bad Number
- %INDX1 ;ISC/REL,GRK,RWF - ERROR ROUTINE ;1/9/95 15:19
- +1 ;;7.3;TOOLKIT;;Apr 25, 1995
- A NEW %,%1
- +1 SET ERTX=LAB_$SELECT(LABO:"+"_LABO,1:"")
- SET ERTX=$EXTRACT(ERTX_" ",1,11)
- SET %1=$TEXT(ERROR+ERR)
- SET ERTX=ERTX_" "_$SELECT(ERR:$PIECE(%1,";",4,9),1:ERR)
- +2 IF ERTX["|"
- FOR %=1:1
- SET ERTX=$PIECE(ERTX,"|")_$SELECT($DATA(ERR(%)):ERR(%),1:"??")_$PIECE(ERTX,"|",%+1,99)
- IF ERTX'["|"
- QUIT
- B ;Don't flag kernel doing kernel.
- IF $PIECE(%1,";",3)]""
- Begin DoDot:1
- +1 SET %1=$PIECE(%1,";",3)
- +2 ;quit if RTN[%1 or null.
- FOR
- IF RTN[$PIECE(%1,",")
- QUIT
- SET %1=$PIECE(%1,",",2,99)
- +3 QUIT
- End DoDot:1
- IF %1]""
- QUIT
- +4 ;Don't flag %RTN w/o %.
- IF ERR=17
- IF $EXTRACT(RTN)'="%"
- IF $EXTRACT(LAB)="%"
- QUIT
- +5 SET %=$GET(^UTILITY($JOB,1,RTN,"E",0))+1
- SET ^(0)=%
- SET ^(%)=ERTX
- QUIT
- +6 ;
- E(ERR) ;
- +1 GOTO A
- QUIT
- +2 ;
- ERROR ;
- 1 ;;;F - UNDEFINED COMMAND (rest of line not checked).
- 2 ;;;F - Non-standard (Undefined) 'Z' command.
- 3 ;;;F - Undefined Function.
- 4 ;;;F - Undefined Special Variable.
- 5 ;;;F - Unmatched Parenthesis.
- 6 ;;;F - Unmatched Quotation Marks.
- 7 ;;;F - ELSE Command followed by only one space.
- 8 ;;;F - FOR Command did not contain '='.
- 9 ;;;W - QUIT Command followed by only one space.
- 10 ;;;F - Unrecognized argument in SET command.
- 11 ;;;W - Invalid local variable name.
- 12 ;;;W - Invalid global variable name.
- 13 ;;;F - Blank(s) at end of line.
- 14 ;;;F - Missing LABEL, REFERENCED in this routine.
- 15 ;;;W - Duplicate label.
- 16 ;;;F - Error in pattern code.
- 17 ;;;W - First line tag NOT routine name.
- 18 ;;;W - Line contains a CONTROL (non-graphic) character.
- 19 ;;;S - Line is longer than 245 bytes.
- 20 ;;;S - View command used.
- 21 ;;;F - General Syntax Error.
- 22 ;;;S - Exclusive Kill.
- 23 ;;;S - Unargumented Kill.
- 24 ;;;S - Kill of an unsubscripted global.
- 25 ;;;S - Break command used.
- 26 ;;;S - Exclusive or Unargumented NEW command.
- 27 ;;;S - $View function used.
- 28 ;;;S - Non-standard $Z special variable used.
- 29 ;;ZIS;S - 'Close' command should be invoked through 'D ^%ZISC'.
- 30 ;;;S - TAG+OFFSET syntax.
- 31 ;;;S - Non-standard $Z function used.
- 32 ;;;S - 'HALT' command should be invoked through 'G ^XUSCLEAN'.
- 33 ;;;S - Read command doesn't have a timeout.
- 34 ;;ZIS;S - 'OPEN' command should be invoked through ^%ZIS.
- 35 ;;;S - Routine exceeds SACC maximum size of 5000 (|).
- 36 ;;ZTM;S - Should use 'TASKMAN' instead of 'JOB' command.
- 37 ;;;F - Tag is not valid.
- 38 ;;;F - Call to this MISSING LABEL (see INVOKED BY list).
- 39 ;;;S - Kill of a protected variable (|).
- 40 ;;;S - Space where a command should be.
- 41 ;;;S - Star or pound READ used.
- 42 ;;;F - Null line (no commands or comment).
- 43 ;;;F - Invalid or wrong number of arguments to a function.
- 44 ;;;S - Version number not found on 2nd line of routine.
- 45 ;;ZTM,ZTLO,ZIS;S - Set to a '%' global.
- 46 ;;;F - Quoted string not followed by a separator.
- 47 ;;;S - Lowercase command(s) used in line.
- 48 ;;;F - Missing argument to a command post-conditional.
- 49 ;;;F - Command missing an argument.
- 50 ;;ZTM;S - Extended reference.
- 51 ;;;F - Block structure mismatch.
- 52 ;;;F - Reference to routine '^|'. That isn't in this UCI.
- 53 ;;;F - Bad Number