Hi, Chris,

I'm using SAS EG 7.15 HF2 with a UNIX (AIX) back end. I can't get the ZIP method to find out the contents of a zip archive. The DOPEN consistently returns a zero. I've tried multiple zip files. Is the ZIP method only for those whose SAS executes on a Windows machine?

Jim

Code used:
*------------------------------------------------------------------------------------------------*;
** File and library allocations. **;
FILENAME FileIn ZIP "&Zip_Dir.";
&NoMacs %Error_Check (MsgLvl=&MsgLvl, ErrLvl=&ErrLvl);

LIBNAME SASout "&SAS_Lib";
&NoMacs %Error_Check (MsgLvl=&MsgLvl, ErrLvl=&ErrLvl);

*------------------------------------------------------------------------------------------------*;
** Program logic. **;

DATA SASout.&SAS_Out;
DROP _:;

LENGTH mem_name $200.;
LENGTH _File_ID 8.;
LENGTH _mem_count 8.;
LENGTH _i 8.;

_File_ID = DOPEN("FileIn");

IF MISSING(_File_ID) OR
_File_ID = 0 THEN
DO;
CALL SYMPUT('SYSCC','4');
PUTLOG "WARNING- ";
PUTLOG "WARNING- ******************************************************************** ";
PUTLOG "WARNING: Unable to open file. " _N_= _File_ID=;
PUTLOG "WARNING- ******************************************************************** ";
PUTLOG "WARNING- ";
STOP;
END;

_mem_count = DNUM(_File_ID);

IF NOT MISSING(_mem_count) THEN
DO _i = 1 TO _mem_count;
mem_name = DREAD(_File_ID, _i);
OUTPUT;
END;
ELSE
DO;
CALL SYMPUT('SYSCC','4');
PUTLOG "WARNING- ";
PUTLOG "WARNING- ******************************************************************** ";
PUTLOG "WARNING: Unable to process members. " _N_= _File_ID= _mem_count=;
PUTLOG "WARNING- ******************************************************************** ";
PUTLOG "WARNING- ";
STOP;
END;

_RC = DCLOSE(_File_ID);
RUN;
&NoMacs %Error_Check (MsgLvl=&MsgLvl, ErrLvl=&ErrLvl);

*------------------------------------------------------------------------------------------------*;