CData Python Connector for SAP SuccessFactors はじめに:インストールから接続まで
このガイドでは、CData Python Connector をインストールし、ライセンスを認証して、 ライブの SAP SuccessFactors のデータ に接続する方法を解説します。以下の内容を学べます:
- コネクタのインストールとライセンスの適用
- SAP SuccessFactors への接続設定
- Python アプリケーションでライブの SAP SuccessFactors のデータ を統合する手順
それでは始めましょう。
前提条件
- お使いのマシンに Python(v3.8 以上)がインストールされていること。 こちらからダウンロードしてインストールしてください。
- 有効なライセンスを持つ CData Python Connector for SAP SuccessFactors。 こちらからダウンロードしてインストールしてください。
- 有効な資格情報を持つアクティブな SAP SuccessFactors アカウント。
ステップ 1:インストールとライセンス認証
1.1 コネクタのインストール
Python の依存関係について:Python がインストールされていることを確認してください。 CData Python Connector は Python バージョン 3.8、3.9、3.10、3.11、3.12 をサポートしています。 この範囲外のバージョンを使用している場合は、virtualenv で仮想環境を作成する必要がある場合があります。
Windows でのインストール
- コネクタ ZIP をダウンロードして解凍し、 目的の場所に配置します。
-
ターミナルまたはコマンドプロンプトを開き、.whl
ファイルがある場所(/win/ ディレクトリ内)に移動します。
例:
~\Downloads\SAPSuccessFactorsPythonConnector\CData.Python.SAPSuccessFactors\win\Python312\64 -
pip を使用して .whl ファイルをインストールします。
Python のバージョンとアーキテクチャに一致するファイルを使用してください。例:
pip install cdata_sapsuccessfactors_connector-24.0.9111-cp312-cp312-win_amd64.whl - pip list を実行してインストールを確認します。 cdata-sapsuccessfactors-connector が表示されれば、インストールは成功です。
Linux/Mac でのインストール
- コネクタ ZIP をダウンロードして解凍し、 目的の場所に配置します。
-
ターミナルを開き、解凍したインストールディレクトリに移動して、
/unix/ または /mac/ フォルダ内の .tar.gz ファイルを確認します。
例:
~/Downloads/SAPSuccessFactorsPythonConnector/CData.Python.SAPSuccessFactors/unix/
または
CData.Python.SAPSuccessFactors/mac/ -
pip を使用して .tar.gz ファイルをインストールします。例:
pip install cdata_sapsuccessfactors_connector-24.0.####-python3.tar.gz - pip list を実行してインストールを確認します。 cdata-sapsuccessfactors-connector が表示されれば、インストールは成功です。
1.2 ライセンスの認証
購入後、CData Orders チームからメールでライセンスキーを受け取っているはずです。 ライセンスキーは次のような 25 文字のコードです:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Windows でのライセンス認証
- ターミナルまたはコマンドプロンプトを開き、Python インストールの site-packages ディレクトリ内の cdata フォルダに移動します。
-
パスの例:
C:\Users\Username\AppData\Local\Programs\Python\Python312\Lib\site-packages\cdata\installlic_sapsuccessfactors -
ライセンスキーを指定して license-installer.exe ファイルを実行します:
.\license-installer.exe [YOUR LICENSE KEY HERE] - プロンプトが表示されたら、登録済みの名前とメールアドレスを入力して認証を完了します。
Linux/macOS でのライセンス認証
-
ターミナルを開き、Python の site-packages ディレクトリ内の
cdata フォルダに移動します。
このディレクトリは通常、以下の場所にあります:
~/Library/Python/3.12/lib/python/site-packages/cdata/installlic_sapsuccessfactors または
/usr/local/lib/python3.12/site-packages/cdata/installlic_sapsuccessfactors -
Linux/Mac ライセンスインストーラースクリプトを実行します:
./install-license.sh [YOUR LICENSE KEY HERE] - プロンプトが表示されたら、登録済みの名前とメールアドレスを入力して認証を完了します。
ライセンスに関するよくある質問
ライセンスは複数のマシンで使用できますか?
はい、サブスクリプションプランによります。注文確認メールを確認するか、アカウント担当者にお問い合わせください。
アカウント担当者が不明な場合は、[email protected] までお問い合わせください。
ライセンスキーを紛失しました。どうすれば取得できますか?
注文番号を添えて [email protected] までメールでお問い合わせいただければ、ライセンスキーを再送いたします。
ライセンスを別のマシンに移行できますか?
はい。以下のリンクからライセンス移行リクエストを送信する必要があります:
https://www.cdata.com/lic/transfer/
ライセンス移行リクエストが送信され、処理されると、プロダクトキーに追加のアクティベーションが付与されます。
その後、新しいマシンで正規ライセンスを認証できます。
このプロセスが完了すると、以前のマシンのライセンスは無効になります。
ライセンスに関するその他のご質問は、[email protected] までお問い合わせください。 ライセンスの確認と管理は、セルフサービスポータル portal.cdata.com から行えます。
ステップ 2:接続設定
インストールとライセンス認証が完了したら、CData Python Connector を使用して接続を確立できます。
2.1 接続の確立
CData Python Connector for SAP SuccessFactors は、標準の import 文でインポートできる Python モジュールとして公開されており、 それを基にアプリケーションコードを構築できます。
コネクタには sys_tables や sys_tablecolumns などの 組み込みメタデータツールも含まれており、SAP SuccessFactors のデータ の 利用可能なテーブル、カラム、構造メタデータを含むスキーマ検出を実行できます。
以下の例では、認証プロパティを使用して SAP SuccessFactors への接続を確立し、 特定のテーブルからカラム名を取得します。
以下の接続文字列の値を実際の資格情報に置き換え、必要に応じて '[TABLE NAME]' のテーブル名を更新してください。
SAP SuccessFactors インスタンスで MFA や追加のセキュリティ要件を使用している場合は、 接続文字列に Passcode や SecurityToken などのプロパティを含める必要がある場合があります。 サポートされているプロパティの完全なリストについては、 コネクタヘルプドキュメント の Connection String Options セクションを参照してください (コネクタの help ディレクトリ内でも参照可能です)。
import cdata.sapsuccessfactors as mod
# 設定したプロパティを使用して接続を確立
conn = mod.connect(
"User=username;"
"Password=password;"
"CompanyId=CompanyId;"
"Url=https://api4.successfactors.com;"
)
# 指定したテーブルのカラム名をクエリ
cur = conn.cursor()
cur.execute("SELECT ColumnName FROM sys_tablecolumns WHERE TableName = '[TABLE NAME]'")
print("テーブルのカラム:")
for row in cur.fetchall():
print(row[0])
cur.close()
conn.close()
このコードは SAP SuccessFactors に接続し、メタデータカタログをクエリして、 指定したテーブルのすべてのカラム名を出力します。完全な コネクタドキュメント を参照して、追加のスキーマ、テーブル、その他のサポートされているメタデータビューを 探索するための SQL クエリの変更方法を学べます。
2.2 利用可能な接続設定
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 アクセストークンの取得およびリフレッシュ
以下のプロパティを設定してください。
- InitiateOAuth:GETANDREFRESH。OAuthAccessToken を自動的に取得およびリフレッシュするために使用します
- OAuthClientId:アプリケーションの登録時に割り当てられたクライアントId
- CallbackURL:カスタムOAuth アプリケーションの登録時に定義されたリダイレクトURI
- OAuthClientSecret (クライアントグラント種別のみ):アプリケーションの登録時に割り当てられたクライアントシークレット
- PrivateKey (SAML-2 Bearer グラント種別のみ):カスタムOAuth アプリケーションの作成時にダウンロードした秘密鍵証明書のパス、またはその証明書のbase64 でエンコードされた内容
接続すると、CData 製品がデフォルトブラウザでSAP SuccessFactors のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えてください。
アプリケーションにアクセス許可を与えると、CData 製品がOAuth プロセスを完了します。
- CData 製品がSAP SuccessFactors からアクセストークンを取得し、それを使ってデータをリクエストします
- OAuth 値はOAuthSettingsLocation で指定されたパスに保存されます。これらの値は接続間で永続化されます
アクセストークンの期限が切れた際は、CData 製品が自動でアクセストークンをリフレッシュします。
カスタムOAuth アプリケーションの作成やその他の認証方法については、 href="/kb/help/" target="_blank">ヘルプドキュメントの「はじめに」をご確認ください。
2.3 よくある接続の問題
認証エラー
解決策:User、Password、および SAP SuccessFactors で必要な追加の認証プロパティが正しいことを確認してください。 データソースが MFA、SSO、またはパスコードを強制している場合は、 接続文字列に正しいプロパティが含まれていることを確認してください。 サポートされている認証プロパティの完全なリストについては、 コネクタドキュメントを参照するか、 認証設定の検証については [email protected] までお問い合わせください。
サーバーに接続できない
解決策:接続文字列のエンドポイント URL が正しく、 環境からアウトバウンド HTTPS トラフィックが許可されていることを確認してください。 ファイアウォールやプロキシの背後にいる場合は、Python がサービス URL に 到達できることを確認してください。 ネットワーク設定の詳細やポート要件については、 [email protected] までお問い合わせください。
テーブルが見つからない
解決策:SQL クエリの Database、Schema、およびテーブル名を確認してください。 sys_tables や sys_tablecolumns などのメタデータビューを使用して、 SAP SuccessFactors のデータ が公開している正確なテーブル名とカラム名を確認してください。 テーブル名が大文字小文字を区別する場合は、クエリで正しい大文字小文字を使用していることを確認してください。
モジュールが見つからない、またはインポートエラー
解決策:Python Connector が正しい環境にインストールされていることを確認してください。 pip list を実行して、コネクタ (cdata-sapsuccessfactors-connector)が存在することを確認してください。 仮想環境を使用している場合は、スクリプトを実行する前に正しい環境を有効にしてください。
接続文字列エラー
解決策:プロパティのフォーマットが正しくない、またはセミコロンが欠落していると、 コネクタが接続設定を解析できなくなります。 接続文字列を確認し、各プロパティが正しい Key=Value; 形式に従っていることを確認してください。 SAP SuccessFactors でサポートされているプロパティ名については、Python Connector ドキュメントを参照してください。
接続に関するその他のトラブルシューティングについては、完全なエラーメッセージを添えて (機密の資格情報をマスクしてから)[email protected] までお問い合わせください。
ステップ 3:次のステップ
コネクタがインストールされ、接続が設定されたら、 Python でライブの SAP SuccessFactors のデータ を操作できます。以下のリソースを参照して、 統合を拡張し、複雑なワークフローを構築してください。
サポート
ご不明な点がございましたら、お気軽にお問い合わせください:
- テクニカルサポート: [email protected]
- コミュニティフォーラム: CData Community Site
- ヘルプドキュメント: ローカルにインストールされているほか、オンラインでも参照可能です
FAQ
インストールとライセンス
-
コネクタのインストールには管理者権限が必要ですか?
Python Connector のインストール自体には管理者権限は必要ありませんが、 ライセンスの適用やシステム全体の Python 環境へのインストール時には必要になる場合があります。 -
複数の Python 環境にコネクタをインストールできますか?
はい。環境ごと(venv、Conda、システム Python)に一度インストールしてください。 各環境は独自のパッケージを管理し、認証後はマシンライセンスを使用します。
接続
-
認証情報はどのように提供しますか?
mod.connect() を呼び出す際に、接続文字列で認証プロパティを渡します。 サポートされているプロパティの完全なリストについては、コネクタヘルプドキュメントを参照してください。 -
テーブルとカラムを検出するにはどうすればよいですか?
sys_tables や sys_tablecolumns などのメタデータビューを使用してください。 例:SELECT * FROM sys_tables;
-
プロキシサーバー経由で接続できますか?
はい。接続文字列に ProxyServer、ProxyPort、ProxyUser などの プロキシプロパティを含めてください。 詳細については、ドキュメントの Firewall & Proxy セクションを参照してください。
パフォーマンスとトラブルシューティング
-
クエリが遅いのはなぜですか?
以下を確認してください:- フィルター(WHERE 句)を追加して結果サイズを削減する
- 頻繁に変更されないデータにはキャッシュを使用する
- Database と Schema の選択情報が正しいことを確認する
- 最適化のサポートについては [email protected] までお問い合わせください
-
ログを有効にするにはどうすればよいですか?
接続文字列にログプロパティを直接追加します。例: Logfile=/path/log.txt;Verbosity=5;
Verbosity はログの詳細レベルを制御します。 サポートを依頼する際は、このログファイルを [email protected] に送信してください。 -
どのポートを開放する必要がありますか?
ほとんどのクラウドサービスは、ポート 443 でアウトバウンド HTTPS を必要とします。 ソース固有の要件については、 [email protected] までお問い合わせください。 -
インポート時に「Module not found」と表示されるのはなぜですか?
スクリプトを実行する Python 環境にコネクタがインストールされていることを確認してください。 pip list または pip show を使用してインストールを確認してください。
一般
-
サポートされている SQL 構文はどこで確認できますか?
コネクタドキュメントの SQL Compliance セクションを参照してください。 -
コネクタはどのくらいの頻度で更新されますか?
CData はメジャーアップデートを年次でリリースし、定期的なパッチを提供します。 最新バージョンについては、アカウントポータルを確認するか、サポートにお問い合わせください。 -
その他のコード例はどこで確認できますか?
オンラインドキュメントには、接続、クエリ、フィルタリング、ページング、 メタデータビューの操作に関する例が含まれています。
この FAQ で解決しない場合は、 [email protected] までお問い合わせください。