We're doing some ETL that involves the capture of data from our mainframe (mf) platform ( IBM MVS/OS ).
From SAS EG, (v7.1) we're able to read mf flat files on disk, vsam files and mf SAS libraries without
any problem. This tells me that we have the SAS modules in place to connect and communicate
with the mf. However, we can't seem to read in a file on tape. The error messages implies that the
tap is not mounted:
ERROR: SVC99 error rc=4, reason=0218 : IKJ56221I DATA SET PACUCOM.AUTO.PREM2005.JAN0207 NOT ALLOCATED, VOLUME NOT
AVAILABLE+IKJ56221I VOLUME NECESSARY TO SATISFY YOUR REQUEST NOT ON SYSTEM, AND CANNOT BE MOUNTED.
ERROR: Error in the FILENAME statement.
We continue get this message, even though a mainframe jobs has mounted this same tape. I'm wondering if the
syntax, in the "filename statement", is correct:
filename AUTOS 'PACUCOM.AUTO.PREM2005.JAN0207' DISP=SHR;
We appreciate any suggestions that you can offer.
Thank you very much,
Darry
Hi Salas,
I moved your question to the Enterprise Guide community in hopes experts there will help you out.
Thanks for your post!
Anna
Your syntax looks OK for disk files. My suspicion is that the FILENAME allocation is not waiting long enough for the tape to be mounted. Are these disk datasets being recalled from tape backup or are they tape only?
If they are tape only then you might need to use some of these options:
filename mytape 'prod.data' vol=myvol unit=tape label=(2,SL);
If they are originally disk files then recall them from tape first before using your filename.
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.