Команда x работает неправильно при вызове в SASWorkspaceManager.WorkspaceManager? - PullRequest
1 голос
/ 09 сентября 2010

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

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

Этот код работает правильно, когда язапустить его в SAS IDE, но когда я пытаюсь запустить тот же код в 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.Пожалуйста, помогите.

1 Ответ

3 голосов
/ 09 сентября 2010

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

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...