<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Running ExcelXp tagsets in Stored Processes in Developers</title>
    <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9939#M2272</link>
    <description>I suggest you open a track with Technical Support:&lt;BR /&gt;
&lt;BR /&gt;
&lt;A href="http://support.sas.com/ctx/supportform/createForm" target="_blank"&gt;http://support.sas.com/ctx/supportform/createForm&lt;/A&gt;&lt;BR /&gt;
&lt;BR /&gt;
You are getting malformed XML, so one last thing to check is to make sure that you don't have any ODS statements that conflict with the one generated by STPBEGIN.&lt;BR /&gt;
&lt;BR /&gt;
Good luck.&lt;BR /&gt;
&lt;BR /&gt;
Vince DelGobbo&lt;BR /&gt;
SAS R&amp;amp;D

Corrected typo.&lt;BR /&gt;
    &lt;BR /&gt;
Message was edited by: Vince@SAS</description>
    <pubDate>Wed, 02 Mar 2011 23:37:36 GMT</pubDate>
    <dc:creator>Vince_SAS</dc:creator>
    <dc:date>2011-03-02T23:37:36Z</dc:date>
    <item>
      <title>Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9924#M2257</link>
      <description>Hello,&lt;BR /&gt;
I have a stored process that does the following-&lt;BR /&gt;
1. Builds a javascript page to get input parameters from user&lt;BR /&gt;
2. Runs excelxp tagsets to generate a report based on the parameters given by the user.&lt;BR /&gt;
However, when I run the stored process from the stored process URL, I dont get the excel report back. It does work independently of the stored process though.&lt;BR /&gt;
&lt;BR /&gt;
I am thinking maybe one of my options maybe incorrect. &lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
%macro output;&lt;BR /&gt;
options orientation=landscape leftmargin=0.5in rightmargin=0.5in topmargin=0.5in bottommargin=0.5in ls=160 ps=50 mprint symbolgen;&lt;BR /&gt;
%global format _odsdest _odsstyle _odsoptions;&lt;BR /&gt;
%macro header;&lt;BR /&gt;
%IF  &amp;amp;format =  %THEN &lt;BR /&gt;
	%DO; &lt;BR /&gt;
	%LET _ODSDEST =tagsets.excelXP ; &lt;BR /&gt;
	%LET _ODSSTYLE = ; &lt;BR /&gt;
	%LET _ODSSTYLESHEET = ; &lt;BR /&gt;
	%LET _ODSOPTIONS = options=(doc="help");&lt;BR /&gt;
	DATA _NULL_; &lt;BR /&gt;
	rc = STPSRV_HEADER('Content-type', 'application/vnd.ms-excel'); &lt;BR /&gt;
	rc = STPSRV_HEADER('Content-disposition', 'attachment; filename=Boeing_HA_Completion_Weekly.xls'); &lt;BR /&gt;
	RUN; &lt;BR /&gt;
%END; &lt;BR /&gt;
&lt;BR /&gt;
%mend header;&lt;BR /&gt;
&lt;BR /&gt;
%header;&lt;BR /&gt;
%stpbegin;&lt;BR /&gt;
&lt;BR /&gt;
ods _all_ close;&lt;BR /&gt;
&lt;BR /&gt;
%let source=/sasdev/optum/rpt/phi/projects/eHP/Release2/Development_Code/tagset_codes/;&lt;BR /&gt;
&lt;BR /&gt;
*  Library to store styles and tagsets;&lt;BR /&gt;
ods path reset;&lt;BR /&gt;
libname libtmpl "&amp;amp;source";&lt;BR /&gt;
&lt;BR /&gt;
*  Set the ODS search path for styles and tagsets;&lt;BR /&gt;
ods path work.tmplmst(update) /*libtmpl.tmplmst(update) changed to work.tmplmst(update)*/&lt;BR /&gt;
         sashelp.tmplmst(read);&lt;BR /&gt;
&lt;BR /&gt;
%include "/sasdev/optum/rpt/phi/projects/eHP/Release2/Development_Code/excel_120/excltags.sas";&lt;BR /&gt;
&lt;BR /&gt;
proc format;&lt;BR /&gt;
value $relation '000'='Employee'&lt;BR /&gt;
'001'='Spouse / Domestic Partner';&lt;BR /&gt;
run;&lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
ods tagsets.ExcelXP file="sample_report_v7.3_sql.xls" path="&amp;amp;source." style=sasweb options(doc="help");&lt;BR /&gt;
&lt;BR /&gt;
*Create Title Page;&lt;BR /&gt;
ods tagsets.ExcelXp options(sheet_name='Title Page'&lt;BR /&gt;
		sheet_interval='none'				absolute_column_width='9');&lt;BR /&gt;
