JobStep Class
The JobStep class represents a Microsoft SQL Server job step.
Inheritance Hierarchy
System.Object
Microsoft.SqlServer.Management.Smo.SmoObjectBase
Microsoft.SqlServer.Management.Smo.SqlSmoObject
Microsoft.SqlServer.Management.Smo.NamedSmoObject
Microsoft.SqlServer.Management.Smo.Agent.AgentObjectBase
Microsoft.SqlServer.Management.Smo.Agent.JobStep
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
The JobStep type exposes the following members.
Constructors
Name | Description | |
---|---|---|
JobStep() | Initializes a new instance of the JobStep class. | |
JobStep(Job, String) | Initializes a new instance of the JobStep class for the specified job and with the specified name. |
Top
Properties
Name | Description | |
---|---|---|
Command | Gets or sets the command execution string for the job step. | |
CommandExecutionSuccessCode | Gets or sets the process exit code from a command shell process executed as a job step. | |
DatabaseName | Gets or sets the name of the database to which the job step command execution is confined. | |
DatabaseUserName | Gets or sets the database user account that the job step assumes when executing the command string. | |
ID | Gets or sets the ID value that uniquely identifies the job step. | |
JobStepFlags | The JobStepFlags property is reserved for future use. | |
LastRunDate | Gets the date and time when the job step was last executed. | |
LastRunDuration | Gets the time that the referenced job step took to run when it was last executed. | |
LastRunOutcome | Gets the outcome of the job step when it was last executed. | |
LastRunRetries | Gets the number of retries that were attempted when the job step was last executed. | |
Name | Gets or sets the name of the object. (Inherited from NamedSmoObject.) | |
OnFailAction | Gets or sets the action to take when the job step finishes execution with failure. | |
OnFailStep | Gets or sets the job step that is executed after the referenced job step finishes execution with a completion status of failure. | |
OnSuccessAction | Gets or sets the action to take when the job step finishes execution with success. | |
OnSuccessStep | Gets or sets the job step that is executed after the referenced job step finishes execution with a completion status of success. | |
OSRunPriority | Gets or sets the execution thread scheduling for job steps executing operating system tasks. | |
OutputFileName | Gets or sets the name and path of the operating system file that records job step result message text. | |
Parent | Gets or sets the Job object that is the parent of the JobStep object. | |
Properties | Gets a collection of Property objects that represent the object properties. (Inherited from SqlSmoObject.) | |
ProxyName | Gets or sets the name of the Microsoft SQL Server Agent proxy account that is required by the job step. | |
RetryAttempts | Gets or sets the maximum number of times a job step is retried before it is returned with a completion status of failure. | |
RetryInterval | Gets or sets the number of minutes that Microsoft SQL Server Agent waits before trying to execute a job step that has previously failed. | |
Server | Gets or sets the name of the server on which the job step runs. | |
State | Gets the state of the referenced object. (Inherited from SmoObjectBase.) | |
SubSystem | Gets or sets the Microsoft SQL Server Agent execution subsystem used to interpret job step command text. | |
Urn | Gets the Uniform Resource Name (URN) address value that uniquely identifies the object. (Inherited from SqlSmoObject.) | |
UserData | Gets or sets user-defined data associated with the referenced object. (Inherited from SmoObjectBase.) |
Top
Methods
Name | Description | |
---|---|---|
Alter | Updates any JobStep object property changes on instance of Microsoft SQL Server. | |
Create | Creates a job step on the instance of Microsoft SQL Server as defined by the JobStep object. | |
DeleteLogs(DateTime) | Deletes job step log files that are older than the specified date. | |
DeleteLogs(Int32) | Deletes job step log files that have log numbers lower than the specified value. | |
Discover | Discovers a list of type Object. (Inherited from SqlSmoObject.) | |
Drop | Removes the referenced job step. | |
EnumLogs | Returns an enumerated list of the job step log files. | |
Equals | (Inherited from Object.) | |
FormatSqlVariant | Formats an object as SqlVariant type. (Inherited from SqlSmoObject.) | |
GetContextDB | Gets the context database that is associated with this object. (Inherited from SqlSmoObject.) | |
GetDBName | Gets the database name that is associated with the object. (Inherited from AgentObjectBase.) | |
GetHashCode | (Inherited from Object.) | |
GetPropValue | Gets a property value of the SqlSmoObject object. (Inherited from SqlSmoObject.) | |
GetPropValueOptional | Gets a property value of the SqlSmoObject object. (Inherited from SqlSmoObject.) | |
GetPropValueOptionalAllowNull | Gets a property value of the SqlSmoObject object. (Inherited from SqlSmoObject.) | |
GetServerObject | Gets the server of the SqlSmoObject object. (Inherited from SqlSmoObject.) | |
GetType | (Inherited from Object.) | |
Initialize() | Initializes the object and forces the properties be loaded. (Inherited from SqlSmoObject.) | |
Initialize(Boolean) | Initializes the object and forces the properties be loaded. (Inherited from SqlSmoObject.) | |
IsObjectInitialized | Verifies whether the object has been initialized. (Inherited from SqlSmoObject.) | |
IsObjectInSpace | Verifies whether the object is isolated or connected to the instance of SQL Server. (Inherited from SqlSmoObject.) | |
Refresh | Refreshes the object and retrieves properties when the object is next accessed. (Inherited from SqlSmoObject.) | |
Rename | Renames the job step. | |
Script() | Generates a Transact-SQL script that can be used to re-create the Microsoft SQL Server Agent job step. | |
Script(ScriptingOptions) | Generates a Transact-SQL script that can be used to re-create the Microsoft SQL Server Agent job step as specified by the scripting options. | |
SetParentImpl | Sets the parent of the SqlSmoObject to the newParent parameter. (Inherited from SqlSmoObject.) | |
ToString | Returns a String that represents the referenced object. (Inherited from SqlSmoObject.) | |
Validate | Validates the state of an object. (Inherited from SmoObjectBase.) |
Top
Events
Name | Description | |
---|---|---|
PropertyChanged | Represents the event that occurs when a property is changed. (Inherited from SqlSmoObject.) | |
PropertyMetadataChanged | Represents the event that occurs when property metadata changes. (Inherited from SqlSmoObject.) |
Top
Explicit Interface Implementations
Name | Description | |
---|---|---|
IAlienObject.Discover | Discovers any dependencies. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SqlSmoObject.) | |
IAlienObject.GetDomainRoot | Returns the root of the domain. (Inherited from SqlSmoObject.) | |
IAlienObject.GetParent | Gets the parent of this object. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SqlSmoObject.) | |
IAlienObject.GetPropertyType | Gets the type of the specified property. (Inherited from SqlSmoObject.) | |
IAlienObject.GetPropertyValue | Gets the value of the specified property. (Inherited from SqlSmoObject.) | |
IAlienObject.GetUrn | Gets the Unified Resource Name (URN) of the object. Do not reference this member directly in your code. It supports the SQL Server infrastructure. (Inherited from SqlSmoObject.) | |
IAlienObject.Resolve | Gets the instance that contains the information about the object from the Unified Resource Name (URN) of the object. (Inherited from SqlSmoObject.) | |
IAlienObject.SetObjectState | Sets the object state to the specified SfcObjectState value. (Inherited from SqlSmoObject.) | |
IAlienObject.SetPropertyValue | Sets the property value. (Inherited from SqlSmoObject.) | |
ISfcPropertyProvider.GetPropertySet | Gets the interface reference to the set of properties of this object. (Inherited from SqlSmoObject.) |
Top
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.
Examples
Scheduling Automatic Administrative Tasks in SQL Server Agent
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.
See Also
Reference
Microsoft.SqlServer.Management.Smo.Agent Namespace
Other Resources
Scheduling Automatic Administrative Tasks in SQL Server Agent