У меня есть приложение SAS, которое я тестирую с помощью недавно выпущенного SAS 9.2. У меня есть вызов функции metadat_newobj для создания нового объекта библиотеки в хранилище метаданных SAS:
rc = metadata_newobj( "SASLibrary", URI, Name );
В 9.1.3, когда функция успешно выполнена (rc = 0), переменная URI заполняется URI вновь созданного объекта библиотеки.
В SAS 9.2, хотя возвращаемое значение равно 0 (успешно) и объект библиотеки создается (я проверял вручную с помощью консоли управления), переменная URI остается пустой, поэтому любые последующие операции по установке атрибутов и т. Д. Не выполняются. *
В документации для обеих версий в качестве выходного параметра этой функции указан URI.
Кто-нибудь знает об этом?
РЕДАКТИРОВАТЬ: Код, который я использовал, выглядит следующим образом:
put libraryName=;
rc = metadata_newobj("SASLibrary", libraryUri, libraryName);
if rc ne 0 then do;
/* Error handler */
return;
end;
put libraryUri=;
и вывод:
libraryName=HRLIB10
libraryUri=
Я пытаюсь обойти это, используя PROC METADATA
вместо этого, который, кажется, работает. : \
РЕДАКТИРОВАТЬ # 2: Я только что понял, что я не упомянул, что это в коде SCL.