System Center Orchestrator 2012 R2 - 访问返回项目的属性

System Center Orchestrator 2012 R2 - 访问返回项目的属性

我有一个 Orchestrator 运行手册,它使用 Configuration Manager Integration Pack 中的查询配置管理器活动来查询 SCCM 中所有待处理的应用程序请求。它似乎在工作,但我不知道如何使用结果。我可以选择“查询结果来自”,它会返回整个对象,但我想访问“用户”属性。当我尝试使用查询结果时,我总是会返回整个项目:

"Application"="MyApp";"CI_UniqueID"="ScopeId_5A6F4DD1-9332-4D87-B040-05437E8677D7/Application_257e201b-9c34-4d1c-9de5-b84d428cfd67/2";"Comments"="User's comment during application request";"CurrentState"="1";"LastModifiedBy"="DOMAIN\username";"LastModifiedDate"="2014-08-21T14:29:05";"ModelName"="ScopeId_5A6F4DD1-9332-4D87-B040-05437E8677D7/Application_257e201b-9c34-4d1c-9de5-b84d428cfd67";"RequestGuid"="9CCDF61B-64BC-4EE9-A31C-7DA1218F7FCF";"RequestHistory"="";"User"="DOMAIN\username";"UserSid"="";

我尝试过的事情:

  • {“上一步”的查询结果}.用户
  • $({“上一步”的查询结果}.用户)
  • $(({“上一步”的查询结果}).用户)

有人知道怎么做吗?使用 SCCM 2012 和 SCO 2012 R2,仅供参考。

编辑:抱歉,忘了提及上述三次尝试导致(<itemAbove>上面的项目在代码块中的位置):

  • <itemAbove>。用户
  • <itemAbove>.用户)
  • $(( <itemAbove>).用户)

答案1

我最终使用 PowerShell 脚本来完成此操作。

$appReqs = Get-WmiObject -ComputerName <computername> `
  -Namespace root/SMS/site_<mysite> `
  -Class SMS_UserApplicationRequest `
  -Filter "RequestGuid = '<array of GUIDs from previous activity>'"

foreach ($appReq in $appReqs) {
  $comment = $appReq.Comments
  $user = $appReq.User
  $appName = $appReq.Application
  $date = $appReq.ConvertToDateTime($appReq.LastModifiedDate)
}

答案2

为了回答其他人寻求的这个问题,您可以使用场地函数来检索数据。

例子: [Field('John;Smith;9055552211', ';', 2)]

以上将返回“Smith”。您将在第一个参数中插入“已发布数据”变量,最后一个参数是要返回的列号。

相关内容