ods path reset;&lt;BR /&gt;
ods tagsets.ExcelXp close;&lt;BR /&gt;
libname libtmpl clear;&lt;BR /&gt;
&lt;BR /&gt;
%stpend;&lt;BR /&gt;
&lt;BR /&gt;
data _null_;&lt;BR /&gt;
file _webout;&lt;BR /&gt;
put 'center a &lt;BR /&gt;
href="http//.../ha_completion_weekly"&lt;BR /&gt;
img src="http//.../SAS%20Store%20Process%20Images/Prompt.bmp" border="0" /&lt;BR /&gt;
/a/center'; &lt;BR /&gt;
run;&lt;BR /&gt;
&lt;BR /&gt;
%mend output;

I have removed the HTML tags for "center""a"&lt;BR /&gt;
&lt;BR /&gt;
    &lt;BR /&gt;
Message was edited by: saspert</description>
      <pubDate>Mon, 14 Feb 2011 19:07:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9924#M2257</guid>
      <dc:creator>saspert</dc:creator>
      <dc:date>2011-02-14T19:07:31Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9925#M2258</link>
      <description>What does happen when you run the code as a stored process?&lt;BR /&gt;
&lt;BR /&gt;
Try running the code with OPTIONS MPRINT turned on at the top.  Your ODS statements may be conflicting with those that are being generated by STPBEGIN.&lt;BR /&gt;
&lt;BR /&gt;
You might also want to try with something simple, and then  build upon it:&lt;BR /&gt;
[pre]&lt;BR /&gt;
*ProcessBody;&lt;BR /&gt;
options mprint;&lt;BR /&gt;
 &lt;BR /&gt;
ods path work.tmplmst(update) sashelp.tmplmst(read);&lt;BR /&gt;
 &lt;BR /&gt;
%include '/sasdev/optum/rpt/phi/projects/eHP/Release2/Development_Code/excel_120/excltags.sas';&lt;BR /&gt;
 &lt;BR /&gt;
%let _ODSDEST=tagsets.ExcelXP;&lt;BR /&gt;
 &lt;BR /&gt;
%let RV=%sysfunc(stpsrv_header(Content-type, application/vnd.ms-excel)); &lt;BR /&gt;
%let RV=%sysfunc(stpsrv_header(Content-disposition, attachment; filename="Boeing_HA_Completion_Weekly.xls")); &lt;BR /&gt;
 &lt;BR /&gt;
%STPBEGIN;&lt;BR /&gt;
  proc print data=sashelp.class; run; quit;&lt;BR /&gt;
%STPEND;&lt;BR /&gt;
[/pre]&lt;BR /&gt;
&lt;BR /&gt;
Vince DelGobbo&lt;BR /&gt;
SAS R&amp;amp;D</description>
      <pubDate>Mon, 14 Feb 2011 20:33:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9925#M2258</guid>
      <dc:creator>Vince_SAS</dc:creator>
      <dc:date>2011-02-14T20:33:08Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9926#M2259</link>
      <description>Hi:&lt;BR /&gt;
  In addition to Vince's suggestions (to simplify your stored process as a means of debugging), I want to mention that many of these system options, specified at the top of your code are inappropriate for TAGSETS.EXCELXP output:&lt;BR /&gt;
[pre]&lt;BR /&gt;
options orientation=landscape leftmargin=0.5in rightmargin=0.5in &lt;BR /&gt;
        topmargin=0.5in bottommargin=0.5in ls=160 ps=50 mprint symbolgen;&lt;BR /&gt;
[/pre]&lt;BR /&gt;
                                                   &lt;BR /&gt;
Several of these system options are LISTING-destination only options, such as LINESIZE and PAGESIZE and other options, such as ORIENTATION, and the MARGIN options only work for "paged" destinations like RTF and PDF.&lt;BR /&gt;
 &lt;BR /&gt;
When you are using TAGSETS.EXCELXP for output generation, attributes like orientation and print settings are controlled by suboptions specified like this:&lt;BR /&gt;
[pre]&lt;BR /&gt;
ods tagsets.excelxp ...... style=sasweb&lt;BR /&gt;
      options(suboption-list);&lt;BR /&gt;
                                           &lt;BR /&gt;
