Я использую SAS 9.4
Я написал макрос для чтения всех .dbf файлов из заданной библиотеки ( производное библиотека, которую я указал), но она последовательно усекает имена моих столбцов до 10 символов.
Существует ли простой способ увеличить ограничение на количество символов в имени столбца?
В идеале я хотел бы, чтобы имена столбцов были длиной до 30 символов.
Надеюсь, здесь достаточно информации, дайте мне знать, если вам понадобится больше от меня по этому вопросу.Довольно новый для SAS .
макрос:
%macro readindbf;
filename DIRLIST pipe "dir &rawdata.\*.dbf /b ";
data dirlist;
infile dirlist lrecl=200 truncover;
input file_name $100.;
run;
data _null_;
set dirlist end=end;
count+1;
call symputx('readdbf'||put(count, 4.-l), cats("&rawdata.\", file_name));
call symputx('dsetdbf'||put(count, 4.-l), scan(file_name, 1, '.'));
if end then call symputx('max', count);
run;
%do i=1 %to &max;
proc import datafile="&&readdbf&i"
out=derived.&&dsetdbf&i
dbms=dbf
replace;
run;
%end;
%mend readindbf;
edit:
У меня естьпопытался установить: option validvarname = ANY в моем файле autoexec, который согласно здесь должен разрешать имена длиной до 32 байтов, но он все еще усекает мои имена.