![]() | ![]() | ![]() | ![]() | ![]() | ![]() |
MXG makes extensive use of DATA step views and binary data in character fields with $HEXw. and user-written MXG hex formats. The format indicates that the information in the character variable is not character, but binary or hex data.
This data should not be modifed by the transport process when moving from one platform to another. TRANSCODE=NO is required to move character variables containing HEX values that are not to be translated during the transport process. Previously, SAS Views did not honor the TRANSCODE=NO parameter
To make this happen, permanently specify the variable attribute on the SAS data set of TRANSCODE=NO with an ATTRIB statement. Many procedures do not allow the ATTRIB for a varible to be specified on a temporary basis.
When this data set is the basis of a SAS DATA step view, the TRANSCODE attribute must be reflected in the view.
Run the sample code to see the effect of the problem.
| Product Family | Product | System | SAS Release | |
| Reported | Fixed* | |||
| SAS System | Base SAS | z/OS | 9.1 TS1M3 SP4 | 9.2 TS2M2 |
| Microsoft® Windows® for 64-Bit Itanium-based Systems | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| Microsoft Windows Server 2003 Datacenter 64-bit Edition | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| Microsoft Windows Server 2003 Enterprise 64-bit Edition | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| Microsoft Windows XP 64-bit Edition | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| Microsoft Windows 2000 Advanced Server | 9.1 TS1M3 SP4 | |||
| Microsoft Windows 2000 Datacenter Server | 9.1 TS1M3 SP4 | |||
| Microsoft Windows 2000 Server | 9.1 TS1M3 SP4 | |||
| Microsoft Windows 2000 Professional | 9.1 TS1M3 SP4 | |||
| Microsoft Windows NT Workstation | 9.1 TS1M3 SP4 | |||
| Microsoft Windows Server 2003 Datacenter Edition | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| Microsoft Windows Server 2003 Enterprise Edition | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| Microsoft Windows Server 2003 Standard Edition | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| Microsoft Windows XP Professional | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| Windows Vista | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| 64-bit Enabled AIX | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| 64-bit Enabled HP-UX | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| 64-bit Enabled Solaris | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| HP-UX IPF | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| Linux | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| Linux on Itanium | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| OpenVMS Alpha | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| Solaris for x64 | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
| Tru64 UNIX | 9.1 TS1M3 SP4 | 9.2 TS2M2 | ||
proc datasets mt=view kill; /* get rid of existing views in WORK library */
data original;
hexvar='80'X;
format hexvar $HEX2. ;
attrib hexvar TRANSCODE=NO;
charvar = '1';
cecser='123456'X;
format cecser $HEX6.;
attrib cecser TRANSCODE=NO;
startime=10;
/* create DATA step view */
data testview/view = testview;
set original;
proc printto print='c:\saslogs\t188972.txt';
run;
proc contents data = original;
title contents of original data set;
run;
proc contents data = testview;
title 'testview - created by DATA step';
proc sort data = testview out=sorted;
by cecser startime;
run;
proc contents data = sorted;
title 'sorted output from testview';
run;
proc sql noprint;
create table vrefs
as select name,libname,memname,transcode
from dictionary.columns
where libname='WORK';
quit;
proc print;
title 'dictionary.columns';
run;
proc printto print=print; run;
contents of original data set 5
16:57 Thursday, March 12, 2009
The CONTENTS Procedure
Data Set Name WORK.ORIGINAL Observations 1
Member Type DATA Variables 4
Engine V9 Indexes 0
Created Thursday, March 12, Observation Length 16
2009 04:57:41 PM
Last Modified Thursday, March 12, Deleted Observations 0
2009 04:57:41 PM
Protection Compressed NO
Data Set Type Sorted NO
Label
Data Representation WINDOWS_32
Encoding wlatin1 Western
(Windows)
Engine/Host Dependent Information
Data Set Page Size 4096
Number of Data Set Pages 1
First Data Page 1
Max Obs per Page 252
Obs in First Data Page 1
Number of Data Set Repairs 0
Filename C:\DOCUME~1\sasjrs\LOCALS~1\Temp\SAS
Temporary Files\_TD536\original.sas7bdat
Release Created 9.0201M0
Host Created XP_PRO
Alphabetic List of Variables and Attributes
# Variable Type Len Format Transcode
3 cecser Char 3 $HEX6. NO
2 charvar Char 1 YES
1 hexvar Char 1 $HEX2. NO
4 startime Num 8 YES
testview - created by DATA step 6
16:57 Thursday, March 12, 2009
The CONTENTS Procedure
Data Set Name WORK.TESTVIEW Observations .
Member Type VIEW Variables 4
Engine SASDSV Indexes 0
Created Thursday, March 12, Observation Length 13
2009 04:57:41 PM
Last Modified Thursday, March 12, Deleted Observations 0
2009 04:57:41 PM
Protection Compressed NO
Data Set Type Sorted NO
Label
Data Representation Default
Encoding Default
Engine/Host Dependent Information
DATA Step view type INPUT
Alphabetic List of Variables and Attributes
# Variable Type Len Format
3 cecser Char 3 $HEX6.
2 charvar Char 1
1 hexvar Char 1 $HEX2.
4 startime Num 8
sorted output from testview 7
16:57 Thursday, March 12, 2009
The CONTENTS Procedure
Data Set Name WORK.SORTED Observations 1
Member Type DATA Variables 4
Engine V9 Indexes 0
Created Thursday, March 12, Observation Length 16
2009 04:57:42 PM
Last Modified Thursday, March 12, Deleted Observations 0
2009 04:57:42 PM
Protection Compressed NO
Data Set Type Sorted YES
Label
Data Representation WINDOWS_32
Encoding wlatin1 Western
(Windows)
Engine/Host Dependent Information
Data Set Page Size 4096
Number of Data Set Pages 1
First Data Page 1
Max Obs per Page 252
Obs in First Data Page 1
Number of Data Set Repairs 0
Filename C:\DOCUME~1\sasjrs\LOCALS~1\Temp\SAS
Temporary Files\_TD536\sorted.sas7bdat
Release Created 9.0201M0
Host Created XP_PRO
Alphabetic List of Variables and Attributes
# Variable Type Len Format
3 cecser Char 3 $HEX6.
2 charvar Char 1
1 hexvar Char 1 $HEX2.
4 startime Num 8
Sort Information
Sortedby cecser startime
Validated YES
Character Set ANSI
dictionary.columns 8
16:57 Thursday, March 12, 2009
Obs name libname memname transcode
1 hexvar WORK ORIGINAL no
2 charvar WORK ORIGINAL yes
3 cecser WORK ORIGINAL no
4 startime WORK ORIGINAL yes
5 hexvar WORK SORTED yes
6 charvar WORK SORTED yes
7 cecser WORK SORTED yes
8 startime WORK SORTED yes
9 hexvar WORK TESTVIEW yes
10 charvar WORK TESTVIEW yes
11 cecser WORK TESTVIEW yes
12 startime WORK TESTVIEW yes
13 name WORK VREFS yes
14 libname WORK VREFS yes
15 memname WORK VREFS yes
16 transcode WORK VREFS yes
A fix for SAS 9.1.3 (9.1 TS1M3) for this issue is available at:
http://www.sas.com/techsup/download/hotfix/e9_sbcs_prod_list.html#035112A fix for SAS 9.1.3 (9.1 TS1M3) with Asian Language Support (DBCS) for this issue is available at:
http://www.sas.com/techsup/download/hotfix/e9_dbcs_prod_list.html#035112| Type: | Problem Note |
| Priority: | alert |
| Topic: | Data Management ==> Access ==> SAS I/O Data Management ==> Administration Data Management ==> Data Sources ==> SAS Data Sets/Tables SAS Reference ==> Formats ==> Character ==> $HEX SAS Reference ==> Procedures ==> CIMPORT SAS Reference ==> Procedures ==> COPY SAS Reference ==> Procedures ==> CPORT |
| Date Modified: | 2009-05-05 16:37:13 |
| Date Created: | 2009-03-12 11:42:58 |





