ID 21500
There are pending invalid control blocks at local subroutine end. | ||||
Description | In a local subroutine, an invalid control block statement (e.g. $IF-$ENDIF) was not closed, i.e. an assigned $ENDIF is missing. Invalid in this context means that the programmed condition is false and the NC blocks in this branch are not executed.
Example: Wrong: %L sub1 N10 G00 X0 Y0 Z0 N20 P1=0 N30 $IF P1 == 1 N40 Y100 N100 X100 N110 M29 ← $ENDIF of $IF P1.. is missing. %main N010 X0 Y0 Z0 N020 LL sub1 : N1000 M30 Correct: %L sub1 N10 G00 X0 Y0 Z0 N20 P1=0 N30 $IF P1 == 1 N40 Y100 N100 X100 N105 $ENDIF ← Invalid $IF is terminated N110 M29 % main N010 X0 Y0 Z0 N020 LL sub1 : N1000 M30 | |||
Response | Class | 2 | Abort NC program processing. | |
Solution | Class | 3 | Check and modify NC program. Close the control block statement correctly. Complete the missing $ENDIF/$ENDSWITCH... . | |
Parameter | %1: | Error value [-] | ||
Number of open control blocks | ||||
%2: | Current value [-] | |||
Initial keyword of incomplete control block statement (e.g. $IF) | ||||
%3: | Expected value [-] | |||
Closing keyword of control block statement (e.g. $ ENDIF) | ||||
Error type | 1, Error message from NC program. | |||
|