Skip to Content
Technical Articles
Author's profile photo Naoto Akiyama

SAP Build Process Automation オファーレター作成&配布の自動化! 【チュートリアル編① アクションの準備と作成】

目次

  1. はじめに
  2. オファーレターの作成&配布プロセスの全体像
  3. 【STEP1】SAP API Business HubによるAPIの検索と宛先サービスの設定
  4. 【STEP2】API連携のためのアクションプロジェクトの作成
  5. 【STEP3】SAP SuccessFactorsより候補者データを取得するためのRPAの作成
  6. おわりに

はじめに

近年の日本では、労働人口が減少したり、働き方改革により労働時間が削減されたりするなかで、Business Process Automation(BPA:業務プロセスを自動化)やRobotics Process Automation(RPA:単純作業をボットによって代行)を活用した業務の省力化・自動化が注目されています。

今回は、SAPが提供するBPA・RPAツールであるSAP Build Process Automationを使って、オファーレター作成から配布までの業務プロセスの自動化の例をご紹介します。

前回のブログでは、SAP Build Process Automationを活用することで、どのようにしてオファーレター作成から配布までの業務プロセスを改革することができるかについて説明しました。本ブログでは、実際にSAP Build Process Automationでプロセスを構築していく手順について紹介していきます。

第1回:SAP Build Process Automation オファーレター作成&配布の自動化! 【概要編】

第3回:SAP Build Process Automation オファーレター作成&配布の自動化! 【チュートリアル編② プロセスの作成】

参考レベル

  • 今までにSAP Build Process Automation(旧 SAP Process Automation)を触ってみたことがある方

