С описанной конфигурацией у меня есть задание агента SQL, которое включает шаг Powershell. Этот шаг вызывает ошибку, когда доходит до строки
$ app = start-process -passthru $ program $ program_args
говоря -
«PowerShell возвращает следующую информацию об ошибке:« Термин «start-process» не распознается как имя командлета, функции, файла сценария или работающей программы. Проверьте правильность написания имени, или если путь был включен, убедитесь, что путь правильный, и повторите попытку. '. Код выхода процесса -1. Шаг не удался. "
Кажется, что предыдущие строки работают нормально. Я подозреваю, что хост Powershell, на котором запущен сценарий, поврежден в отношении этой функции, но я нигде не могу это проверить.
Этот правильный процесс запуска недоступен в мини-оболочке sqlps. Вы можете определить, запустив get-команду:
SQLSERVER:\>get-command start-*
Вы можете попробовать запустить этап задания cmdexec, вызывающий powershell.exe.