an example of a suboption list would be:&lt;BR /&gt;
                                                           &lt;BR /&gt;
ods tagsets.excelxp ...... style=sasweb&lt;BR /&gt;
      options(doc='Help' embedded_titles='Yes' orientation='landscape' zoom='150');&lt;BR /&gt;
[/pre]&lt;BR /&gt;
                                                             &lt;BR /&gt;
ExcelXP will not use LINESIZE and PAGESIZE and will not use the system option settings for print settings.&lt;BR /&gt;
 &lt;BR /&gt;
This user-group paper discusses more of the print-related sub-options used with TAGSETS.EXCELXP:&lt;BR /&gt;
&lt;A href="http://www.nesug.org/proceedings/nesug08/ap/ap06.pdf" target="_blank"&gt;http://www.nesug.org/proceedings/nesug08/ap/ap06.pdf&lt;/A&gt;&lt;BR /&gt;
 &lt;BR /&gt;
cynthia</description>
      <pubDate>Mon, 14 Feb 2011 21:00:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9926#M2259</guid>
      <dc:creator>Cynthia_sas</dc:creator>
      <dc:date>2011-02-14T21:00:42Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9927#M2260</link>
      <description>Hi Vince,&lt;BR /&gt;
Thanks for the tip. So I moved the ODS options to run prior to the ExcelXp ODS macro variables and %stp macro variables. It seems to work although partially. Now, I am getting the output directly in the HTML window rather than the excel file.&lt;BR /&gt;
I made sure I had both the stpsrv statements in there. &lt;BR /&gt;
&lt;BR /&gt;
Also, I am turning on the mprint and symbolgen options but the client environment does not save logs and I am not sure how to read them.&lt;BR /&gt;
&lt;BR /&gt;
Thanks,&lt;BR /&gt;
&lt;BR /&gt;
Update - So I removed the unnecessary ods path reset statements, the ods excelxp close statements, the macro to check for the format (excel or otherwise) and set the _ODS options to this -&lt;BR /&gt;
&lt;BR /&gt;
	%LET _ODSDEST =tagsets.excelXP ; &lt;BR /&gt;
	%LET _ODSSTYLE = ; &lt;BR /&gt;
	%LET _ODSSTYLESHEET = ; &lt;BR /&gt;
	%LET _ODSOPTIONS = ;&lt;BR /&gt;
	DATA _NULL_; &lt;BR /&gt;
	rc = STPSRV_HEADER('Content-type', 'application/vnd.ms-excel'); &lt;BR /&gt;
	rc = STPSRV_HEADER('Content-disposition', 'attachment; filename=Boeing_HA_Completion_Weekly.xls'); &lt;BR /&gt;
	&lt;BR /&gt;
	RUN; &lt;BR /&gt;
&lt;BR /&gt;
    &lt;BR /&gt;
Message was edited by: saspert

Now, the webpage is returning the XLS document back to me. But when I open it says problems came up while opening the following with an empty list of items.&lt;BR /&gt;
&lt;BR /&gt;
So, if I want to have 5 pages with each different ODS options like tab name, column widths and so on, do I have to use ODS tagsets.ExcelXp options(....) or %let&lt;BR /&gt;
_ODSOPTIONS= statement?&lt;BR /&gt;
&lt;BR /&gt;
Thanks&lt;BR /&gt;
&lt;BR /&gt;
    &lt;BR /&gt;
Message was edited by: saspert</description>
      <pubDate>Mon, 14 Feb 2011 22:18:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9927#M2260</guid>
      <dc:creator>saspert</dc:creator>
      <dc:date>2011-02-14T22:18:10Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9928#M2261</link>
      <description>To return the SAS log to the Web browser client, use the _DEBUG parameter and set it to "log,trace" (no quotes).&lt;BR /&gt;
&lt;BR /&gt;
&lt;A href="http://support.sas.com/documentation/cdl/en/stpug/61271/HTML/default/viewer.htm#dbgsrvlt.htm#setdebug" target="_blank"&gt;http://support.sas.com/documentation/cdl/en/stpug/61271/HTML/default/viewer.htm#dbgsrvlt.htm#setdebug&lt;/A&gt;&lt;BR /&gt;
&lt;BR /&gt;
Excel-specific options are set as tagset options.  Generally you will need to introduce extra ODS statements to set different options for different sheets.  Take a look at some of my papers where I cover many scenarios, but be careful to get the syntax correct for the additional ODS statements.&lt;BR /&gt;
&lt;BR /&gt;
&lt;A href="http://www.sas.com/reg/gen/corp/867226?page=Resources" target="_blank"&gt;http://www.sas.com/reg/gen/corp/867226?page=Resources&lt;/A&gt;&lt;BR /&gt;
&lt;BR /&gt;
Vince DelGobbo&lt;BR /&gt;
SAS R&amp;amp;D</description>
      <pubDate>Mon, 14 Feb 2011 22:56:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9928#M2261</guid>
      <dc:creator>Vince_SAS</dc:creator>
      <dc:date>2011-02-14T22:56:51Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9929#M2262</link>
      <description>Thanks Vince,&lt;BR /&gt;
