New-SCSMWorkflow
在 Service Manager 中创建新工作流。
语法
New-SCSMWorkflow
-Class <String>
[-DisplayName] <String>
[-Description <String>]
[-Enable <Boolean>]
[-Event <WorkflowEvent>]
[-ManagementPack <ManagementPack>]
[-Criteria <String>]
[-Template <ManagementPackObjectTemplate>]
[-EnableNotification <Boolean>]
[-Notification <Hashtable[]>]
[-PassThru]
[-SCSession <Connection[]>]
[-ComputerName <String[]>]
[-Credential <PSCredential>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
说明
New-SCSMWorkflow cmdlet 在 Service Manager 中创建工作流。
示例
示例 1:创建用于手动创建活动的工作流
PS C:\>$Template = Get-SCSMObjectTemplate -Name "DefaultManualActivityTemplate"
PS C:\> $Notification = @{ User = "Reviewers"; Template = Get-SCSMObjectTemplate -Name "AssignedToUserNotificationTemplate" },@{ User = "Affected User"; Template = Get-SCSMObjectTemplate -Name DefaultReviewActivityTemplate }
PS C:\> New-SCSMWorkflow -DisplayName "Manual activity workflow 07" -Class "ManualActivity" -Description "Contoso workflow 07." -Enable $True -Event Create -Notification $Notification -Template $Template
第一个命令使用 Get-SCSMObjectTemplate cmdlet 获取名为 DefaultManualActivityTemplate 的模板。 该命令将模板存储在$Template变量中。
第二个命令将通知数组创建为哈希表,并将其存储在$Notification变量中。
最后一个命令创建一个工作流,该工作流可在创建手动活动时使用。 由于脚本未指定任何条件,因此此工作流适用于任何手动活动的创建。
示例 2:为用户创建手动活动创建工作流
PS C:\>$CriteriaString = @'
>> <Criteria>
>> <Expression>
>> <SimpleExpression>
>> <ValueExpression>
>> <Property State="Post">
>> $Context/$Path[Relationship='System.WorkItem.Library!System.WorkItemCreatedByUser' TypeConstraint='System!System.Domain.User']/Property[Type='System!System.Domain.User']/UserName$
>> </Property>
>> </ValueExpression>
>> <Operator>Equal</Operator>
>> <ValueExpression>
>> <Value>Evan Narvaez</Value>
>> </ValueExpression>
>> </SimpleExpression>
>> </Expression>
>> </Criteria>
>> '@
PS C:\> $ManagementPack = Get-SCSMManagementPack -Name "Workflows"
PS C:\> $Template = Get-SCSMObjectTemplate -Name "DefaultManualActivityTemplate"
PS C:\> $Notification = @{ User = "Reviewers"; Template = Get-SCSMObjectTemplate -Name AssignedToUserNotificationTemplate },@{ User = "Affected User"; Template = Get-SCSMObjectTemplate -Name DefaultReviewActivityTemplate }
PS C:\> New-SCSMWorkflow -DisplayName "Manual activity workflow 09" -Class "ManualActivity" -Criteria $CriteriaString -Description "Contoso workflow 09." -Enable $False -Event Create -ManagementPack $ManagementPack -Template $Template
第一个命令创建为手动活动定义的条件字符串,以仅选择由用户 Evan Narvaez 创建的手动活动。 该命令将这些条件存储在$CriteriaString变量中。
第二个命令使用 Get-SCSMManagementPack cmdlet 获取名为 Workflows 的管理包,然后将其存储在$ManagementPack变量中。 后续命令使用此值指定保存工作流的位置。 这不能是密封的管理包。
第三个命令使用 Get-SCSMObjectTemplate cmdlet 获取名为 DefaultManualActivityTemplate 的模板。 该命令将模板存储在$Template变量中。
第四个命令将创建通知数组作为哈希表,并将其存储在$Notification变量中。
最后一个命令创建一个工作流,该工作流可在创建手动活动时使用。
参数
-Class
指定在工作流更改时启动工作流的类的名称。 有效值为:
- 配置
- 改变
- 事件
- ManualActivity
- ReviewActivity
- DeploymentActivity
类型: | System.String |
Position: | Named |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-ComputerName
指定运行 System Center Data Access 服务的计算机的名称。 Credential 参数中指定的用户帐户必须具有对指定计算机的访问权限。
类型: | System.String[] |
Position: | Named |
默认值: | Localhost |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Confirm
在运行 cmdlet 之前,提示你进行确认。
类型: | System.Management.Automation.SwitchParameter |
别名: | cf |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Credential
指定此 cmdlet 用于连接到运行 System Center Data Access 服务的服务器的凭据。 指定的用户帐户必须有权访问该服务器。
类型: | System.Management.Automation.PSCredential |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Criteria
指定一个对象,该对象表示限制结果集的条件。
类型: | System.String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Description
指定工作流的说明。
类型: | System.String |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-DisplayName
指定要创建的工作流的名称。
类型: | System.String |
Position: | 0 |
默认值: | None |
必需: | True |
接受管道输入: | False |
接受通配符: | False |
-Enable
指示此 cmdlet 是启用或禁用工作流。
类型: | System.Boolean |
Position: | Named |
默认值: | True |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-EnableNotification
指示此 cmdlet 是启用或禁用来自工作流的通知。
类型: | System.Boolean |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Event
指定工作流启动的条件。 有效值为:
- 创造
- 更新
类型: | Microsoft.EnterpriseManagement.ServiceManager.Sdk.Workflows.WorkflowEvent |
接受的值: | Create, Update |
Position: | Named |
默认值: | Created |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-ManagementPack
指定要在其中存储工作流的管理包。 不要指定密封的管理包。
类型: | Microsoft.EnterpriseManagement.Configuration.ManagementPack |
Position: | Named |
默认值: | The default management pack |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Notification
指定要用于工作流通知的用户和模板的哈希表。
类型: | System.Collections.Hashtable[] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-PassThru
指示此 cmdlet 返回此 cmdlet 创建的工作流。 可以将此对象传递给其他 cmdlet。
类型: | System.Management.Automation.SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-SCSession
指定一个对象,该对象表示与 Service Manager 管理服务器的会话。
类型: | Microsoft.SystemCenter.Core.Connection.Connection[] |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-Template
指定要应用于工作流影响的对象的模板。
类型: | Microsoft.EnterpriseManagement.Configuration.ManagementPackObjectTemplate |
Position: | Named |
默认值: | None |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
-WhatIf
显示 cmdlet 运行时会发生什么情况。 cmdlet 未运行。
类型: | System.Management.Automation.SwitchParameter |
别名: | wi |
Position: | Named |
默认值: | False |
必需: | False |
接受管道输入: | False |
接受通配符: | False |
输入
None.
不能通过管道将输入传递给此 cmdlet。
输出
None.
此 cmdlet 不生成任何输出。