2010-09-09 1 views
1

Я написал некоторый код SAS, который вызывает R через команду x (я использую SAS 9.1.3, поэтому для R) не существует собственного интерфейса SAS.Команда x неверна при вызове в SASWorkspaceManager.WorkspaceManager?

OPTIONS XWAIT XSYNC; 
X """&r_path."" --no-save --quiet < ""&out_code_folder.\code.r"" > ""&out_code_folder.\abba.log"""; 

Этот код работает правильно, когда я запускаю его в IDE SAS, но когда я пытаюсь запустить тот же код в VBA с использованием (здесь strSAScode содержит упомянутый выше код SAS).

Dim obWM As SASWorkspaceManager.WorkspaceManager 
    Dim temp_dispaly_alert As Boolean 
    Dim sm As SAS_Management  
    Debug.Print strSASCode  
    Set sm = New SAS_Management 

    'Set obServerDef = New SASWorkspaceManagerServerDef 
    Set obWM = New SASWorkspaceManager.WorkspaceManager 
    Set obSAS = obWM.Workspaces.CreateWorkspaceByServer("MyServerName", VisibilityProcess, Nothing, "", "", "") 
    Set sm.obLS = obSAS.LanguageService 
    temp_dispaly_alert = Application.DisplayAlerts 
    Application.DisplayAlerts = False 
    sm.obLS.Submit strSASCode 

Теперь каждый другой код работает, за исключением команды x. Пожалуйста помоги.

ответ

3

По умолчанию использование системных и X-команд отключено при доступе через методы, которые используют технологии интеграции из-за потенциальных рисков безопасности.

Вы выполнили следующие шаги для 9.1.3 в Windows, описанные в примечании об использовании this? В нем описывается, как включить эту функцию на вашем сервере SAS; вам может потребоваться адаптировать то, что описано для рабочего пространства , а не сохраненный процесс, сервер.

 Смежные вопросы

  • Нет связанных вопросов^_^