I added the _debug option in the place where I have the other _ODS options.  But I only get back the XLS file and a blank HTML window. Does the log appear supposed to appear in the HTML window?&lt;BR /&gt;
&lt;BR /&gt;
I have SAS 9.1.3 and the link seems to be from the 9.2 documentation. Is it available on 9.1.3? &lt;BR /&gt;
&lt;BR /&gt;
Thanks,</description>
      <pubDate>Tue, 15 Feb 2011 00:04:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9929#M2262</guid>
      <dc:creator>saspert</dc:creator>
      <dc:date>2011-02-15T00:04:25Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9930#M2263</link>
      <description>Thank you Cynthia. I am reworking a code that was built by the previous programmer. In the process, I ignored these lines which were meant for PDF destination.&lt;BR /&gt;
&lt;BR /&gt;
I should make it a point to make a mental note of this. &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;BR /&gt;
&lt;BR /&gt;
Regards</description>
      <pubDate>Tue, 15 Feb 2011 00:28:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9930#M2263</guid>
      <dc:creator>saspert</dc:creator>
      <dc:date>2011-02-15T00:28:55Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9931#M2264</link>
      <description>&amp;gt; Thanks Vince,&lt;BR /&gt;
&amp;gt; I added the _debug option in the place where I have&lt;BR /&gt;
&amp;gt; the other _ODS options.  But I only get back the XLS&lt;BR /&gt;
&amp;gt; file and a blank HTML window. Does the log appear&lt;BR /&gt;
&amp;gt; supposed to appear in the HTML window?&lt;BR /&gt;
&amp;gt; &lt;BR /&gt;
&amp;gt; I have SAS 9.1.3 and the link seems to be from the&lt;BR /&gt;
&amp;gt; 9.2 documentation. Is it available on 9.1.3? &lt;BR /&gt;
&amp;gt; &lt;BR /&gt;
&amp;gt; Thanks,&lt;BR /&gt;
&lt;BR /&gt;
_DEBUG has been around since the mid 1990's as part of the SAS/IntrNet product, and we included  it in SAS Stored Processes.&lt;BR /&gt;
&lt;BR /&gt;
The 9.1.3 documentation is here:&lt;BR /&gt;
&lt;BR /&gt;
&lt;A href="http://support.sas.com/rnd/itech/doc9/dev_guide/stprocess/index.html" target="_blank"&gt;http://support.sas.com/rnd/itech/doc9/dev_guide/stprocess/index.html&lt;/A&gt;&lt;BR /&gt;
&lt;BR /&gt;
If you use the STP Web App to execute the stored process, click "Execution  Options" and then select "Show SAS Log" and "Show execution trace".&lt;BR /&gt;
&lt;BR /&gt;
&lt;A href="http://support.sas.com/rnd/itech/doc9/dev_guide/stprocess/stpwebapp.html#execopts" target="_blank"&gt;http://support.sas.com/rnd/itech/doc9/dev_guide/stprocess/stpwebapp.html#execopts&lt;/A&gt;&lt;BR /&gt;
&lt;BR /&gt;
If you are using your own input form, add a field for _DEBUG:&lt;BR /&gt;
[pre]&lt;BR /&gt;
&lt;INPUT type="text" name="_debug" value="log,trace" /&gt;&lt;BR /&gt;
[/pre]&lt;BR /&gt;
Vince DelGobbo&lt;BR /&gt;
SAS R&amp;amp;D</description>
      <pubDate>Tue, 15 Feb 2011 01:39:17 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9931#M2264</guid>
      <dc:creator>Vince_SAS</dc:creator>
      <dc:date>2011-02-15T01:39:17Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9932#M2265</link>
      <description>Hi Vince,&lt;BR /&gt;
