No Results
Search Tips:
- Please consider misspellings
- Try different search keywords
process()
承認のために承認プロセスインスタンスの配列を送信します。または、承認、却下、削除される承認プロセスインスタンスの配列を処理します。詳細は、Salesforce オンラインヘルプの「承認プロセスの開始」を参照してください。
構文
1ProcessResult = connection.process( processType processRequest[])processType は、ProcessSubmitRequest または ProcessWorkitemRequest のいずれかになる可能性があります。
使用方法
process() を使用して、次の 2 つのタスクのいずれかを実行します。
- オブジェクトの配列を承認プロセスに送信します。送信時、オブジェクトがすでに承認プロセスにあってはいけません。ProcessSubmitRequest 署名を使用します。
- 承認アクション (承認または却下) を実行することによって、承認プロセスに送信されているオブジェクトを処理します。ProcessWorkitemRequest 署名を使用します。
要求が処理されると、送信した要求と同じプロセスインスタンスを含む ProcessResult が返されます。
個別のレコードの失敗は、要求全体の失敗にはなりません。
サンプルコード —Java
このサンプルでは、承認を処理する sObject の ID と、次の承認者の ID が格納された配列を受け取ります。プロセス承認申請を作成し、承認を得るために送信します。最後に、process() コールの結果を解析します。
1swfobject.registerObject("clippy.codeblock-1", "9");public void processRecords(String id, String[] approverIds) {
2 ProcessSubmitRequest request = new ProcessSubmitRequest();
3 request.setComments("A comment about this approval.");
4 request.setObjectId(id);
5 request.setNextApproverIds(approverIds);
6 try {
7 ProcessResult[] processResults = connection
8 .process(new ProcessSubmitRequest[] { request });
9 for (ProcessResult processResult : processResults) {
10 if (processResult.isSuccess()) {
11 System.out.println("Approval submitted for: " + id + ":");
12 for (int i = 0; i < approverIds.length; i++) {
13 System.out
14 .println("\tBy: " + approverIds[i] + " successful.");
15 }
16 System.out.println("Process Instance Status: "
17 + processResult.getInstanceStatus());
18 } else {
19 System.out.println("Approval submitted for: " + id
20 + ", approverIds: " + approverIds.toString() + " FAILED.");
21 System.out.println("Error: "
22 + processResult.getErrors().toString());
23 }
24 }
25 } catch (ConnectionException ce) {
26 ce.printStackTrace();
27 }
28}サンプルコード —C#
このサンプルでは、承認を処理する sObject の ID と、次の承認者の ID が格納された配列を受け取ります。プロセス承認申請を作成し、承認を得るために送信します。最後に、process() コールの結果を解析します。
1swfobject.registerObject("clippy.codeblock-2", "9");public void processRecords(String id, String[] approverIds)
2{
3 ProcessSubmitRequest request = new ProcessSubmitRequest();
4 request.comments = "A comment about this approval.";
5 request.objectId = id;
6 request.nextApproverIds = approverIds;
7 try
8 {
9 ProcessResult[] processResults = binding.process(
10 new ProcessSubmitRequest[] { request });
11 foreach (ProcessResult processResult in processResults)
12 {
13 if (processResult.success)
14 {
15 Console.WriteLine("Approval submitted for: " + id + ":");
16 for (int i = 0; i < approverIds.Length; i++)
17 {
18 Console.WriteLine("\tBy: " + approverIds[i] + " successful.");
19 }
20 Console.WriteLine("Process Instance Status: "
21 + processResult.instanceStatus);
22 }
23 else
24 {
25 Console.WriteLine("Approval submitted for: " + id
26 + ", approverIds: " + approverIds.ToString() + " FAILED.");
27 Console.WriteLine("Error: "
28 + processResult.errors.ToString());
29 }
30 }
31 }
32 catch (SoapException e)
33 {
34 Console.WriteLine("An unexpected error has occurred: " +
35 e.Message + "\n" + e.StackTrace);
36 }
37}ProcessWorkitemRequest 引数
| 名前 | 型 | 説明 |
|---|---|---|
| action | string | 承認用に送信された項目の後処理のアクションの種類 (承認、却下、または削除) を示す文字列。削除を指定できるのは、システム管理者だけです。承認プロセスで [申請者に承認申請の取り消しを許可] オプションが選択されている場合、承認の申請者も削除を指定可能です。 |
| nextApproverIds | ID[] | プロセスが引き続き承認の詳細を要求する場合、次の要求に割り当てられるユーザ ID。 |
| comments | string | この要求に関連付けられた履歴ステップに追加されるコメント。 |
| workitemId | ID | 処理対象 (承認、却下、または削除) の ProcessInstanceWorkitem の ID。 |