Hi
FN 12: is a less than function(Page 387 in the manual)

so the expression will jump to LBL 10 if the value in Q10 is less than the length from Fusion.
If you want to have it only fail when the tool is more than 0.1mm less than what it is in fusion you can modify the function like here:
writeBlock("FN 12: IF +Q10 LT " + xyzFormat.format(tool.holderLength + tool.bodyLength -0.1) + " GOTO LBL 10")
For the mask file you can create your own directly on the controller.
just type the name and then .A at the end to create a text file.
you could create one called TOOL-LENGTH-MESSSAGE.A
its contents would look like something like this:
"TOOL %9.3F", Q11 IS TOO SHORT";
The information is all there on how to do this in the Heidenhain Manual
You would need to add a bit to the loop to store the current tool number in Q11(or whatever variable you want to use)

see updated post attached
I've just picked arbitrary Q variables and label number, you will need to make sure that these aren't used anywhere else by the controller, you may consider using a Higher LBL number than 10 as potentially if you had a lot of different WCS in a program fusion could also use LBL 10 for the Datum call.
Maybe better to use like LBL 200 or something
Andrew Laas
Senior Machinist, Scott Automation
