API Server とSage 300 ADO.NET Provider を使用して、Microsoft PowerPivot からSage 300 のデータにアクセス
この記事では、API Server を使用してMicrosoft Excel のPowerPivot ビジネスインテリジェンスツールでデータを活用する方法について説明します。以下のステップに従って、Power Pivot でSage 300 のデータを取得します。
API Server の設定
以下のリンクからAPI Server の無償トライアルをスタートしたら、セキュアなSage 300 OData サービスを作成していきましょう。
Sage 300 への接続
PowerPivot からSage 300 のデータを操作するには、まずSage 300 への接続を作成・設定します。
- API Server にログインして、「Connections」をクリック、さらに「接続を追加」をクリックします。
- 「接続を追加」をクリックして、データソースがAPI Server に事前にインストールされている場合は、一覧から「Sage 300」を選択します。
- 事前にインストールされていない場合は、コネクタを追加していきます。コネクタ追加の手順は以下の記事にまとめてありますので、ご確認ください。
CData コネクタの追加方法はこちら >> - それでは、Sage 300 への接続設定を行っていきましょう!
-
Sage 300 には、Sage 300 Web API で通信するための初期設定が必要となるます。
- Sage 300 のユーザー向けのセキュリティグループを設定します。Sage 300 のユーザーに、Security Groups の下にあるbSage 300 Web API オプションへのアクセスを付与します(各モジュール毎に必要です)。
- /Online/Web と/Online/WebApi フォルダ内のweb.config ファイルを両方編集して、AllowWebApiAccessForAdmin のキーを true 設定します。webAPI アプリプールを再起動すると設定が反映されます。
- ユーザーアクセスを設定したら、https://server/Sage300WebApi/ をクリックして、web API へのアクセスを確認してください。
Basic 認証を使用してSage 300 へ認証します。
Basic 認証を使用して接続する
Sage 300 に認証するには、次のプロパティを入力してください。プロバイダーは、クッキーを使用してSage 300 が開いたセッションを再利用することに注意してください。 そのため、資格情報はセッションを開く最初のリクエストでのみ使用されます。その後は、Sage 300 が返すクッキーを認証に使用します。
- Url:Sage 300 をホストするサーバーのURL に設定します。Sage 300 Web API 用のURL を次のように作成してください。 {protocol}://{host-application-path}/v{version}/{tenant}/ 例えば、 http://localhost/Sage300WebApi/v1.0/-/ です。
- User:アカウントのユーザー名に設定します。
- Password:アカウントのパスワードに設定します。
- 接続情報の入力が完了したら、「保存およびテスト」をクリックします。
Sage 300 には、Sage 300 Web API で通信するための初期設定が必要となるます。
- Sage 300 のユーザー向けのセキュリティグループを設定します。Sage 300 のユーザーに、Security Groups の下にあるbSage 300 Web API オプションへのアクセスを付与します(各モジュール毎に必要です)。
- /Online/Web と/Online/WebApi フォルダ内のweb.config ファイルを両方編集して、AllowWebApiAccessForAdmin のキーを true 設定します。webAPI アプリプールを再起動すると設定が反映されます。
- ユーザーアクセスを設定したら、https://server/Sage300WebApi/ をクリックして、web API へのアクセスを確認してください。
Basic 認証を使用してSage 300 へ認証します。
Basic 認証を使用して接続する
Sage 300 に認証するには、次のプロパティを入力してください。プロバイダーは、クッキーを使用してSage 300 が開いたセッションを再利用することに注意してください。 そのため、資格情報はセッションを開く最初のリクエストでのみ使用されます。その後は、Sage 300 が返すクッキーを認証に使用します。
- Url:Sage 300 をホストするサーバーのURL に設定します。Sage 300 Web API 用のURL を次のように作成してください。 {protocol}://{host-application-path}/v{version}/{tenant}/ 例えば、 http://localhost/Sage300WebApi/v1.0/-/ です。
- User:アカウントのユーザー名に設定します。
- Password:アカウントのパスワードに設定します。
API Server のユーザー設定
次に、API Server 経由でSage 300 にアクセスするユーザーを作成します。「Users」ページでユーザーを追加・設定できます。やってみましょう。
- 「Users」ページで ユーザーを追加をクリックすると、「ユーザーを追加」ポップアップが開きます。
-
次に、「ロール」、「ユーザー名」、「権限」プロパティを設定し、「ユーザーを追加」をクリックします。
-
その後、ユーザーの認証トークンが生成されます。各ユーザーの認証トークンとその他の情報は「Users」ページで確認できます。
Sage 300 用のAPI エンドポイントの作成
ユーザーを作成したら、Sage 300 のデータ用のAPI エンドポイントを作成していきます。
-
まず、「API」ページに移動し、
「 テーブルを追加」をクリックします。
-
アクセスしたい接続を選択し、次へをクリックします。
-
接続を選択した状態で、各テーブルを選択して確認をクリックすることでエンドポイントを作成します。
OData のエンドポイントを取得
以上でSage 300 への接続を設定してユーザーを作成し、API Server でSage 300 データのAPI を追加しました。これで、OData 形式のSage 300 データをREST API で利用できます。API Server の「API」ページから、API のエンドポイントを表示およびコピーできます。
さらに、「Settings」->「Server」をクリックし、Excel との互換性のために「デフォルトフォーマット」を「XML (Atom)」に設定します。
API Server ユーザーを認証する
作成するOData サービスを決定したら、「Settings」->「Users」とクリックしてユーザーを認証します。API Server は、認証トークンベースの認証を使用して、主要な認証スキームをサポートします。IP アドレスを使用してアクセスを制限することも可能です。デフォルトではローカルマシンへの接続のみが許可されます。SSL を使用すれば、接続の認証だけでなく暗号化も可能です。
Power Pivot でSage 300 テーブルをインポートする
以下のステップに従って、必要に応じて更新もできるテーブルをインポートします。
- Excel で「PowerPivot」タブの「PowerPivot Window」アイコンをクリックしてPowerPivot を開きます。
- 「Home」->「Get External Data」->「From Data Service」->「From OData Data Feed」とクリックします。
-
認証パラメータを追加します。「Advanced」をクリックして「Integrated Security」オプションを「Basic」に設定します。CData API Server にアクセスできるユーザーのユーザーID とパスワードを入力する必要があります。 パスワードをユーザーの認証トークンに設定します。
-
「Base URL」ボックスで、CData API Server のOData URL を入力します。例:http://localhost:8032/api.rsc
-
インポートするテーブルを選択し、「Finish」をクリックします。
Power Pivot でSage 300 のデータを操作することが可能になります。