Date: Thu, 25 Jun 1998 17:32:13 -0400
Reply-To: "Keating, Dan (Miami)" <DKeating@HERALD.COM>
Sender: "SAS(r) Discussion" <SAS-L@UGA.CC.UGA.EDU>
From: "Keating, Dan (Miami)" <DKeating@HERALD.COM>
Subject: Make Win NT *think* in EBCDIC
Content-Type: text/plain
I can make SAS (6.12 TS045) on Win NT sort in EBCDIC using
sortseq, but I need to make it *think* in EBCDIC sort order. Is there a
way to do that?
I need to work with a dataset in EBCDIC sort order. SAS for
Windows will sort in EBCDIC, but when it works with a dataset sorted
that way, it chokes and says the records are not sorted properly. (For
further details and sample data, see below.) Setting the global default
sortseq to EBCDIC doesn't help.
Dan
Dan Keating
Research/Technology Editor, Miami Herald
dkeating@herald.com, (305)376-3476
Specifically:
I have a hierarchical dataset that has multiple records for each
piece of information, grouped by record number. A record type field
identifies what's on that line. In this case, the 'I' records have most
of the info, the 'S' records have further text descriptions and the 'N'
records have further notes.
I'd like to use by-processing to make one record for each group,
rolling the multiple 'S' records into one long text description and the
'N' fields into a long text note.
The dataset is sorted in order, but unfortunately for me it came
from an IBM mainframe in EBCDIC sort order, so the records number A001,
A002 come before the 98-001 98-002. When I try to do by-processing on a
Windows (ASCII sort order) computer, it goes from record number Z0955 to
record number 97-0001 and says the records are out of order. I am afraid
to resort because I think it will scramble the message text by putting
the records in the wrong order.
The only other answer I can think of it to break it into two
separate datasets by the first character of the record number (letters
in one set and numbers in the other) and process them separately. But
I've had other occasions when I wanted to do by-processing with my
letter-starting-records before my number-starting-records, so I'm
curious if there's a way to do this.
Here's a sample with the relevant fields of the data I've got:
************************************************************************
**********
Record Rec
Number Type Text
------ ---- ---------------------------------------------
A00096 I ANNUAL LICENSE RENEWAL FEE FOR CAPTURE/
A00096 S VMS LEASE RENEWAL S/N 4319 (SECOND COPY)
A00096 S
A00096 N
A00096 S CONTACT LAWRENCE J. SMITH (305) 596-8314
A00097 S PER A.O. 3-2 SECT. IV-F
A00097 S
A00097 I AERO MED SOFTWARE PACKAGE, FLIGHT
A00097 S MANAGEMENT MODULE AND CONTINUING
A00097 S EDUCATION MODULE
A00097 S
A00097 N NOTE: EMS GRANT PROJECT #727018
A00097 N MATCHING GRANT #M4031,
A00097 N SEA-AIR MEDICAL WORK STATION/
A00097 N NOTEBOOK COMPUTERS
A00097 N
A00097 N CONTACT: CALBERT GREEN, CPPB
A00097 N (305) 470-1602
A00098 S PER QUOTATION NO. 4-272382
A00098 S
A00098 I EXABYTE EXB-210T LIBRARY; 8MM CHASSIS,
A00098 S 1 8505XL DRIVE, TOWER ENCLOSURE, 10 160M
A00098 S EXATAPES, 2 CLEANING KITS, TERMINATOR,
A00098 S INSTALLATION KIT (EXABYTE PART NUMBER
A00098 S 935000-255)
A00098 S
A00098 S FOR: INFORMATION SYSTEMS SUPPORT BUREAU
A00098 N 9609052
A00098 S
A00098 S LOG #1325
A00098 S
A00098 N CONTACT: ED PEABODY (305) 471-1857
********************************************************************
|