I'm surprised that you expect it to work because SYS(1037) doesn't return a printer name. The GETPRINTER() function does.
lcPrinter = GETPRINTER()
IF NOT EMPTY(lcPrinter)
SET PRINTER TO NAME (lcPrinter)
ENDIF
>when i set printer using
>
>
>SET PRINTER TO NAME SYS(1037)
>
>
>It displays Message : Error accessing printer spooler.
>
--sb--