Many thanks for the tip. I was not aware of such options. The stored processes that I am running gives the output&lt;BR /&gt;
1. Description page (keywords, location, name...)&lt;BR /&gt;
2. SAS execution options page. I am choosing yes here to turn on the log.&lt;BR /&gt;
3. Client specific prompt page which needs a few inputs.&lt;BR /&gt;
&lt;BR /&gt;
#3 is being built by a javascript code which is embedded inside a data _null_/put statements combination. So, I included the html code you gave me to show the log.&lt;BR /&gt;
&lt;BR /&gt;
Now what happens is that I briefly get the log on the browser window and then it changes back to the &lt;A href="http://sas.client.com:8080/SASStoredProcess/do" target="_blank"&gt;http://sas.client.com:8080/SASStoredProcess/do&lt;/A&gt;? URL without giving me my Excel output.&lt;BR /&gt;
&lt;BR /&gt;
I am including the entire log here since I am not sure which parts are most relevant.&lt;BR /&gt;
&lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Using previous session context&lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Using username ... in domain DefaultAuth&lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Repository Foundation&lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Parameter file &lt;BR /&gt;
&lt;BR /&gt;
/ebiz/sas/WebSphere61dev/AppServer/installedApps/c1_sas_dev/SASStoredProcess_war.ear/SASStoredProcess.war/&lt;BR /&gt;
&lt;BR /&gt;
Params.config &lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Stored Process Input Parameters:&lt;BR /&gt;
_debug = log,trace&lt;BR /&gt;
_domain = DefaultAuth&lt;BR /&gt;
_grafloc = /sasweb/graph&lt;BR /&gt;
_htcook = JSESSIONID=0000hWT-kIbdQ-xNKsBmeuvbMdd:14sdi9m9g&lt;BR /&gt;
_htua = Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; &lt;BR /&gt;
&lt;BR /&gt;
.NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; InfoPath.1)&lt;BR /&gt;
_program = //Foundation/BIP Tree/ReportStudio/.../ha_completion_weekly&lt;BR /&gt;
_repository = Foundation&lt;BR /&gt;
_reqmeth = POST&lt;BR /&gt;
_rmtaddr = 10.84.133.14&lt;BR /&gt;
_rmthost = 10.84.133.14&lt;BR /&gt;
_srvname = sasdev.uhc.com&lt;BR /&gt;
_srvport = 8080&lt;BR /&gt;
_url = /SASStoredProcess/do&lt;BR /&gt;
_username = ...&lt;BR /&gt;
_version = Version 9.1.3 (Build 354)&lt;BR /&gt;
format = Excel&lt;BR /&gt;
refresh_submit = 1&lt;BR /&gt;
startdate = 01/01/2011&lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Servlet Session Data:&lt;BR /&gt;
Servlet Session ID: hWT-kIbdQ-xNKsBmeuvbMdd&lt;BR /&gt;
Counter: 18&lt;BR /&gt;
Creation Time: Tue Feb 15 14:31:05 CST 2011&lt;BR /&gt;
Last Accessed Time: Tue Feb 15 14:58:05 CST 2011&lt;BR /&gt;
Servlet Session Timeout: 900&lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; User context &lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Using PathUrl SBIP://Foundation/BIP Tree/ReportStudio/..../ha_completion_weekly(StoredProcess) &lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Creating Stored Process Object&lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Got Stored Process //Foundation/BIP Tree/ReportStudio/.../ha_completion_weekly &lt;BR /&gt;
Name: ha_completion_weekly&lt;BR /&gt;
Directory: /sasdev/.../Release2&lt;BR /&gt;
File Name: ha_completion_weekly.sas&lt;BR /&gt;
Description: HA Completion Weekly&lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Setting stored process parameters&lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Executing stored process object&lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Getting _webout return stream&lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Getting return headers&lt;BR /&gt;
Content-disposition: attachment; filename=HA_Completion_Weekly.xls&lt;BR /&gt;
Content-type: application/vnd.ms-excel&lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Opening return data stream&lt;BR /&gt;
&amp;gt;&amp;gt;&amp;gt; Starting return data read&lt;BR /&gt;
ioprptsp ioprptsp 2011-02-15T14:57:50 2011-02-15T14:57:50 SAS Institute Inc. &lt;A href="http://www.sas.com" target="_blank"&gt;http://www.sas.com&lt;/A&gt; &lt;BR /&gt;
&lt;BR /&gt;
9.01.01M3P02022006</description>
      <pubDate>Tue, 15 Feb 2011 21:11:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9932#M2265</guid>
      <dc:creator>saspert</dc:creator>
      <dc:date>2011-02-15T21:11:31Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9933#M2266</link>
      <description>The MIME headers look correct.&lt;BR /&gt;
