|
Shukla,
The order of the file has not changed but the values of your key variable -
PERMID have. In ASCII, numerics come before alpha characters, the revers of
EBCDIC. You are going to have to resort.
HTH,
Dennis Diskin
From: Shukla Kshirsagar <shuklak@HOTMAIL.COM>@LISTSERV.UGA.EDU> on
07/17/2002 02:47 PM
Please respond to Shukla Kshirsagar <shuklak@HOTMAIL.COM>
Sent by: "SAS(r) Discussion" <SAS-L@LISTSERV.UGA.EDU>
To: SAS-L@LISTSERV.UGA.EDU
cc:
Subject: FTP from Mainframe to PC SAS-Ebcdic & Ascii-What am I missing?
Hello everyone,
Using the code below, I created a transport file, which I ftp to the PC
(using binary mode). The transport file was sorted by Permid on the
mainframe. However the transport file does not maintain the sort order in
ascii as I would expect it.
What am I missing? Thanks for your help.
Shukla
WORK DD DSN=&&WORK,UNIT=SYSDA,
SPACE=(CYL,0150,,MXIG),STORCLAS=SCSASMVS,
DCB=(RECFM=FS,LRECL=5103,BLKSIZE=30618,BUFNO=20)
*
SASTEMP DD DSN=&&TEMP1,
DISP=(NEW,DELETE,DELETE),UNIT=(SYSDA,5),
SPACE=(CYL,(0500,0100),,MXIG),STORCLAS=SCSASMVS,
DCB=(RECFM=FS,LRECL=5103,BLKSIZE=30618,BUFNO=20)
DD01 DD DSN=PRM.CLIENT.K222.TxszSETC,DISP=SHR,
UNIT=(,,DEFER)
OUT1 DD DSN=TARM.U0936.TRYSK,
DISP=(NEW,CATLG,DELETE),
UNIT=TP349E,LABEL=RETPD=180,VOL=(,,,35),
DCB=(RECFM=FB,LRECL=5103,BLKSIZE=30618,BUFNO=4)
OUT2 DD DSN=TARM.U0936.TRYSKMF,
DISP=(NEW,CATLG,DELETE),
UNIT=SYSDA,RECFM=FB,LRECL=80,BLKSIZE=32720,
SPACE=(CYL,(500,150),RLSE)
// SPACE=(CYL,(500,150),RLSE)
//SYSIN DD *
OPTIONS NOCENTER PAGENO=1;
FOOTNOTE ' JOB: U0936.ISPF.CNTL(CANTAB)';
FOOTNOTE2 'SOURCE: TARM.U0936.SORT.FTP';
DATA SASTEMP.TEMP1;
INFILE DD01;
INPUT
@390 EDITSEQ $14.
@404 PERMID $13.
@418 EMP98 3.
@421 EMP95 3.
@424TRAU 3.
@427 TRAM 3.;
@427 TRAM 3.;
UNI1=RANUNI(2488);
IF UNI1 LE 0.01 ;
RUN;
PROC SORT DATA=SASTEMP.TEMP1;
BY PERMID;
RUN;
DATA _NULL_;
SET SASTEMP.TEMP1;
FILE OUT1;
PUT
@390 EDITSEQ $14.
@404 PERMID $13.
@418 EMP98 3.
@421 EMP95 3.
@424 TRAU 3.
@427 TRAM 3.;
;
RUN;
PROC CPORT DATA=SASTEMP.TEMP1 FILE=OUT2;
RUN;
ON the PC, I used the following code:
libname save 'd:\';
filename trfile 'c:\testsk.xpt';
proc cimport data=ntest infile=trfile ;
run;
|