JobStep Class

The JobStep class represents a Microsoft SQL Server job step.

Namespace:  Microsoft.SqlServer.Management.Smo.Agent
Assembly:  Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)

Syntax

'Declaration
<SfcElementTypeAttribute("Step")> _
Public NotInheritable Class JobStep _
    Inherits AgentObjectBase _
    Implements IAlterable, ICreatable, IDroppable, IRenamable,  _
    IScriptable
'Usage
Dim instance As JobStep
[SfcElementTypeAttribute("Step")]
public sealed class JobStep : AgentObjectBase, 
    IAlterable, ICreatable, IDroppable, IRenamable, IScriptable
[SfcElementTypeAttribute(L"Step")]
public ref class JobStep sealed : public AgentObjectBase, 
    IAlterable, ICreatable, IDroppable, IRenamable, IScriptable
[<SealedAttribute>]
[<SfcElementTypeAttribute("Step")>]
type JobStep =  
    class
        inherit AgentObjectBase
        interface IAlterable
        interface ICreatable
        interface IDroppable
        interface IRenamable
        interface IScriptable
    end
public final class JobStep extends AgentObjectBase implements IAlterable, ICreatable, IDroppable, IRenamable, IScriptable

Remarks

SQL Server Agent jobs contain one or more execution units called steps. Each job step contains a textual command, type of execution that specifies command interpretation, and logic that determines the behavior of the job if the step succeeds or fails. For example, a job step can contain:

  • The command text. For example:

    DBCC CHECKDB ('Northwind') WITH NO_INFOMSGS
    
  • A job step execution type: Transact-SQL for example.

  • An indication that the job should stop if the step fails.

With the JobStep object, you can do the following:

  • Create a SQL Server Agent job step.

  • Remove a job step from a SQL Server Agent job.

  • Manage existing job steps by changing, for example, the command text or the actions taken on success or failure of the step.

  • Obtain details about the last attempted execution of the step.

To get JobStep object properties, users must be a member of SQLAgentUserRole database role on the MSDB database or be a member of the sysadmin fixed server role.

To set JobStep object properties, users must be a member of SQLAgentUserRole database role on the MSDB database, be the owner of the owner of the job step, or be a member of the sysadmin fixed server role.

To create a job step, users must be a member of SQLAgentUserRole database role on the MSDB database or be a member of the sysadmin fixed server role. The user must also have permission on any proxy accounts used by the job step.

To drop a job step, users must be a member of SQLAgentUserRole database role on the MSDB database, be the owner of the job step, or be a member of the sysadmin fixed server role.

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are safe for multithreaded operations. Any instance members are not guaranteed to be thread safe. 

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.