&lt;BR /&gt;
Are you running the simple STP code that I posted (PROC PRINT of SASHELP.CLASS)?  If not, get that working first, then move to the more complicated case.&lt;BR /&gt;
&lt;BR /&gt;
Another thing to try is getting rid of the STPSRV calls for the time being.  The headers may be affecting the ability to see the SAS log.  Also, the XML returned can affect display of the SAS log.&lt;BR /&gt;
&lt;BR /&gt;
Vince DelGobbo&lt;BR /&gt;
SAS R&amp;amp;D</description>
      <pubDate>Tue, 15 Feb 2011 22:25:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9933#M2266</guid>
      <dc:creator>Vince_SAS</dc:creator>
      <dc:date>2011-02-15T22:25:16Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9934#M2267</link>
      <description>Hi Vince,&lt;BR /&gt;
It took me a while to get back into this task at work. Sorry for the delay. Here is the code I am running -&lt;BR /&gt;
*ProcessBody;&lt;BR /&gt;
options mprint; &lt;BR /&gt;
ods path work.tmplmst(update) sashelp.tmplmst(read); &lt;BR /&gt;
%include '/sasdev/.../excltags.sas'; &lt;BR /&gt;
%let _ODSDEST=tagsets.ExcelXP; &lt;BR /&gt;
/*%let RV=%sysfunc(stpsrv_header(Content-type, application/vnd.ms-excel));*/&lt;BR /&gt;
/*%let RV=%sysfunc(stpsrv_header(Content-disposition, attachment;filename="Completion_Weekly.xls"));  */&lt;BR /&gt;
%STPBEGIN; &lt;BR /&gt;
/*ods tagsets.ExcelXP file=_webout style=sasweb options(doc="help");*/&lt;BR /&gt;
proc print data=sashelp.class; &lt;BR /&gt;
run; &lt;BR /&gt;
quit;&lt;BR /&gt;
ods tagsets.ExcelXP close;&lt;BR /&gt;
%STPEND;&lt;BR /&gt;
&lt;BR /&gt;
This seems to be working fine. I am getting a very long xml code inside the webpage. But when I include this statement -&lt;BR /&gt;
/*ods tagsets.ExcelXP file=_webout style=sasweb options(doc="help");*/&lt;BR /&gt;
&lt;BR /&gt;
I am getting this error in the xml-log-html page.&lt;BR /&gt;
&lt;BR /&gt;
The XML page cannot be displayed &lt;BR /&gt;
&lt;BR /&gt;
Cannot view XML input using XSL style sheet. Please correct the error and then click the Refresh button, or try again later. &lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
--------------------------------------------------------------------------------&lt;BR /&gt;
&lt;BR /&gt;
Only one top level element is allowed in an XML document. Error processing resource 'http://sasdev.uhc.com:8080/SASStoredPr...&lt;BR /&gt;
&lt;BR /&gt;
&lt;WORKBOOK xmlns="urn:schemas-microsoft-com:office:spreadsheet"&gt;&lt;BR /&gt;
-^&lt;BR /&gt;
AN&amp;gt; ss:ID="systemtitle5__c" ss:Parent="systemtitle5"&amp;gt;&lt;BR /&gt;
  &lt;ALIGNMENT wraptext="1" horizontal="Center"&gt;&lt;/ALIGNMENT&gt; &lt;BR /&gt;
&lt;BR /&gt;
When I include the headers and allow the XML file to be generated, I am getting a "Strict Parse Error". &lt;BR /&gt;
&lt;BR /&gt;
Does this sound familiar?&lt;BR /&gt;
&lt;BR /&gt;
Thanks,&lt;BR /&gt;
saspert.

Message was edited by: saspert&lt;/WORKBOOK&gt;</description>
      <pubDate>Tue, 01 Mar 2011 17:28:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9934#M2267</guid>
      <dc:creator>saspert</dc:creator>
      <dc:date>2011-03-01T17:28:16Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9935#M2268</link>
      <description>The MPRINT should show you that STPBEGIN is issuing an ODS statement for you, so your extra ODS statement is causing the problem.&lt;BR /&gt;
