【ノーコード】SAP Analytics Cloud でPaylocity のデータを分析する方法
SAP Analytics Cloud は、クラウドベースのビジネスインテリジェンスプラットフォームです。CData API Server は、Paylocity の仮想データベースを作成し、Paylocity のOData API(Analytics Cloud でネイティブに使用可能)を生成するために使用できます。SAP Analytics Cloud をCData API Server とペアリングすることで、すべてのSaaS およびBig Data とNoSQL ソースへの、データを移行したり統合したりする必要のない接続が可能になります。ほかのOData サービスと同様に、API Server に接続するだけで、すべてのデータに瞬時にライブアクセスできます。
この記事では、API Server でのPaylocity への接続と、Analytics Cloud からのAPI Server への接続について説明し、モデルと簡単なダッシュボードを作成します。
API Server の設定
以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなPaylocity OData サービスを作成していきましょう。
Paylocity への接続
SAP Analytics Cloud からPaylocity のデータを操作するには、まずPaylocity への接続を作成・設定します。
- API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。
- 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「Paylocity」を選択します。
- 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
CData コネクタの追加方法はこちら >> - それでは、Paylocity への接続設定を行っていきましょう!
-
Paylocity への接続を確立するには以下を設定します。
- RSAPublicKey:Paylocity アカウントでRSA 暗号化が有効になっている場合は、Paylocity に関連付けられたRSA キーを設定。
このプロパティは、Insert およびUpdate ステートメントを実行するために必須です。この機能が無効になっている場合は必須ではありません。
- UseSandbox:サンドボックスアカウントを使用する場合はTrue に設定。
- CustomFieldsCategory:Customfields カテゴリに設定。これは、IncludeCustomFields がtrue に設定されている場合は必須です。デフォルト値はPayrollAndHR です。
- Key:Paylocity の公開鍵で暗号化されたAES 共通鍵(base 64 エンコード)。これはコンテンツを暗号化するためのキーです。
Paylocity は、RSA 復号化を使用してAES 鍵を復号化します。
これはオプションのプロパティで、IV の値が指定されていない場合、ドライバーは内部でキーを生成します。 - IV:コンテンツを暗号化するときに使用するAES IV(base 64 エンコード)。これはオプションのプロパティで、Key の値が指定されていない場合、ドライバーは内部でIV を生成します。
OAuth
OAuth を使用してPaylocity で認証する必要があります。OAuth では認証するユーザーにブラウザでPaylocity との通信を要求します。詳しくは、ヘルプドキュメントのOAuth セクションを参照してください。
Pay Entry API
Pay Entry API はPaylocity API の他の部分と完全に分離されています。個別のクライアントID とシークレットを使用し、アカウントへのアクセスを許可するにはPaylocity から明示的にリクエストする必要があります。 Pay Entry API を使用すると、個々の従業員の給与情報を自動的に送信できます。 Pay Entry API によって提供されるものの性質が非常に限られているため、CData では個別のスキーマを提供しないことを選択しましたが、UsePayEntryAPI 接続プロパティを介して有効にできます。
UsePayEntryAPI をtrue に設定する場合は、CreatePayEntryImportBatch、MergePayEntryImportBatch、Input_TimeEntry、およびOAuth ストアドプロシージャのみ利用できることに注意してください。 製品のその他の機能を使用しようとするとエラーが発生します。また、OAuthAccessToken を個別に保存する必要があります。これは、この接続プロパティを使用するときに異なるOAuthSettingsLocation を設定することを意味します。
- RSAPublicKey:Paylocity アカウントでRSA 暗号化が有効になっている場合は、Paylocity に関連付けられたRSA キーを設定。
- 接続情報の入力が完了したら、「保存およびテスト」をクリックします。
Paylocity への接続を確立するには以下を設定します。
- RSAPublicKey:Paylocity アカウントでRSA 暗号化が有効になっている場合は、Paylocity に関連付けられたRSA キーを設定。
このプロパティは、Insert およびUpdate ステートメントを実行するために必須です。この機能が無効になっている場合は必須ではありません。
- UseSandbox:サンドボックスアカウントを使用する場合はTrue に設定。
- CustomFieldsCategory:Customfields カテゴリに設定。これは、IncludeCustomFields がtrue に設定されている場合は必須です。デフォルト値はPayrollAndHR です。
- Key:Paylocity の公開鍵で暗号化されたAES 共通鍵(base 64 エンコード)。これはコンテンツを暗号化するためのキーです。
Paylocity は、RSA 復号化を使用してAES 鍵を復号化します。
これはオプションのプロパティで、IV の値が指定されていない場合、ドライバーは内部でキーを生成します。 - IV:コンテンツを暗号化するときに使用するAES IV(base 64 エンコード)。これはオプションのプロパティで、Key の値が指定されていない場合、ドライバーは内部でIV を生成します。
OAuth
OAuth を使用してPaylocity で認証する必要があります。OAuth では認証するユーザーにブラウザでPaylocity との通信を要求します。詳しくは、ヘルプドキュメントのOAuth セクションを参照してください。
Pay Entry API
Pay Entry API はPaylocity API の他の部分と完全に分離されています。個別のクライアントID とシークレットを使用し、アカウントへのアクセスを許可するにはPaylocity から明示的にリクエストする必要があります。 Pay Entry API を使用すると、個々の従業員の給与情報を自動的に送信できます。 Pay Entry API によって提供されるものの性質が非常に限られているため、CData では個別のスキーマを提供しないことを選択しましたが、UsePayEntryAPI 接続プロパティを介して有効にできます。
UsePayEntryAPI をtrue に設定する場合は、CreatePayEntryImportBatch、MergePayEntryImportBatch、Input_TimeEntry、およびOAuth ストアドプロシージャのみ利用できることに注意してください。 製品のその他の機能を使用しようとするとエラーが発生します。また、OAuthAccessToken を個別に保存する必要があります。これは、この接続プロパティを使用するときに異なるOAuthSettingsLocation を設定することを意味します。
API Server のユーザー設定
次に、API Server 経由でPaylocity にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。
- 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
-
次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
-
その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。
Paylocity 用のAPI エンドポイントの作成
ユーザーを作成したら、Paylocity のデータ用のAPI エンドポイントを作成していきます。
-
まず、「API」ページに移動し、
「 テーブルを追加」をクリックします。
-
アクセスしたい接続を選択し、次へをクリックします。
-
接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。
OData のエンドポイントを取得
以上でPaylocity への接続を設定してユーザーを作成し、API Server でPaylocity データのAPI を追加しました。これで、OData 形式のPaylocity データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。
(オプション)Cross-Origin Resource Sharing (CORS) を構成する
Ajax などのアプリケーションから複数の異なるドメインにアクセスして接続すると、クロスサイトスクリプティングの制限に違反する恐れがあります。その場合には、[OData]->[Settings]でCORS 設定を構成します。
- Enable cross-origin resource sharing (CORS):ON
- Allow all domains without '*':ON
- Access-Control-Allow-Methods:GET, PUT, POST, OPTIONS
- Access-Control-Allow-Headers:Authorization
SAP Analytics Cloud でPaylocity のデータのモデルを作成する
Paylocity への接続が設定されてOData エンドポイントが作成されると、SAP Analytics Cloud でPaylocity のデータのモデルを作成できるようになります。
- Analytics Cloud インスタンスにログインし、メニューから「Create」->「Model」と進みます。
- 「Get data from a datasource」から「OData Services」を選択します。
- API Server OData への既存の接続を選択、または新しい接続を作成します。
- 「Connection Name」を設定します。
- 「Data Service URL」をOData API のBase URL に設定します。(通常はCONNECT_SERVER_URL/api.rsc)
- 「Authentication Type」をBasic Authentication に設定します。
- 「User Name」を構成済みのAPI Server ユーザーに設定します。
- 「Password」を上記のユーザーの認証トークンに設定します。
- 「Create a new query」を選択して「Next」をクリックします。
- クエリに名前を付け、OData エンドポイント(paylocitydb_Employee など)を選択して「Next」をクリックします。
- 使用したいカラムを「Selected Data」ワークスペースにドラッグし、「Create」をクリックします。
- この時点でドラフトデータソースが作成されるため、ドラフトをクリックしてモデルを完成させます。
- 計算ディメンション、場所ディメンションの作成、データソースの結合などの変換を実行し、「Create Model」をクリックします。
- モデルに名前を付け、「OK」をクリックします。
SAP Analytics Cloud でダッシュボードを構築する
モデルが作成されたら、Paylocity のデータを使用してSAP Analytics Cloud でダッシュボードを作成できるようになります。
- メニューから「Create」->「Story」とクリックします。
- SAP Analytics Template をクリックします。(この記事では、「Dashboard」テンプレートを使用します。)
- レイアウトを選択して「Apply」をクリックします。
- 「More」メニューから挿入するビジュアライゼーション(チャート)を選択します。
- ビジュアライズするモデルを選択します。
- 構造と必要なメジャー、ディメンションを選択します。
- ストーリーを保存します。
おわりに
これで、リアルタイムPaylocity のデータから簡単で強力なダッシュボードが作成できました。Paylocity(および250 以外のデータソース)のOData フィードを作成する方法の詳細については、API Server ページにアクセスしてください。無料トライアルにサインアップして、SAP Analytics Cloud でリアルタイムPaylocity のデータの操作を開始してください。