Right, so then this isn't instability. It's an implementation issue. You must 'trick' the SAS Stored Process into thinking the table is a defined location in the SAS Metadata by then reassigning that libref to WORK in the code.
That way - WORK is being defined with each execution of SAS Stored Process - which is 1 per user interaction.
Here is an overview of the process.
1. Define a SAS (BASE) Library in SAS Management Console that points to somewhere on the system.
2. Create a small table in this physical location with the columns/formats etc. (This will be deleted later. Just used to define the metadata.)
3. Import the table metadata into SAS Library defined in Step 1.
4. Delete the table created in Step 2.
5. In the Information Map, use this table metadata created in Step 3 above as the source.
6. In the SAS Stored Process, add the statement
libname libref (WORK);
where libref completely matches the libref you gave the SAS Library in Step 1.
~ Angela Hall
http://sas-bi.blogspot.com