生産スケジューラFLEXSCHE へPingOne からデータを取り込む
FLEXSCHE はあらゆる生産ルールに対応可能な柔軟性と拡張性を備えた生産スケジューラで、さまざまな業界・業種へ導入実績があります。
この記事では、FLEXSCHE と CData ADO.NET Provider を使って、FLEXSCHE へPingOne からデータを取り込む方法を紹介します。
CData ADO.NET Provider
まずCData ADO.NET Provider を対象の環境にセットアップします。
- 30日の無償評価版のページからダウンロードし、FLEXSCHE と同じマシンでセットアップします。
データソース接続の設定
それでは、ここからFLEXSCHE 上でデータを取り込むための設定を行います。
- 「ファイル」メニューから「外部データソース」の「EDIF構成ツールを起動」を選択し、「EDIF構成ツール」を開きます。
- メニューの「マッピング」から「テーブルマッピングを追加」を選択し、「テーブルのマッピング設定」ダイアログを開きます。 対象とするFLEXSCHE テーブルを選択します。
- ここでマッピングの外部テーブルとしてPingOne のデータを参照する設定を行います。「外部テーブル」で「<<新規>>」を選択すると「データソース設定」ダイアログが開きます。新規>
- 「種類」を「.NET Frameworkデータ接続(ADO.NET)」にします。「プロバイダー」をインストールしたADO.NETドライバーにします。
- 続いて接続の詳細設定を行います。「接続文字列」の横にあるボタンを押下すると「接続文字列」ダイアログが開きます。 この画面で認証やプロキシ、ログ出力などの設定を行います。
PingOne に接続するには以下のプロパティを設定します。
- Region:自身のPingOne 組織のデータがホスティングされている地域。
- AuthScheme:PingOne に接続する際に使用する認証の種類。
- WorkerAppEnvironmentId (デフォルトのPingOne ドメインを使用する場合に必要)、またはAuthorizationServerURL のいずれかで、下で説明するように設定します。
WorkerAppEnvironmentId の設定
WorkerAppEnvironmentId は、Worker アプリケーションが存在するPingOne 環境のID です。 このパラメータは、環境がデフォルトのPingOne ドメイン(auth.pingone)を利用している場合のみ使用されます。 これは、ヘルプドキュメントのカスタムOAuth アプリケーションの作成で説明するように、PingOne への認証に使用するカスタムOAuth アプリケーションを作成した後に設定します。
はじめに、このプロパティの値を見つけます。
- 自身のPingOne 組織のホームページからナビゲーションサイドバーに移動し、Environments をクリックします。
- OAuth / Worker のカスタムアプリケーションを作成した環境(通常はAdministrators)を見つけ、Manage Environment をクリックします。 環境のホームページが表示されます。
- 環境のホームページのナビゲーションサイドバーで、Applications をクリックします。
- リストから、OAuth またはWorker アプリケーションの詳細を見つけます。
-
Environment ID フィールドの値をコピーします。
以下の例に似たものになるはずです:
WorkerAppEnvironmentId='11e96fc7-aa4d-4a60-8196-9acf91424eca'
次に、WorkerAppEnvironmentId をEnvironment ID フィールドの値に設定します。
AuthorizationServerURL の設定
AuthorizationServerURL は、お使いのアプリケーションが配置されている環境のPingOne 認可サーバーのベースURL です。 このプロパティは、PingOne プラットフォームAPI ドキュメントで説明されているように、環境にカスタムドメインを設定した場合にのみ使用されます。 Custom Domains を参照してください。
OAuth でのPingOne への認証
PingOne はOAuth とOAuthClient 認証の両方をサポートしています。 上述の設定手順に加え、OAuth またはOAuthCliet 認証をサポートするために、さらに2つの手順を完了する必要があります。
- ヘルプドキュメントのカスタムOAuth アプリケーションの作成で説明するように、カスタムOAuth アプリケーションを作成して設定します。
- ドライバーがデータモデル内のエンティティにアクセスできるようにするには、ヘルプドキュメントのAdministrator Roles での説明のとおり、使用するアドミンユーザー / ワーカーアプリケーションに対して正しいロールを設定していることを確認してください。
- 以下のサブセクションで説明されているように、選択した認証スキームと認証フローに適切なプロパティを設定します。
OAuth(認可コードグラント)
AuthScheme をOAuth に設定します。
デスクトップアプリケーション
OAuth アクセストークンの取得およびリフレッシュ
以下を設定して、接続してください。
- InitiateOAuth:GETANDREFRESH。繰り返しOAuth の交換を行ったり、手動でOAuthAccessToken を設定する必要をなくすには、InitiateOAuth を使用します。
- OAuthClientId:カスタムOAuth アプリケーションを作成した際に取得したClient ID。
- OAuthClientSecret:カスタムOAuth アプリケーションを作成した際に取得したClient Secret。
- CallbackURL:カスタムOAuth アプリケーションの登録時に定義したリダイレクトURI。例:https://localhost:3333
接続すると、CData 製品 はデフォルトブラウザでPingOne のOAuth エンドポイントを開きます。ログインして、アプリケーションにアクセス許可を与えます。 ドライバーはこれでOAuth プロセスを完了します。
- ドライバーはPingOne からアクセストークンを取得し、それを使ってデータをリクエストします。
- OAuth 値はOAuthSettingsLocation で指定された場所に保存され、接続間で永続化されるようにします。
ドライバーはアクセストークンの期限が切れると自動的にリフレッシュします。
Web アプリケーションやヘッドレスマシン、クライアントクレデンシャルグラントを含むその他のOAuth メソッドについては、ヘルプドキュメントを参照してください。
- 「接続文字列」画面でプロパティを編集したら「テスト接続」を押下して接続を確認してください。 「接続に成功しました。」というメッセージが表示されれば接続設定は完了です。
データソースの対象テーブルの選択
次に接続先のテーブルを選択します。
- 「データソース設定」ダイアログの「テーブル名」の右のボタンを押下し「テーブルの検索」画面を開いてください。 検索対象が「Tables」になっていることを確認し「検索」ボタンを押下します。
PingOne のテーブル一覧が表示されるので、対象のテーブルを選択します。 - 「データソース設定」ダイアログの「OK」を押下すると、外部テーブルへの接続情報が「テーブルのマッピング設定」画面の「外部テーブル」に反映されます。
- 「OK」を押下し「テーブルのマッピング設定」画面を閉じます。
フィールドマッピングの設定
続いてフィールドマッピングを行います。
- マッピングするテーブル情報の設定が完了すると、「EDIF構成ツール」ダイアログにフィールドマッピングを設定するタブが表示されます。
FLEXSCHE のテーブルとPingOne のテーブルのカラムをそれぞれ対応付けます。 - 設定が完了しましたらマッピングを保存し、「EDIF構成ツール」を閉じてください。
データのインポートと確認
それでは実際にFLEXSCHE にデータが取り込めるか確認してみましょう。
- 「ファイル」メニューの「外部データソース」にある「EDIFインポート」をクリックするとデータのインポートが実行されます。 FLEXSCHE のデータを確認し、PingOne にあるデータが表示されれば成功です。
このようにCData ODBC Driver for PingOne とFLEXSCHE を組み合わせることで、簡単にPingOne のデータを活用した連携を実現できます。ぜひ、30日の無償評価版をお試しください。