Archive
SQL Job creation failing (having VBScript step) after SQL Server 2016/2017 upgrade
Yesterday my friend pinged me and told that he is facing some issues while executing a SQL Job DDL script. They had upgraded their SQL Server version from 2008 to 2016, and while creating SQL Jobs they were facing below error:
Msg 14234, Level 16, State 1, Procedure sp_verify_subsystem, Line 28 [Batch Start Line 2]
The specified ‘@subsystem’ is invalid (valid values are returned by sp_enum_sqlagent_subsystems).
I checked the code and on inquiring for a moment I saw that one of the SQL Job step was configured for a VB Script, as shown below:
... EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'xyz VBScript', @step_id=3, @cmdexec_success_code=0, @on_success_action=4, @on_success_step_id=0, @on_fail_action=5, @on_fail_step_id=0, @retry_attempts=0, @retry_interval=0, @os_run_priority=0, @subsystem=N'ActiveScripting', ...
On quickly checking on net I came to know that this feature has been discontinued and should not be used.
** Important *\* This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work, and plan to modify applications that currently use this feature.
MS BoL link
This MS BoL link also mentions about the discontinued feature:
ActiveX subsytem is discontinued. Use command line or PowerShell scripts instead.