ID 21502

There are pending invalid control blocks at global subroutine end.

Description

In a global subroutine, an invalid control block statement (for example, $IF-$ENDIF) was not closed, that is, 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:

% glob_sub

N10   G00 X0 Y0 Z0

N20   P1=0

N30   $IF P1 == 1

N40     Y100

N100    X100

N150 M29 ← $ENDIF of $IF P1.. is missing.

Correct:

% glob_sub

N10   G00 X0 Y0 Z0

N20   P1=0

N30   $IF P1 == 1

N40     Y100

N100    X100

N105  $ENDIF ← Invalid $IF is ended

N150  M29

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 sequence (e.g. $ ENDIF)

Error type

1, Error message from NC program.