PowerBuilder から JDBC 経由で SAP SuccessFactors のデータ に接続

Jerod Johnson
Jerod Johnson
Senior Technology Evangelist
PowerBuilder で SAP SuccessFactors JDBC Driver を使用して SAP SuccessFactors のデータ にアクセスする方法を紹介します。

CData JDBC ドライバー for SAP SuccessFactors は、 PowerBuilder を含む、JDBC をサポートするあらゆるプラットフォームや開発技術から使用できる標準ベースのコントロールです。 この記事では、PowerBuilder で CData JDBC Driver for SAP SuccessFactors を使用する方法について説明します。

ここでは、CData JDBC Driver for SAP SuccessFactors を使用してデータの読み取りと書き込みを実行する基本的な PowerBuilder アプリケーションの作成方法を説明します。

PowerBuilder から SAP SuccessFactors のデータ に接続

以下の手順に従って、Database Painter ツールを使用し、SAP SuccessFactors 用の JDBC URL に基づくデータベースプロファイルを作成します。データベースプロファイルを使用して接続プロパティを保存できます。Database Painter では、データをグラフィカルに操作したり、SQL クエリを実行したりできます。

  1. ドライバーの JAR ファイルを PowerBuilder のクラスパスに追加します。CLASSPATH システム環境変数を、インストールディレクトリの lib サブフォルダにあるドライバー JAR へのパスに設定します。

    Note: PowerBuilder Classic を使用している場合は、Tools -> System Options -> Java をクリックしてドライバー JAR へのパスを追加することもできます。

  2. Tools -> Database Painter をクリックします。
  3. JDBC ノードを右クリックし、New Profile をクリックします。
  4. Database Profile Setup ダイアログで、以下の情報を入力します。
    • Profile Name: プロファイルのわかりやすい名前を入力します。
    • Driver Name: ドライバーのクラス名を入力します: cdata.jdbc.sapsuccessfactors.SAPSuccessFactorsDriver
    • URL: JDBC URL を入力します。

      SAP SuccessFactorsへの接続

      それでは、SAP SuccessFactors に接続していきましょう。CData 製品は、デフォルトで有効になっているOData API を介してSAP SuccessFactors と通信します。追加の権限が必要な場合は、SAP サポートサイトをご確認ください。

      認証方法として、Azure AD 認証、SAP IAS 認証、OAuth 認証(推奨)、Basic 認証(非推奨)のいずれかを使用してSAP SuccessFactors に認証できます。

      必要な接続プロパティ

      選択したAuthScheme に関わらず、SAP SuccessFactors 環境を識別するために以下の接続プロパティを設定しましょう。

      • URL:SuccessFactors をホストするサーバーのURL
      • CompanyId:SAP SuccessFactors テナントに割り当てられた一意の識別子。この値はAPI 認証に必要で、組織固有のものです

      OAuth 認証

      SAP SuccessFactors では、OAuth 認証を2種類のグラント種別でサポートしています。

      • SAP SuccessFactors LMS インスタンスのクライアントグラント種別
      • SAML-2 Bearer グラント種別

      OAuth 認証を有効にするには、すべてのOAuth フローでカスタムOAuth アプリケーションを作成し、適切なプロパティを設定する必要があります。

      デスクトップアプリケーションでカスタムOAuth アプリケーションの資格情報を使用して認証するには、OAuth アクセストークンを取得し、更新する必要があります。これらを設定すると、接続の準備が整います。

      OAuth アクセストークンの取得およびリフレッシュ

      以下のプロパティを設定してください。

      • InitiateOAuthGETANDREFRESHOAuthAccessToken を自動的に取得およびリフレッシュするために使用します
      • OAuthClientId:アプリケーションの登録時に割り当てられたクライアントId
      • CallbackURL:カスタムOAuth アプリケーションの登録時に定義されたリダイレクトURI
      • OAuthClientSecret (クライアントグラント種別のみ):アプリケーションの登録時に割り当てられたクライアントシークレット
      • PrivateKey (SAML-2 Bearer グラント種別のみ):カスタムOAuth アプリケーションの作成時にダウンロードした秘密鍵証明書のパス、またはその証明書のbase64 でエンコードされた内容

      接続すると、CData 製品がデフォルトブラウザでSAP SuccessFactors のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えてください。

      アプリケーションにアクセス許可を与えると、CData 製品がOAuth プロセスを完了します。

      1. CData 製品がSAP SuccessFactors からアクセストークンを取得し、それを使ってデータをリクエストします
      2. OAuth 値はOAuthSettingsLocation で指定されたパスに保存されます。これらの値は接続間で永続化されます

      アクセストークンの期限が切れた際は、CData 製品が自動でアクセストークンをリフレッシュします。

      カスタムOAuth アプリケーションの作成やその他の認証方法については、 href="/kb/help/" target="_blank">ヘルプドキュメントの「はじめに」をご確認ください。

      組み込みの接続文字列デザイナー

      JDBC URL の構築には、SAP SuccessFactors JDBC Driver に組み込まれている接続文字列デザイナーが便利です。JAR ファイルをダブルクリックするか、コマンドラインから JAR ファイルを実行します。

      java -jar cdata.jdbc.sapsuccessfactors.jar
      

      接続プロパティを入力し、接続文字列をクリップボードにコピーします。一般的な JDBC URL は以下のとおりです。

      jdbc:sapsuccessfactors:User=username;Password=password;CompanyId=CompanyId;Url=https://api4.successfactors.com;
  5. テーブルを表示および編集するには、テーブルを右クリックして Edit Data -> Grid をクリックします。

PowerBuilder コントロールで SAP SuccessFactors のデータ を使用

標準の PowerBuilder オブジェクトを使用して JDBC データソースに接続し、クエリを実行できます。以下の例では、SAP SuccessFactors のデータ を DataWindow に取得する方法を示します。以下のコードを open メソッドに追加できます。

SQLCA.DBMS = "JDBC"
SQLCA.AutoCommit = False
SQLCA.DBParm = "Driver='cdata.jdbc.sapsuccessfactors.SAPSuccessFactorsDriver',URL='jdbc:sapsuccessfactors:User=username;Password=password;CompanyId=CompanyId;Url=https://api4.successfactors.com;";
CONNECT USING SQLCA;
dw_extaddressinfo.SetTransObject(SQLCA);
dw_extaddressinfo.Retrieve();

はじめる準備はできましたか?

SAP SuccessFactors Driver の無料トライアルをダウンロードしてお試しください:

 ダウンロード

詳細:

SAP SuccessFactors Icon SAP SuccessFactors JDBC Driver お問い合わせ

SAP SuccessFactors に連携するJava アプリケーションを素早く、簡単に開発できる便利なドライバー。