2009-04-29 10 views
6

Jak programowo wykryć opcję SAS globalnej encoding? Mogę uruchomić proc options, a to da mi odpowiedź, ale muszę to zrobić z kodu.Jak programowo uzyskać opcję kodowania SAS?

Mam nadzieję na odpowiedź na linii "spójrz na symbol makro & sysencoding", ale może to być zbyt wiele, aby mieć nadzieję. Wolałbym unikać delikatnych rzeczy, takich jak zapisywanie do zewnętrznego pliku i ponowne przetwarzanie.

Odpowiedz

7

Można użyć funkcji GETOPTION w bazie SAS:

data _null_; 
    val=GETOPTION('encoding'); 
    put val=; 
run; 

W moim systemie to daje wyjściowych dziennika

5 data _null_; 
6  val=GETOPTION('encoding'); 
7  put val=; 
8 run; 

val=LATIN1 

W SCL (SAS Komponent języka) można użyć OPTGETC i OPTGETN Funkcje. Więcej informacji można znaleźć w instrukcji dla konkretnej wersji systemu SAS.

+0

Świetnie! Dokładnie to, czego szukałem. Dzięki. –

3

W SAS 9.2 &sysencoding poda ci to samo, co getoption('encoding'), chociaż sprawa jest inna (krótko opisana: here).

157 %put &sysencoding; 
wlatin1 
158 
159 data _null_; 
160 val=GETOPTION('encoding'); 
161 put val=; 
162 run; 

val=WLATIN1