Hi:
Your use of the APPSRV_HEADER function implies that you are using SAS/IntrNet???? Is it possible that you have SAS 9.1.3 or SAS 9.2 on your desktop and maybe have SAS 8 on the Application Server machine???
If you are using SAS/IntrNet, have you turned on the _DEBUG option when you invoke the program so that you can see that SAS log???
It's not clear to me what you mean by "having sas read the ExcelXP.sas file on the server"??? If you're using SAS/IntrNet (which is the only reason for using APPSRV_HEADER) -- then all you have to do is put your .SAS program in the correct Application Server library and invoke the program with the correct URL...for example:
[pre]
http://www.server.com/cgi-bin/broker.exe?_program=applib.pgmname.sas&_service=default&_debug=2
[/pre]
If you do not have or are not using SAS/IntrNet's Application Broker, Application Server and Application Dispatcher, then your use of APPSRV_HEADER is not needed. Since it's not clear what your configuration is or what you're trying to accomplish with APPSRV_HEADER (in the absence of SAS/IntrNet), you might wish to work with Tech Support on this question. Note that the sample URL which I show for SAS/IntrNet implies that you have the BROKER.EXE program installed on your web server machine. If you have SAS installed on a network server (as opposed to a web server) and you want to "batch" execute a .SAS program on the server machine, then the URL method shown above is not the appropriate method for your program.
cynthia