<?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: Stored process sessions in enterprise guide in SAS Enterprise Guide</title>
    <link>https://communities.sas.com/t5/SAS-Enterprise-Guide/Stored-process-sessions-in-enterprise-guide/m-p/102496#M8985</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;There are a lot of options to think about.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I was thinking of a fixed functional process.&lt;/P&gt;&lt;P&gt;program A1 - processing data and creating temporay data for a next program say B2&lt;/P&gt;&lt;P&gt;program B2 - processing data and incorporating temporory data coming from program A1&lt;/P&gt;&lt;P&gt;As A1 en B2 are part of a project and these are scheduled by hand with no session requirment -&amp;gt;&lt;/P&gt;&lt;P&gt;... The easy approach is defining a permanent locations and name it "StagingArea" &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; The deletion and checking should be part of the program/project design.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF you think on keeping a dataset during a shorter period of time like a web-session the logic-requiremet is different.&lt;/P&gt;&lt;P&gt;WS:&lt;/P&gt;&lt;P&gt;IF you have followed the advice of WS running by the personal-key. Than that key is unique having an own SASWork area.&lt;/P&gt;&lt;P&gt;Closing a WS-session should close all. (sysprocessid is an random number during the lifetime of a WS stable)&lt;/P&gt;&lt;P&gt;The additional data could be created as submap of SASwork.&amp;nbsp; The physical name can be retieved by: %sysfunc(pathname(saswork))&amp;nbsp; &lt;/P&gt;&lt;P&gt;This only works when no Mp-connect is involved. In that case and the requiement of possible sharing a temporay file at the %sysfunc(pathname(sasuser)) could be a solution. This only when sufficient storage is setup for that.&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;SP:&lt;/P&gt;&lt;P&gt;These are started at first request and will run some time running at their Own process possible serving several requests from different users.&lt;/P&gt;&lt;P&gt;Here you need to know the metauser-id.&amp;nbsp; _Metauser is a macrovariable.&amp;nbsp; The processid will be possible shared by multiple users as that is what a SP does. &lt;/P&gt;&lt;P&gt;If you have a naming convention of personal keys and those of that SP's&amp;nbsp; that differentiates well you could use &amp;amp;SYSuser to know whether a WS or SP is running.&amp;nbsp; _Metafolder and _program are macrovars dedicated for SP's&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There are a lot of macro-variables being used. The standard base ones and those with SP's&lt;/P&gt;&lt;P&gt;&lt;A href="http://support.sas.com/documentation/cdl/en/stpug/64882/HTML/default/viewer.htm#p184mqqbi9w6qjn1q0619x19eg02.htm" title="http://support.sas.com/documentation/cdl/en/stpug/64882/HTML/default/viewer.htm#p184mqqbi9w6qjn1q0619x19eg02.htm"&gt;SAS(R) 9.4 Stored Processes: Developer's Guide&lt;/A&gt;&amp;nbsp; (Using Reserved Macro Variables) See SYSProcesname as anew feature. &lt;/P&gt;&lt;P&gt;&lt;A href="http://support.sas.com/documentation/cdl/en/stpug/62758/HTML/default/viewer.htm#p184mqqbi9w6qjn1q0619x19eg02.htm" title="http://support.sas.com/documentation/cdl/en/stpug/62758/HTML/default/viewer.htm#p184mqqbi9w6qjn1q0619x19eg02.htm"&gt;SAS(R) 9.3 Stored Processes: Developer's Guide&lt;/A&gt;&lt;/P&gt;&lt;P&gt;The common base macrovars are:&lt;/P&gt;&lt;P&gt;&lt;A href="http://support.sas.com/documentation/cdl/en/mcrolref/64754/HTML/default/viewer.htm#p0rdf0yp3yp6gsn1vkpr1ybw5co8.htm" title="http://support.sas.com/documentation/cdl/en/mcrolref/64754/HTML/default/viewer.htm#p0rdf0yp3yp6gsn1vkpr1ybw5co8.htm"&gt;SAS(R) 9.4 Macro Language: Reference&lt;/A&gt; (&lt;A id="n18mk1d0g1j31in1q6chazvfseel"&gt;&lt;/A&gt;&lt;A id="n0t7cm070dig9hn1kmz3892ebtmw"&gt;&lt;/A&gt;Automatic Macro Variables) &lt;A href="http://support.sas.com/documentation/cdl/en/mcrolref/62978/HTML/default/viewer.htm#n18mk1d0g1j31in1q6chazvfseel.htm" title="http://support.sas.com/documentation/cdl/en/mcrolref/62978/HTML/default/viewer.htm#n18mk1d0g1j31in1q6chazvfseel.htm"&gt;SAS(R) 9.3 Macro Language: Reference&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 09 Aug 2013 11:52:41 GMT</pubDate>
    <dc:creator>jakarman</dc:creator>
    <dc:date>2013-08-09T11:52:41Z</dc:date>
    <item>
      <title>Stored process sessions in enterprise guide</title>
      <link>https://communities.sas.com/t5/SAS-Enterprise-Guide/Stored-process-sessions-in-enterprise-guide/m-p/102493#M8982</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am trying to get some stored processes to use stored process sessions to access the same work area using the SAVE library that is defined when a stored process session is created.&lt;/P&gt;&lt;P&gt;I need to be able to trigger one stored process in Enterprise Guide, view the results and then trigger a second stored process to run in the stored process session that was created by the first.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Does anyone have any idea how to do this? All the documentation I found online only covered using a web front end for this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tim Campbell.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Aug 2013 10:27:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Enterprise-Guide/Stored-process-sessions-in-enterprise-guide/m-p/102493#M8982</guid>
      <dc:creator>TimCampbell</dc:creator>
      <dc:date>2013-08-06T10:27:44Z</dc:date>
    </item>
    <item>
      <title>Re: Stored process sessions in enterprise guide</title>
      <link>https://communities.sas.com/t5/SAS-Enterprise-Guide/Stored-process-sessions-in-enterprise-guide/m-p/102494#M8983</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Tim, The web concept is build to be "stateless" no information is being&amp;nbsp; held from to the next page. A Transactional approach would be impossible. To solve that the concept of sessions (like cookies) has been implemented. So sessions are bound to the web.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;With Eguide you are getting bound to a WS or a SP server. &lt;/P&gt;&lt;P&gt;- When the WS is bound to your personal keys and handling your SP request this can be the same session (no mp-connect)&lt;/P&gt;&lt;P&gt;- When the request is going to a SP server it will one that is often one of several for serving load-balancing.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The best approach designing logic moving form 1 step (SP) to a next one would be a permanent like dataset defined to you project.&lt;/P&gt;&lt;P&gt;You could call it "StagingArea" as an often used naming convention.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;Do not forget to add the logical checkings into your processing. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 06 Aug 2013 11:32:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Enterprise-Guide/Stored-process-sessions-in-enterprise-guide/m-p/102494#M8983</guid>
      <dc:creator>jakarman</dc:creator>
      <dc:date>2013-08-06T11:32:04Z</dc:date>
    </item>
    <item>
      <title>Re: Stored process sessions in enterprise guide</title>
      <link>https://communities.sas.com/t5/SAS-Enterprise-Guide/Stored-process-sessions-in-enterprise-guide/m-p/102495#M8984</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks Jaap,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have gone down the route or creating a staging area for the data that needs to be shared across stored processes.&lt;/P&gt;&lt;P&gt;I created a macro that will create me a new directory called tmp_&amp;amp;SYSPROCESSID that I can use to store the data in a way that is uniquely identifyable to all programs or stored processes triggered from an EG session.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want to make this as generic as possible for future developments so do you know if there is a nice simple function or macro variable that I could use to identify if my code is running in stored process environment or not?&lt;/P&gt;&lt;P&gt;I want different parts of the macro to run for a stored process compared to an EG program.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tim&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Aug 2013 10:53:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Enterprise-Guide/Stored-process-sessions-in-enterprise-guide/m-p/102495#M8984</guid>
      <dc:creator>TimCampbell</dc:creator>
      <dc:date>2013-08-09T10:53:38Z</dc:date>
    </item>
    <item>
      <title>Re: Stored process sessions in enterprise guide</title>
      <link>https://communities.sas.com/t5/SAS-Enterprise-Guide/Stored-process-sessions-in-enterprise-guide/m-p/102496#M8985</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;There are a lot of options to think about.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I was thinking of a fixed functional process.&lt;/P&gt;&lt;P&gt;program A1 - processing data and creating temporay data for a next program say B2&lt;/P&gt;&lt;P&gt;program B2 - processing data and incorporating temporory data coming from program A1&lt;/P&gt;&lt;P&gt;As A1 en B2 are part of a project and these are scheduled by hand with no session requirment -&amp;gt;&lt;/P&gt;&lt;P&gt;... The easy approach is defining a permanent locations and name it "StagingArea" &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; The deletion and checking should be part of the program/project design.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF you think on keeping a dataset during a shorter period of time like a web-session the logic-requiremet is different.&lt;/P&gt;&lt;P&gt;WS:&lt;/P&gt;&lt;P&gt;IF you have followed the advice of WS running by the personal-key. Than that key is unique having an own SASWork area.&lt;/P&gt;&lt;P&gt;Closing a WS-session should close all. (sysprocessid is an random number during the lifetime of a WS stable)&lt;/P&gt;&lt;P&gt;The additional data could be created as submap of SASwork.&amp;nbsp; The physical name can be retieved by: %sysfunc(pathname(saswork))&amp;nbsp; &lt;/P&gt;&lt;P&gt;This only works when no Mp-connect is involved. In that case and the requiement of possible sharing a temporay file at the %sysfunc(pathname(sasuser)) could be a solution. This only when sufficient storage is setup for that.&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;SP:&lt;/P&gt;&lt;P&gt;These are started at first request and will run some time running at their Own process possible serving several requests from different users.&lt;/P&gt;&lt;P&gt;Here you need to know the metauser-id.&amp;nbsp; _Metauser is a macrovariable.&amp;nbsp; The processid will be possible shared by multiple users as that is what a SP does. &lt;/P&gt;&lt;P&gt;If you have a naming convention of personal keys and those of that SP's&amp;nbsp; that differentiates well you could use &amp;amp;SYSuser to know whether a WS or SP is running.&amp;nbsp; _Metafolder and _program are macrovars dedicated for SP's&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;There are a lot of macro-variables being used. The standard base ones and those with SP's&lt;/P&gt;&lt;P&gt;&lt;A href="http://support.sas.com/documentation/cdl/en/stpug/64882/HTML/default/viewer.htm#p184mqqbi9w6qjn1q0619x19eg02.htm" title="http://support.sas.com/documentation/cdl/en/stpug/64882/HTML/default/viewer.htm#p184mqqbi9w6qjn1q0619x19eg02.htm"&gt;SAS(R) 9.4 Stored Processes: Developer's Guide&lt;/A&gt;&amp;nbsp; (Using Reserved Macro Variables) See SYSProcesname as anew feature. &lt;/P&gt;&lt;P&gt;&lt;A href="http://support.sas.com/documentation/cdl/en/stpug/62758/HTML/default/viewer.htm#p184mqqbi9w6qjn1q0619x19eg02.htm" title="http://support.sas.com/documentation/cdl/en/stpug/62758/HTML/default/viewer.htm#p184mqqbi9w6qjn1q0619x19eg02.htm"&gt;SAS(R) 9.3 Stored Processes: Developer's Guide&lt;/A&gt;&lt;/P&gt;&lt;P&gt;The common base macrovars are:&lt;/P&gt;&lt;P&gt;&lt;A href="http://support.sas.com/documentation/cdl/en/mcrolref/64754/HTML/default/viewer.htm#p0rdf0yp3yp6gsn1vkpr1ybw5co8.htm" title="http://support.sas.com/documentation/cdl/en/mcrolref/64754/HTML/default/viewer.htm#p0rdf0yp3yp6gsn1vkpr1ybw5co8.htm"&gt;SAS(R) 9.4 Macro Language: Reference&lt;/A&gt; (&lt;A id="n18mk1d0g1j31in1q6chazvfseel"&gt;&lt;/A&gt;&lt;A id="n0t7cm070dig9hn1kmz3892ebtmw"&gt;&lt;/A&gt;Automatic Macro Variables) &lt;A href="http://support.sas.com/documentation/cdl/en/mcrolref/62978/HTML/default/viewer.htm#n18mk1d0g1j31in1q6chazvfseel.htm" title="http://support.sas.com/documentation/cdl/en/mcrolref/62978/HTML/default/viewer.htm#n18mk1d0g1j31in1q6chazvfseel.htm"&gt;SAS(R) 9.3 Macro Language: Reference&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Aug 2013 11:52:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Enterprise-Guide/Stored-process-sessions-in-enterprise-guide/m-p/102496#M8985</guid>
      <dc:creator>jakarman</dc:creator>
      <dc:date>2013-08-09T11:52:41Z</dc:date>
    </item>
    <item>
      <title>Re: Stored process sessions in enterprise guide</title>
      <link>https://communities.sas.com/t5/SAS-Enterprise-Guide/Stored-process-sessions-in-enterprise-guide/m-p/102497#M8986</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Tim,&lt;BR /&gt; It will try it to do short (lost all first attempt)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="http://support.sas.com/documentation/cdl/en/stpug/62758/HTML/default/viewer.htm#p184mqqbi9w6qjn1q0619x19eg02.htm" title="http://support.sas.com/documentation/cdl/en/stpug/62758/HTML/default/viewer.htm#p184mqqbi9w6qjn1q0619x19eg02.htm"&gt;SAS(R) 9.3 Stored Processes: Developer's Guide&lt;/A&gt; (Using Reserved Macro Variables) wordt uitgebreid met &lt;A href="http://support.sas.com/documentation/cdl/en/stpug/64882/HTML/default/viewer.htm#p184mqqbi9w6qjn1q0619x19eg02.htm" title="http://support.sas.com/documentation/cdl/en/stpug/64882/HTML/default/viewer.htm#p184mqqbi9w6qjn1q0619x19eg02.htm"&gt;SAS(R) 9.4 Stored Processes: Developer's Guide&lt;/A&gt; (sysprocessmode)&amp;nbsp; &lt;A href="http://support.sas.com/documentation/cdl/en/mcrolref/64754/HTML/default/viewer.htm#p0rdf0yp3yp6gsn1vkpr1ybw5co8.htm" title="http://support.sas.com/documentation/cdl/en/mcrolref/64754/HTML/default/viewer.htm#p0rdf0yp3yp6gsn1vkpr1ybw5co8.htm"&gt;SAS(R) 9.4 Macro Language: Reference&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The following could be used now I suppose:&amp;nbsp; _metauser _program _metafolder and SYSUSERID&amp;nbsp; (the last one I have Always used).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;OPtions:&lt;/P&gt;&lt;P&gt;a/ fixed stagingarea as part of a project&lt;/P&gt;&lt;P&gt;My situation was a fixed solution as part of a project needing a staging dataset for data going from program A to Program B. Not session related but as flow of a logic. (ETL like)&lt;/P&gt;&lt;P&gt;b/ WS session related&lt;/P&gt;&lt;P&gt;This session is normally started/stopped running by personal key (well defined OS security). By that you can place&lt;/P&gt;&lt;P&gt;&amp;nbsp; b1/ Staging-area like a SASWork (storage location). With Mp-connect processing it will create many of those&lt;/P&gt;&lt;P&gt;&amp;nbsp; b2/ Staging-area like a SASuser&amp;nbsp; (storage location). Wiht MP-connect all of them will share this (watch/care locking)&lt;/P&gt;&lt;P&gt;the physical naming of those existing libname can be retrieven by&amp;nbsp;&amp;nbsp; %sysfunc(pathname((SAS...)) &lt;/P&gt;&lt;P&gt;c/ SP session related&lt;/P&gt;&lt;P&gt;This session is serving possible many users after being started automatically by the first one.&lt;/P&gt;&lt;P&gt;You will need &amp;amp;_METAUSER to do some segregation and decide in temporary path for it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;SYSUSERID is the OS-level key running the process. &lt;BR /&gt;A simple method for recognizing sassrv and alike keys is an easy segregation between SP en WS processing.&lt;/P&gt;&lt;P&gt;This also allows in ohter ways of running processes, the only requirement is a well designed OS (host-security) layer.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Aug 2013 13:02:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Enterprise-Guide/Stored-process-sessions-in-enterprise-guide/m-p/102497#M8986</guid>
      <dc:creator>jakarman</dc:creator>
      <dc:date>2013-08-09T13:02:46Z</dc:date>
    </item>
  </channel>
</rss>

