1つまたは複数の変数に出力形式、入力形式、ラベル、長さを設定します。
該当要素: | DATAステップ |
カテゴリ: | 情報 |
種類: | 宣言 |
参照項目: | ATTRIBステートメントXisError: No pubcode in link data found for hostwin、XisError: No pubcode in link data found for hostunx、およびXisError: No pubcode in link data found for hosto390 |
属性を設定する変数を指定します。
ヒント | SASで使用可能な任意の形式で変数をリストします。 |
variable-listに割り当てる1つまたは複数の属性を指定します。ATTRIBステートメントでは、次の属性を1つ以上指定します。
variable-listの変数に出力形式を割り当てます。
ヒント | この出力形式は、標準のSAS出力形式でもFORMATプロシジャで定義した出力形式でもかまいません。 |
variable-listの変数に入力形式を割り当てます。
ヒント | この入力形式は、標準のSAS入力形式でもFORMATプロシジャで定義した入力形式でもかまいません。 |
variable-listの変数にラベルを割り当てます。
variable-listの変数に長さを指定します。
範囲 | 文字変数の場合は、すべての動作環境で1バイトから32,767バイトまで指定できます。 |
制限事項 | DATASETSプロシジャからLENGTH=を使用して変数の長さを変更することはできません。 |
要件 | 文字変数の長さの前には、ドル記号($)をつけます。 |
動作環境 | 数値変数の場合、LENGTH=を使用して指定できる長さの最小値は、動作環境によって2バイトの場合と3バイトの場合があります。 |
ヒント | 既存のデータセットを入力値として使用する場合、出力データセットでの変数の長さを変更するには、SETステートメントの前にATTRIBステートメントを使用します。 |
文字変数をトランスコードするかどうかを指定します。トランスコードを実行しないようにするには、TRANSCODE=NOと指定します。
デフォルト | YES |
制限事項 | SAS Workspace Serverクライアントによっては、TRANSCODE=NOの属性がサポートされていない場合があります。SAS 9.2では、この属性がサポートされていない場合、TRANSCODE=NOと指定した変数の値はアスタリスク(*)で置き換えられます(マスクされます)。SAS 9.2より前のリリースでは、TRANSCODE=NOと指定した変数もトランスコードされていました。 |
旧リリースのSASでは、TRANSCODE=NO属性を指定した変数が含まれるSAS 9.1データセットにアクセスすることはできません。 | |
V6TAPE Engineでは、トランスコードの抑制はサポートされていません。 | |
操作 | XisError: No pubcode in link data found for nlsrefおよびXisError: No pubcode in link data found for nlsrefを使用すると、文字変数がトランスコードされるかどうかを示す値を返すことができます。 |
データセット内にTRANSCODE=属性がNOに設定されている文字変数がある場合、CONTENTSプロシジャを実行すると、データセット内の各変数のTRANSCODE=の値を含むトランスコード列を出力します。データセット内のすべての変数でTRANSCODE=がデフォルト値(YES)に設定されている場合、トランスコード列は出力されません。 | |
参照項目 | XisError: No pubcode in link data found for nlsref |
attrib cost length=4;
attrib saleday informat=mmddyy. format=worddate.;
attrib x y length=$4 label='TEST VARIABLE';
attrib x length=$4 label='TEST VARIABLE' y length=$2 label='RESPONSE';
attrib month1-month12 label='MONTHLY SALES';
data b; length z $4; z = 'ice'; attrib z transcode = no; data c; length z $4; z = 'snow'; attrib z transcode = yes; data a; set b; set c; /* Check transcode setting for variable Z */ rc1 = vtranscode(z); put rc1=; run;
data b; length z $4; z = 'ice'; attrib z transcode = no; data c; length z $4; z = 'snow'; attrib z transcode = yes; data a; merge c b; /* Check transcode setting for variable Z */ rc1 = vtranscode(z); put rc1=; run;