|Date: ||Mon, 19 Nov 2001 16:07:22 -0500|
|Sender: ||"SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>|
|From: ||Nathaniel Wooding <Nathaniel_Wooding@DOM.COM>|
|Subject: ||SAS V8 Conversion Issue: Proc Copy and Proc Datasets|
|Content-type: ||text/plain; charset=us-ascii|
This may have been covered before.
I was performing some library maintenance this morning in which I was
moving a library written in V5 to a new V8 library. While doing this, I
first used Proc Copy to write the desired files to a new library and
specified the V8 engine in the libname statement. I then wanted to copy
the members of this new library to a batch work session (I was running
under MVS) and encountered a problem. My code was
libname old .... [this was the new V8 library]
Proc copy in=old out=work.
The first few members of the library copied successfully but then I
encountered the following message:
Note: Copying old.regstry to work.regstry (Memtype=itemstor).
error: item store is already open for write access.
Since Proc Copy appears to be among the procedures such as Proc Delete
which are being rolled into Proc Datasets, I tried using the appropriate
Proc Datasets code. Again, I was tripped up by this regstry file. The
solution (thanks to SAS Tech Support) appears to be add memtype= to either
the Proc Copy statement or a Proc Datasets statement in order to select
only those memtypes that you want to copy such as data and cat.
Significance: If you have existing Proc Copy or Proc Datasets code that
dump the entire contents of a V8 lib to a new V8 lib, you will need to
*not* copy the regstry file or you job will bomb.
I also note that Proc Copy still appears in the SAS Online Documents under
the SAS Procedures Guide section but not in the Master Index section that
lists procedure names.