Как мне программно получить опцию кодирования SAS?

StackOverflow https://stackoverflow.com/questions/801607

  •  03-07-2019
  •  | 
  •  

Вопрос

Как узнать глобальный номер SAS encoding вариант программно?Я могу бегать proc options, и он даст мне ответ, но мне нужно сделать это из кода.

Я надеюсь получить ответ типа «посмотрите на макросимвол и системное кодирование», но, возможно, на это слишком много надежд.Я бы предпочел избегать хрупких вещей, таких как запись во внешний файл и повторный анализ.

Это было полезно?

Решение

Вы можете использовать функцию GETOPTION в Base SAS:

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

В моей системе это дает вывод журнала

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

val=LATIN1

В SCL (язык компонентов SAS) вы можете использовать функции OPTGETC и OPTGETN.Дополнительную информацию см. в руководстве для вашей конкретной версии системы SAS.

Другие советы

В САС 9.2 &sysencoding даст вам то же самое, что и getoption('encoding') хотя случай другой (описан кратко здесь).

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

val=WLATIN1
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top