ノーコードでクラウド上のデータとの連携を実現。
詳細はこちら →CData
こんにちは!ドライバー周りのヘルプドキュメントを担当している古川です。
CData JDBC Driver for XML はJDBC 標準をサポートするビジネスインテリジェンスおよびデータマイニングツールからリアルタイムXML に接続することを可能にします。この記事では、XML をSpagoBI Studio のレポートに統合し、SpagoBI サーバーでホストする方法を説明します。
以下のステップに従ってSpagoBI サーバーでJDBC data source for XML を作成します。
XML ドライバーリソースをコンテクストに追加します。以下のリソース定義をserver.xml の[GlobalNamingResources]要素に追加できます。
<Resource name="jdbc/xml" auth="Container" type="javax.sql.DataSource" driverclassname="cdata.jdbc.xml.XMLDriver" factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" maxactive="20" maxidle="10" maxwait="-1"/>
<ResourceLink global="jdbc/xml" name="jdbc/xml" type="javax.sql.DataSource"/>
SpagoBI サーバーのリソースにドライバーを追加した後、データソースを追加します。SpagoBIで[Resources]->[Data Source]->[Add]と進み、以下の情報を入力します。
データソースを認証するには、データプロバイダーのドキュメント内の「はじめに」セクションをご覧ください。 データプロバイダーはXML API を双方向データベーステーブルとしてモデル化し、XML ファイルをread-only ビュー(ローカルファイル、人気のクラウドサービスに格納されたファイル、およびFTP サーバー)としてモデル化します。 HTTP Basic、Digest、NTLM、OAuth、およびFTP を含む主な認証スキームはサポートされています。認証のガイドについては、データプロバイダーのドキュメント内の「はじめに」セクションをご覧ください。
URI と認証値を設定した後で、DataModel を設定することでデータの構造によりよくマッチするようデータの抽象化を調整できます。
DataModel プロパティはデータがどのようにテーブルとして抽象化されるかを制御するプロパティであり、次の基本的な設定を調整します。
リレーショナルな抽象化の設定についての詳細は、「XML データのモデリング」セクションを参照してください。次の例で使用されているサンプルデータも存在します。 このデータには、人名、その人たちが所有する車、車に施されたさまざまなメンテナンスに関する情報が含まれます。
JDBC URL の構成については、XML JDBC Driver に組み込まれている接続文字列デザイナを使用してください。JAR ファイルのダブルクリック、またはコマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.xml.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
以下は一般的なJDBC URL です。
jdbc:xml:URI=C:/people.xml;DataModel=Relational;
以下のステップに従い、SpagoBI StudioでXML に基づいたレポートを作成します。SQL クエリの結果をチャートに挿入するデータセットを作成します。次のセクションでは、このレポートをSpagoBI サーバーでホストします。
初めに、SpagoBI Studio のレポートからXML に接続してください。
jdbc:xml:URI=C:/people.xml;DataModel=Relational;
必要な接続プロパティを取得するためのガイドについては、ドライバーヘルプの[Getting Started]チャプターを見てください。
XML に接続した後、SQL クエリの結果を含むデータセットを作成します。
SELECT [people].[personal.age] AS age, [people].[personal.gender] AS gender,
[people].[personal.name.first] AS first_name, [people].[personal.name.last] AS last_name, [vehicles].[model], FROM
[people] JOIN [vehicles] ON [people].[_id] = [vehicles].[people_id]
データセットを使用して、レポートオブジェクトにデータを入力できます。以下のステップに従って、チャートを作成します。
以下のステップに従って、SpagoBI サーバーでリアルタイムXML に基づいてドキュメントをホストできます。前のセクションで作成したレポートをテンプレートとして使用します。レポートユーザーがリアルタイムデータにアクセスできるようにするには、サーバー上のXML JDBC データソースに置き換えられるプレースホルダパラメータを作成します。
[Property Binding]ノードで、JDBC Driver のURL バインディングプロパティurl パラメータに設定します。プロパティのボックスをクリックします。[Category]セクションで[Report Parameters]を選択します。[Subcategory]セクションで[All]を選択し、パラメータをダブルクリックします。
JavaScript構文に以下のように入力することもできます。
params["url"].value
続いて、SpagoBI サーバーでレポート用の新しいドキュメントを作成します。
[Template]セクションで、[Choose File]をクリックします。レポートプロジェクトを含むフォルダに移動します。.rptdesign ファイルを選択します。
Noteプロジェクトへのパスは、プロジェクトプロパティで確認できます。
サーバーでレポートを実行すると、プレースホルダurl パラメータがサーバーで定義されたJDBC URL に置き換えられます。