&lt;BR /&gt;
Try this:&lt;BR /&gt;
[pre]&lt;BR /&gt;
*ProcessBody;&lt;BR /&gt;
options mprint;&lt;BR /&gt;
ods path work.tmplmst(update) sashelp.tmplmst(read);&lt;BR /&gt;
%include '/sasdev/optum/rpt/phi/projects/eHP/Release2/Development_Code/excel_120/excltags.sas';&lt;BR /&gt;
%let _ODSDEST=tagsets.ExcelXP;&lt;BR /&gt;
%let RV=%sysfunc(stpsrv_header(Content-type, application/vnd.ms-excel));&lt;BR /&gt;
%let RV=%sysfunc(stpsrv_header(Content-disposition, attachment;filename="Boeing_HA_Completion_Weekly.xls"));&lt;BR /&gt;
%STPBEGIN;&lt;BR /&gt;
proc print data=sashelp.class; run; quit;&lt;BR /&gt;
%STPEND;&lt;BR /&gt;
[/pre]&lt;BR /&gt;
&lt;BR /&gt;
Vince DelGobbo&lt;BR /&gt;
SAS R&amp;amp;D</description>
      <pubDate>Tue, 01 Mar 2011 17:44:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9935#M2268</guid>
      <dc:creator>Vince_SAS</dc:creator>
      <dc:date>2011-03-01T17:44:22Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9936#M2269</link>
      <description>Actually Vince, I want to know where I should put the additional ODS statements like &lt;BR /&gt;
ODS options (tab1 ...options for tab1);&lt;BR /&gt;
ODS options (tab2 ...options for tab2);&lt;BR /&gt;
ODS options (tab3 ...options for tab3);&lt;BR /&gt;
&lt;BR /&gt;
Do you know if putting these statements between the STPBEGIN and STPEND statements will cause issues?&lt;BR /&gt;
&lt;BR /&gt;
Thanks,&lt;BR /&gt;
Raj.</description>
      <pubDate>Tue, 01 Mar 2011 19:13:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9936#M2269</guid>
      <dc:creator>saspert</dc:creator>
      <dc:date>2011-03-01T19:13:27Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9937#M2270</link>
      <description>Recall that you can have multiple ODS statements, and you can specify the options on the extra statements:&lt;BR /&gt;
[pre]&lt;BR /&gt;
*ProcessBody;&lt;BR /&gt;
&lt;BR /&gt;
options mprint;&lt;BR /&gt;
&lt;BR /&gt;
ods path work.tmplmst(update) sashelp.tmplmst(read);&lt;BR /&gt;
&lt;BR /&gt;
%include '/sasdev/optum/rpt/phi/projects/eHP/Release2/Development_Code/excel_120/excltags.sas';&lt;BR /&gt;
&lt;BR /&gt;
%let _ODSDEST=tagsets.ExcelXP;&lt;BR /&gt;
&lt;BR /&gt;
%let RV=%sysfunc(stpsrv_header(Content-type, application/vnd.ms-excel));&lt;BR /&gt;
%let RV=%sysfunc(stpsrv_header(Content-disposition, attachment;filename="Boeing_HA_Completion_Weekly.xls"));&lt;BR /&gt;
&lt;BR /&gt;
%STPBEGIN;&lt;BR /&gt;
&lt;BR /&gt;
  &lt;B&gt;ods tagsets.ExcelXP options(sheet_name='Male Students');&lt;/B&gt;&lt;BR /&gt;
&lt;BR /&gt;
  proc print data=sashelp.class; &lt;BR /&gt;
    where (sex eq 'M');&lt;BR /&gt;
  run; quit;&lt;BR /&gt;
&lt;BR /&gt;
  &lt;B&gt;ods tagsets.ExcelXP options(sheet_name='Female Students');&lt;/B&gt;&lt;BR /&gt;
&lt;BR /&gt;
  proc print data=sashelp.class; &lt;BR /&gt;
    where (sex eq 'F');&lt;BR /&gt;
  run; quit;&lt;BR /&gt;
&lt;BR /&gt;
%STPEND;&lt;BR /&gt;
[/pre]&lt;BR /&gt;
&lt;BR /&gt;
Vince DelGobbo&lt;BR /&gt;
SAS R&amp;amp;D</description>
      <pubDate>Tue, 01 Mar 2011 19:43:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9937#M2270</guid>
      <dc:creator>Vince_SAS</dc:creator>
      <dc:date>2011-03-01T19:43:28Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9938#M2271</link>
      <description>Ah - so the main ODS statement conflicts but not the other ODS statements. Thanks for the handholding. &lt;BR /&gt;
