Chapter Contents |
Previous |
Next |
VAXTOAXP |
Language element: | procedure |
OpenVMS Alpha specifics: | All aspects are specific to the OpenVMS Alpha operating environment |
Syntax | |
Details | |
Example |
Syntax |
PROC VAXTOAXP
|
Details |
The only statement that is associated with the VAXTOAXP procedure is PROC VAXTOAXP.
In the OpenVMS VAX operating environment, the SAS System stores numeric variables as D-floating data types, which means that their length varies from 2 to 8 bytes. However, in the OpenVMS Alpha operating environment, numeric variables are stored as IEEE T-floating data types, which means that their length varies from 3 to 8 bytes. If you attempt to move data with 2-byte numeric variables from an OpenVMS VAX environment to an OpenVMS Alpha environment, you will get the following error message:
ERROR: IEEE
numbers with a length less than 3 are not supported.
If a SAS data set that was created in the OpenVMS VAX environment contains only numeric variables with lengths of 3 bytes or greater, then the SAS System in the OpenVMS Alpha environment can access the data set without the need for any conversion process. However, if your OpenVMS VAX data set does contain numeric variables with 2-byte lengths, your OpenVMS Alpha environment will be unable to access the data set until you have converted it.
The VAXTOAXP procedure increases the length of all numeric variables by 1 byte up to 8 bytes. Thus, a 2-byte numeric variable becomes 3 bytes, a 3-byte numeric variable becomes 4 bytes, and so on.
If you run the VAXTOAXP procedure on a data set that does not contain numeric variables with lengths less than 8 bytes, the conversion proceeds after the following warning message is issued:
WARNING:
No numeric variables had a length less than 8, so it was unnecessary to invoke
PROC VAXTOAXP.
Example |
Suppose you have a permanent SAS data set named CHARLIE that you created in an OpenVMS VAX environment. You know that this data set contains numeric variables with 2-byte lengths. To read that data set into the SAS System running in an OpenVMS Alpha environment, use the following statements:
libname vlib v6 'user$disk:[dir]'; libname alib v8 '[nwdir]'; proc vaxtoaxp data=vlib.charlie out=alib.charlie; run;
You can verify that all 2-byte numeric variables have been converted to 3 bytes by running the CONTENTS procedure on the ALIB.CHARLIE data set. All numeric variables that have lengths less than 8 bytes will have their lengths increased by 1 byte.
Note: If you attempt to use the VAXTOAXP procedure while running in an OpenVMS VAX operating environment, you will receive the following error message:
ERROR: Procedure
VAXTOAXP is not supported on the VAX.
Chapter Contents |
Previous |
Next |
Top of Page |
Copyright 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.