事前準備

  • Business Technology Platform環境の準備
  • SAP Build Process Automationのサブスクライブ
  • 宛先サービスの有効化
  • SAP SuccessFactorsの準備
  • デスクトップエージェントのインストールと設定(参考ガイド

オファーレターの作成&送信プロセスの全体像

第1回目のブログでもご紹介しましたが、SAP Build Process Automationを活用して、今回構築するプロセスは以下の画像の通りです。

%u30D7%u30ED%u30BB%u30B9%u306E%u5168%u4F53%u50CF

プロセスの全体像

まず、①フォームの送信によってプロセスが開始されると、②人事システムであるSAP SuccessFactorsよりAPIを使用して候補者のデータを取得します。③続いて、候補者の情報をもとに、承認依頼が配属される部署のマネージャーへ送られます。承認された場合には、④Wordでオファーレターが作成され、⑤Outlookによって、オファーレターが添付された形で候補者へとメールが送信されます。また、却下された場合には、④-2申請者のもとに却下通知が送られてきます。

続いて、上記のプロセスを構築するための、具体的な作業について説明します。

本チュートリアルのステップ

オファーレターの作成から配布までのプロセス自動化を構築するために、上記の7つのステップを行う必要があります。第2回の本ブログでは、STEP1~STEP3、第3回のブログでは、STEP4~STEP7の各作業について紹介します。

STEP1~STEP3の作業は、候補者データを取得するためのRPAの作成とそのための事前準備です。SAP Build Process Automationでは、プロセス上で直接APIを呼び出すのではなく、別でアクションを用意し、プロセス上でアクションを使用します。本ブログでは、アクションの作成方法、プロセス上でアクションを使用する方法についても説明します。

*アクション・・・APIのパスや認証情報を事前に登録し、プロセスやRPAのなかで使用することができる機能。事前にIT部門の方がアクションを作成しておくことで、業務ユーザーが簡単にAPIを使用することができたり、ガバナンスを効かせることが可能。

それでは、STEP1から順に各作業について説明します。

【STEP1】SAP API Business HubによるAPIの検索と宛先サービスの設定

今回、構築するプロセス自動化では、オファーレターを作成するために、人事システム(SAP SuccessFactors)より、自動でオファーレターを送る候補者の情報を取得する必要があります。

そのために、SAP SuccessFactorsより候補者の情報を取得するためのAPIを探す必要があります。SAP SuccessFactorsやSAP S/4 HANAといったSAPアプリケーションのAPIを検索・試用・消費できるAPIのカタログサイトであるSAP API Business Hubを使用します。

今回は、以下のJob ApplicationのAPIを使用します。SuccessFactors > API > ODATA V2 > Job Applicationを選択します。

API%20Business%20Hub

API Business Hub

SAP API Business Hubでは、APIの概要やAPIリファレンスの確認、トライアウトを行うことが可能です。それでは、今回使用する/JobApplicationで実際にGETリクエストを送ってみましょう。

API%20Business%20Hub%u30C8%u30E9%u30A4%u30A2%u30A6%u30C8%u306E%u7D50%u679C

API Business Hubトライアウトの結果

結果として、Response Bodyの部分にサンドボックス環境のレスポンスが表示されます。今回は、これらのデータを使用します。

ここで、後ほどSTEP2で必要になるAPI仕様(API Specification)のJSONファイルをダウンロードします。

API%u4ED5%u69D8%u306E%u30C0%u30A6%u30F3%u30ED%u30FC%u30C9

API仕様のダウンロード

続いて、アプリケーションとBTP上のサービスの接続を確立する宛先サービスに、APIで呼び出すシステムや認証情報の登録を行っていきます。

宛先サービスを利用することで、同じBTP上のサービスでAPI連携の設定を簡略化したり、認証情報を不要にしたりすることが可能です。

左側メニューバーより宛先を選択し、新規宛先を選択します。

宛先設定が表示されるので、空白のテンプレートより、以下のように設定していきます。

項目
名前 任意(例:SendOfferLetter)
タイプ HTTP
説明 任意
URL https://< ご自身のSuccessFactors環境を入力してください>/odata/v2/JobApplication
プロキシタイプ Internet
認証 BasicAuthentication
ユーザ <ご自身のユーザ名を入力してください>(<User>@<Company ID>
パスワード <ご自身のパスワードを入力してください>
追加プロパティ
sap.applicationdevelopment.actions.enabled true
sap.processautomation.enabled true

%u5B9B%u5148%u306E%u767B%u9332%u3068%u8A2D%u5B9A

宛先の登録と設定

以上で、APIによりSAP SuccessFactorsから候補者データを取得する準備ができました。それでは、SAP Build Process Automationで候補者データを呼び出す設定を行っていきましょう。

【STEP2】API連携のためのアクションプロジェクトの作成

SAP Build Process Automationでは、直接プロセスのなかでAPIの設定を行うのではなく、アクションプロジェクト内でAPIとの連携の設定を行い、プロセス上でアクションプロジェクトを使用することで、APIの連携を行います。

まずは、先ほど作成した宛先をSAP Build Process Automationに追加します。設定 > 宛先から新しい宛先を選択し、先ほど登録した宛先を選んで追加します。

SAP%20Build%20Process%20Automation%u306B%u5B9B%u5148%u3092%u8FFD%u52A0

SAP Build Process Automationに宛先を追加

続いて、候補者データを取得するためのアクションプロジェクトを作成します。ロビー > 作成 > 構築プロセス > アクションの順に選択します。

%u30A2%u30AF%u30B7%u30E7%u30F3%u30D7%u30ED%u30B8%u30A7%u30AF%u30C8%u306E%u4F5C%u6210

アクションプロジェクトの作成

プロジェクト名、説明、API仕様のアップロードについては、以下の情報を入力してください。

項目
プロジェクト名 任意(例:SendOfferLetterAction)
説明 任意
API仕様のアップロード RCMJobApplication.json (STEP1でダウンロードしたJSONファイルを指定)

作成を選択し、しばらく時間が経つと、アクションプロジェクトが立ち上がり、以下の画像のようにアクション追加の設定画面が表示されます。今回は、/JobApplicationパスのGETメゾットのみを選択します。

%u30A2%u30AF%u30B7%u30E7%u30F3%20%u30D1%u30B9%u3068%u30E1%u30BE%u30C3%u30C8%u306E%u8FFD%u52A0

アクション パスとメゾットの追加

アクションプロジェクトの入力および出力の設定、テストを行うためのダッシュボードが表示されます。パラメータやレスポンスの内容に制限をかけることが可能です。また、テストでは実際にAPIを呼び出しレスポンスを見ることができます。

無事テストが成功したら、アクションプロジェクトのリリース、そしてライブラリの公開を行います。右上のリリースボタンを選択し、リリースを行います。続いて、先ほど選択したリリースボタンがライブラリに公開ボタンに変わるので、選択します。

以上で、アクションプロジェクトの作成が完了です。それでは、実際にプロセス上で、アクションプロジェクトを使用して、候補者データを取得しましょう。

【STEP3】SAP SuccessFactorsより候補者データを取得するためのRPAの作成

まずは、ビジネスプロセスプロジェクトを作成します。ロビー > 構築プロセス > ビジネスプロセスを選択し、プロジェクト名と説明に任意の値を入力します。(プロジェクト名の例:SendOfferLetter)

%u30D3%u30B8%u30CD%u30B9%u30D7%u30ED%u30BB%u30B9%u30D7%u30ED%u30B8%u30A7%u30AF%u30C8%u306E%u4F5C%u6210

ビジネスプロセスプロジェクトの作成

続いて、プロセス作成の編集画面が表示されるので、名前と説明に任意の値を入力します。(プロセス名の例:SendOfferLetter)

*名前を日本語で入力した場合は、英数字でIDを入力してください。

以下の画面がプロセスを構築するダッシュボードです。このフロー上にRPAやフォーム機能を追加して、一連のプロセスを構築します。

%u30D7%u30ED%u30BB%u30B9%u3092%u69CB%u7BC9%u3059%u308B%u30C0%u30C3%u30B7%u30E5%u30DC%u30FC%u30C9

プロセスを構築するダッシュボード

まずは、取得した候補者のデータを格納するためのデータタイプを作成します。上の画像の左上のボタン> 作成 > データタイプを選択します。データタイプの作成画面が表示されるので、名前と説明を入力します。

項目
名前 CandidateInformation
ID candidateinformation(自動入力)
説明 任意

今回、作成するデータタイプは以下の通りです。新規フィールドを選択し、ひとつずつフィールドを追加していきます。

名前 タイプ
Name 文字列
CellPhone 文字列
Address 文字列
City 文字列
Country 文字列
Zip 文字列
PositionTitle 文字列
Salary 文字列

*リスト、必須はすべていいえに設定します。

%u30C7%u30FC%u30BF%u30BF%u30A4%u30D7%u300CCandidate%20Information%u300D%u306E%u4F5C%u6210

データタイプ「Candidate Information」の作成

プロセスを構築するダッシュボード

続いて、RPAを作成していきます。上の画像のボタン > 自動化 > 新規自動化を選択します。エージェントバージョンの設定画面が表示されるので、事前にインストールしたデスクトップエージェントのバージョンを選択します。

%u30C7%u30B9%u30AF%u30C8%u30C3%u30D7%u30A8%u30FC%u30B8%u30A7%u30F3%u30C8%u306E%u30D0%u30FC%u30B8%u30E7%u30F3%u9078%u629E

デスクトップエージェントのバージョン選択

自動化作成の画面が表示されるので、名前と説明に任意の値を入力します。(自動化名の例:GetCandidateInfoFromSF)

*名前を日本語で入力した場合は、英数字でIDを入力してください。

以下のようにプロセス上にRPAが追加されました。

%u30D7%u30ED%u30BB%u30B9%u306E%u30C0%u30C3%u30B7%u30E5%u30DC%u30FC%u30C9

プロセスのダッシュボード

上の画像の3つのドットからエディタを開くを選択すると、以下のようなRPAのダッシュボードが表示されます。

RPA%u306E%u30D5%u30ED%u30FC%u3092%u69CB%u7BC9%u3059%u308B%u30C0%u30C3%u30B7%u30E5%u30DC%u30FC%u30C9

RPAのフローを構築するダッシュボード

まずは、このRPAの入力パラメータと出力パラメータを設定します。入力パラメータでは、オファーレターを出す候補者のID、出力パラメータには、候補者の情報を選択します。

項目
入力パラメータ
名前 CandidateID
データタイプ 文字列
出力パラメータ
名前 CandidateInfo
データタイプ CandidateInformation

RPA%u300C%u5019%u88DC%u8005%u30C7%u30FC%u30BF%u306E%u53D6%u5F97%u300D%u306E%u5165%u529B%u3068%u51FA%u529B

RPA「候補者データの取得」の入力と出力

続いて、RPAのフローを作成していきます。今回は以下の画像のように3つのステップを追加します。RPA%5B%5D

RPA「候補者データの取得」のフロー

ステップ1:Get entities form JobApplication(候補者データの取得)

依存関係の設定でアクションプロジェクトの追加

まず、1つ目に追加するのはSTEP2で作成したアクションです。右上の設定アイコンを選択し、依存関係 > 依存関係を追加 > アクションプロジェクトを追加 を選択します。

ライブラリを照会画面が表示されるので、STEP2で作成したアクションプロジェクトの追加ボタンを選択します。

続いて、ツール > アクショングループ > アクショングループ REST > [ご自身で作成したアクションプロジェクト名] > Get entities from JobApplicationをStartとEndの矢印上にドラッグ&ドロップします。

%u30A2%u30AF%u30B7%u30E7%u30F3%u306E%u691C%u7D22

アクションの検索

 

続いて、Get entities from JobApplicationの設定、入力を以下のように設定します。

項目
Destination <宛先サービスに登録した名前を入力>
$filter ‘applicationId eq ‘ + Step0.CandidateID

%u30B9%u30C6%u30C3%u30D7%u300CGet%20entities%20from%20JobApplication%u300D%u306E%u8A2D%u5B9A

ステップ「Get entities from JobApplication」の設定

ステップ2:Log Message(ログの表示)

次は、候補者データの取得が成功したかどうかを確認するために、APIからのレスポンスのログを取ります。

検索窓から、Log Messageを検索し、Get entities from JobApplicationの後ろにドラッグ&ドロップします。

messageは以下のように入力します。

項目
message Step1.result.d.results[0]

%u30B9%u30C6%u30C3%u30D7%u300CLog%20Message%u300Dno

ステップ「Log Message」の設定

ステップ3:Candidate Information 変数を作成(候補者データの格納)

最後に、候補者データを格納するステップを追加します。検索窓から、Candidate Informationを検索し、Log Messageの後ろにドラッグ&ドロップします。

valueにカスタムデータを選択し、以下の内容を入力します。

項目
Name Step1.result.d.results[0].firstName + ” ” + Step1.result.d.results[0].lastName
CellPhone Step1.result.d.results[0].cellPhone
Address Step1.result.d.results[0].address + ” ” + Step1.result.d.results[0].address2
City Step1.result.d.results[0].city
Country Step1.result.d.results[0].country
Zip Step1.result.d.results[0].zip
Position Title Step1.result.d.results[0].posTitle
Salary Step1.result.d.results[0].baseSalary

%u30B9%u30C6%u30C3%u30D7%u300CCandidate%20Information%u5909%u6570%u3092%u4F5C%u6210%u300D%u306E%u8A2D%u5B9A

ステップ「Candidate Information変数を作成」の設定

以上で、候補者データを取得し、データを格納するRPAのフローを作成することができました。

第2回のブログは以上で終了です。第3回のブログでは、取得した候補者データより、オファーレターを作成し、送信するプロセスを構築します。

操作イメージおよび完成イメージはこちら。

おわりに

いかがでしたでしょうか。

ご紹介したようにSAP Build Process Automaitonでは、SAP製品はもちろん、他社製品との連携を、IT部門と業務部門のコラボレーションやガバナンスを考えた上で、容易に行うことができます。

次回のブログでは、後半の作業にあたるSTEP4~STEP7について説明します。ぜひご覧ください。

第1回:SAP Build Process Automation オファーレター作成&配布の自動化! 【概要編】

第3回:SAP Build Process Automation オファーレター作成&配布の自動化! 【チュートリアル編② プロセスの作成】

Assigned Tags

      Be the first to leave a comment
      You must be Logged on to comment or reply to a post.