&lt;BR /&gt;
This code does work fine - I get back the 2-tab spreadsheet. But when I try to insert my original code, I get back errors. I looked in the MSO folder like your suggestion in one of the earlier posts. I am getting this error -&lt;BR /&gt;
&lt;BR /&gt;
XML PARSE ERROR:  Null or missing attribute value&lt;BR /&gt;
  Error occurs at or below this element stack:&lt;BR /&gt;
    &lt;BR /&gt;
&lt;BR /&gt;
&lt;BR /&gt;
When I comment the headers, I get this in the XML log window&lt;BR /&gt;
&lt;BR /&gt;
- &lt;STYLE id="systemfooter4__c" parent="systemfooter4"&gt;&amp;lt;br&amp;gt;
  &amp;lt;Alignment ss:WrapText="1" ss:Horizontal="CentThe XML page cannot be displayed &amp;lt;br&amp;gt;
Cannot view XML input using XSL style sheet. Please correct the error and then click the Refresh button, or try again later. &amp;lt;br&amp;gt;
&amp;lt;br&amp;gt;
&amp;lt;br&amp;gt;
--------------------------------------------------------------------------------&amp;lt;br&amp;gt;
&amp;lt;br&amp;gt;
Only one top level element is allowed in an XML document. Error processing resource 'http://sasdev.uhc.com:8080/SASStoredPr...&amp;lt;br&amp;gt;
 &amp;lt;br&amp;gt;
&amp;lt;HTML&amp;gt;&amp;lt;br&amp;gt;
-^&amp;lt;br&amp;gt;
er" /&amp;gt; &amp;lt;br&amp;gt;
  &lt;/STYLE&gt;&lt;BR /&gt;
  &lt;STYLE id="systemtitle4" parent="body"&gt; &lt;BR /&gt;
- &lt;/STYLE&gt;&lt;STYLE id="systemtitle4__l" parent="systemtitle4"&gt;&amp;lt;br&amp;gt;
  &amp;lt;Alignment ss:WrapText="1" ss:Horizontal="Left" /&amp;gt; &amp;lt;br&amp;gt;
&amp;lt;br&amp;gt;
Not sure where the error might be.&amp;lt;br&amp;gt;
Not sure where the error might be.&lt;/STYLE&gt;</description>
      <pubDate>Tue, 01 Mar 2011 20:58:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9938#M2271</guid>
      <dc:creator>saspert</dc:creator>
      <dc:date>2011-03-01T20:58:35Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9939#M2272</link>
      <description>I suggest you open a track with Technical Support:&lt;BR /&gt;
&lt;BR /&gt;
&lt;A href="http://support.sas.com/ctx/supportform/createForm" target="_blank"&gt;http://support.sas.com/ctx/supportform/createForm&lt;/A&gt;&lt;BR /&gt;
&lt;BR /&gt;
You are getting malformed XML, so one last thing to check is to make sure that you don't have any ODS statements that conflict with the one generated by STPBEGIN.&lt;BR /&gt;
&lt;BR /&gt;
Good luck.&lt;BR /&gt;
&lt;BR /&gt;
Vince DelGobbo&lt;BR /&gt;
SAS R&amp;amp;D

Corrected typo.&lt;BR /&gt;
    &lt;BR /&gt;
Message was edited by: Vince@SAS</description>
      <pubDate>Wed, 02 Mar 2011 23:37:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9939#M2272</guid>
      <dc:creator>Vince_SAS</dc:creator>
      <dc:date>2011-03-02T23:37:36Z</dc:date>
    </item>
    <item>
      <title>Re: Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9940#M2273</link>
      <description>Sure. I think I will review the code with my team before submitting a track.&lt;BR /&gt;
Thank you for your tips.</description>
      <pubDate>Thu, 03 Mar 2011 22:41:17 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9940#M2273</guid>
      <dc:creator>saspert</dc:creator>
      <dc:date>2011-03-03T22:41:17Z</dc:date>
    </item>
    <item>
      <title>Running ExcelXp tagsets in Stored Processes</title>
      <link>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9941#M2274</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am lokking for this solution. Because I am really wondering to do this job done. Right now I m working on this code whichever you mentioned. So I am really appreacite that you give me this solution to Create title page in excel via XML rpeort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 24 Dec 2011 23:32:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/Developers/Running-ExcelXp-tagsets-in-Stored-Processes/m-p/9941#M2274</guid>
      <dc:creator>patel1987</dc:creator>
      <dc:date>2011-12-24T23:32:46Z</dc:date>
    </item>
  </channel>
</rss>

