1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

UiPath【OrchestratorAPIを使用してStudioまたはRobotからジョブを実行する】

Posted at

Studioバージョン(2021.10.6)

今回はタイトルのとおりジョブ実行を実装しますが、ポイントはプロセスに渡す引数です。フォーラムでも質問している人がいましたが、引数の記述はエスケープシーケンスなど含め複雑で解決していないようでした。このあと回答しておきます。

 ・APIリファレンス(ジョブを実行する)
  https://docs.uipath.com/orchestrator/reference/jobs-requests

【Studioでの実装イメージ】
1.メール本文から「プロセスID」とプロセスに渡す「引数①:employeeNo」「引数②:arg」を取得する。
2.API odata/Releases({key})で1.で取得したプロセスIDを使用してプロセスキーを取得する。
3.API odata/Jobs/UiPath.Server.Configuration.OData.StartJobsでジョブを実行する。実行時には引数①②を渡す。

【Orchestrator上のプロセスの引数】

Name Argument Type
employeeNo Input String
arg Input String

プロセスの引数.PNG

【メール本文の例】

メール本文の例
 【プロセスID:45960】
 【従業員番号:98765】
 【arg:TestArgument0】

メール本文.PNG

Studio
 'メール本文から各文字列を切り出す
  ProcessID = System.Text.RegularExpressions.Regex.Match(CurrentMail.Body, "【プロセスID:[0-9]+】").Value.Replace("【プロセスID:","").Replace("】","")
  employeeNo = System.Text.RegularExpressions.Regex.Match(CurrentMail.Body, "【従業員番号:[0-9]+】").Value.Replace("【従業員番号:","").Replace("】","")
  arg = System.Text.RegularExpressions.Regex.Match(CurrentMail.Body, "【arg:.+】").Value.Replace("【arg:","").Replace("】","")

 'プロセスキーを取得する
  「Orchestrator への HTTP 要求」アクティビティ - 「エンドポイントの相対パス」プロパティ
   "odata/Releases(" & ProcessID & ")"

 '引数付きでジョブを実行する
  「Orchestrator への HTTP 要求」アクティビティ - 「エンドポイントの相対パス」プロパティ
   "odata/Jobs/UiPath.Server.Configuration.OData.StartJobs"

  「Orchestrator への HTTP 要求」アクティビティ - 「JSONペイロード」プロパティ
   "{  ""startInfo"": {    ""ReleaseKey"": """ & jsonBody("Key").ToString & """,    ""Strategy"": ""Specific"",    ""RobotIds"": [29254], ""InputArguments"": ""{\""employeeNo\"":\""" & employeeNo & "\"",\""arg\"":\""" & arg & "\""}"" }}"

サンプルソースはこちら

【今回のコメント】

 ・引数は色々チャレンジしてやっと解決しました。
 ・次回はStudioXでも同じような実装の記事を書こうと思います。
 

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?