2009-04-29 10 views
6

¿Cómo puedo averiguar la opción encoding de SAS global programáticamente? Puedo ejecutar proc options, y me dará la respuesta, pero tengo que hacerlo desde el código.¿Cómo obtengo la opción de codificación SAS mediante programación?

Estoy esperando una respuesta en las líneas de "mira el macro símbolo & sysencoding", pero esto podría ser demasiado para esperar. Preferiría evitar cosas frágiles como escribir en un archivo externo y volver a analizar.

Respuesta

7

Puede utilizar la función GetOption de la base de SAS:

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

En mi sistema esto da la salida del registro

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

val=LATIN1 

En SCL (SAS componente del lenguaje) se puede utilizar el OPTGETC y OPTGETN funciones. Consulte el manual de su versión específica del Sistema SAS para obtener más detalles.

+0

Genial! Exactamente lo que estaba buscando. Gracias. –

3

En SAS 9.2 &sysencoding le dará lo mismo que getoption('encoding') aunque la carcasa es diferente (se describe brevemente here).

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

val=WLATIN1 
Cuestiones relacionadas