Nadya,
>>>It works fine, if I comment:
>>>*!* set talk on
Somewhere in your macro expansion you are attempting to use substr() past the end of string:
x = "abc"
? substr( x, 55, 5 )
The current setting of TALK controls whether or not an error is thrown of if VFP just ignores your mistake.