Cognos BI でHCL Domino のデータを使ってデータビジュアライゼーションを作成

古川えりか
古川えりか
コンテンツスペシャリスト
Cognos Business Intelligence のODBC データソースとしてHCL Domino にアクセスし、Cognos Report Studio でデータビジュアライゼーションを作成。

CData ODBC Driver for Domino を使って、HCL Domino のデータをドラッグアンドドロップ スタイルのCognos Report Studio に連携できます。この記事では、データビジュアライゼーションをSQL を書かずに作成するグラフィカルアプローチと、HCL Domino がサポートする任意のSQL クエリを実行する方法の両方について説明します。

CData ODBC ドライバとは?

CData ODBC ドライバは、以下のような特徴を持った製品です。

  1. HCL Domino をはじめとする、CRM、MA、会計ツールなど多様なカテゴリの270種類以上のSaaS / オンプレデータソースに対応
  2. 多様なアプリケーション、ツールにHCL Domino のデータを連携
  3. ノーコードでの手軽な接続設定
  4. 標準SQL での柔軟なデータ読み込み・書き込み

CData ODBC ドライバでは、1.データソースとしてHCL Domino の接続を設定、2.Cognos BI 側でODBC Driver との接続を設定、という2つのステップだけでデータソースに接続できます。以下に具体的な設定手順を説明します。

CData ODBC ドライバのインストールとHCL Domino への接続設定

まずは、本記事右側のサイドバーからDomino ODBC Driver の無償トライアルをダウンロード・インストールしてください。30日間無償で、製品版の全機能が使用できます。

下記の手順に従って、[Cognos Administration]ツールのライブ HCL Domino に接続を確立します。この接続はCognos BI 全体で使えます。このドライバーを使って、すべてのユーザーは一貫したデータおよびメタデータ:リアルタイムHCL Domino を利用できます。

  1. 接続プロパティの指定がまだの場合は、ODBC DSN (データソース名)で行います。Microsoft ODBC データソースアドミニストレーターを使ってODBC DSN を作成および設定できます。

    64ビット版のマシンからCognos を実行している場合は、32ビット版ODBC データソースアドミニストレーターを起動する必要があります。以下のコマンドで開くことができます:

    C:\Windows\sysWOW64\odbcad32.exe 

    Domino への接続

    それでは、Domino のデータに接続していきましょう。接続するには、以下のプロパティを設定してください。

    • URL:Domino データベースをホスティングしているサーバーのホスト名またはIP アドレス。Domino データベースをホスティングしているサーバーのポートを含めます。例:http://sampleserver:1234/
    • DatabaseScope:Domino Web UI でのスコープ名。CData 製品は、指定されたスコープに適合するスキーマのフォームとビューを公開します。Domino Admin UI で、サイドバーのScopes メニューを選択してください。このプロパティを既存のスコープ名に設定します

    Domino での認証

    続いて、認証方法を設定しましょう。Domino では、ログインクレデンシャル(OAuthPassword)またはMicrosoft Entra ID(AzureAD)のいずれかによる認証をサポートしています。

    ログインクレデンシャル

    ログインクレデンシャルで認証するには、以下のプロパティを設定してください:

    • AuthSchemeOAuthPassword
    • User:認証するDomino ユーザーのユーザー名
    • Password:認証するDomino ユーザーに関連付けられたパスワード

    ドライバーがログインクレデンシャルを使用して、自動的にOAuth トークン交換を実行します。

    Microsoft Entra ID(Azure AD)

    この認証方法は、Azure Active Directory をIdP として使用してJWT トークンを取得します。Azure Active Directory にカスタムのアプリケーションを作成し、それをIdP として設定する必要があります。詳しい手順については、ヘルプドキュメントの指示に従ってください。その後、以下のプロパティを設定します。

    • AuthSchemeAzureAD
    • InitiateOAuth:これをGETANDREFRESH に設定します。InitiateOAuth を使用すると、OAuth 交換の繰り返しやOAuthAccessToken の手動設定を避けることができます
    • OAuthClientId:カスタムAzure AD アプリケーションの作成時に取得したクライアントID
    • OAuthClientSecret:カスタムAzure AD アプリケーションの作成時に取得したクライアントシークレット
    • CallbackURL:カスタムAzure AD アプリケーションの登録時に指定されたリダイレクトURI。例えば、https://localhost:33333
    • AzureTenant:データにアクセスするために使用されるMicrosoft Online テナント。companyname.microsoft.com 形式の値またはテナントID のいずれかを指定してください

    テナントID は、Azure ポータルのAzure Active Directory > プロパティページに表示されているディレクトリID と同じです。

    Microsoft ODBC データソースアドミニストレーターで必要なプロパティを設定する方法は、ヘルプドキュメントの「はじめに」をご参照ください。

  2. [Cognos Administration]を開いて新しいデータソースを追加します。[Data Source Connections]をクリックして[ODBC]オプションを選択したら、システム DSN とユーザーフレンドリーな名前を入力します。[Retrieve Objects]をクリックして CData HCL Domino データベースオブジェクトを選択します。

    データソースの追加に使用する DSN(Salesforce の例)

データビジュアライゼーションをレポートに追加

これで、[Source Explorer]からレポートオブジェクトにカラムをドラッグアンドドロップしてCognos Report Studio のHCL Domino のデータ にレポートを作成できます。以下では、最新データを表示するチャートを持つシンプルなレポートを作成する方法を説明します。

レポートをビルドすると、Cognos Report Studio はSQL クエリを生成して実行をドライバーに依存します。ドライバーはクエリをHCL Domino API へのリクエストに変換します。ドライバーはリアルタイムHCL Domino へのクエリの実行を基になるAPI に依存します。

アグリゲートに基づきチャートを作成

[Source Explorer]からオブジェクトのdimentions にカラムをドラッグアンドドロップするだけで、Cognos レポートオブジェクトとしてHCL Domino のデータを使うことができます。チャートのSeries dimension のカラムは自動的にグループ化されます。

さらにCognos は、measure dimesion のロジカルなデフォルトアグリゲート関数をデータタイプに基づいて設定します。この例では、デフォルトをオーバーライドしています。[Data Items]タブの Address カラムをクリックしてAggregate Function プロパティを Not Applicableに設定します。Rollup Aggregate Function プロパティは Automatic に設定する必要があります。

円グラフで使用されるHCL Domino のカラム(Salesforce の例)

Query オブジェクトをSQL に変換

必要なクエリを把握している、あるいは生成されたクエリを調整したい場合は、query オブジェクトをSQL ステートメントに変換します。クエリがSQL に変換されると、UI コントロールはquery オブジェクトで利用できなくなります。下記の手順に従って、ユーザー定義のSQL でチャートを埋めます。

Cognos はユーザー定義クエリの実行をドライバーに依存します。ドライバーのSQL エンジンを使うと、キャッシュデータのコピーがないためクエリは常に最新の結果を返します。

  1. [Query Explorer]の上にカーソルを置き、[Queries]フォルダをクリックしてレポートにquery オブジェクトを表示します。
  2. 自動生成されたクエリを編集したい場合は、Generated SQL プロパティにあるquery オブジェクトのボタンをクリックします。ダイアログが表示されたら、[Convert]をクリックします。

    新たにSQL ステートメントを入力したい場合は、query オブジェクトと一緒にSQL オブジェクトをドロップします。

  3. SQL オブジェクトのプロパティを編集:SQL プロパティでHCL Domino のデータソースを選択してSQL Syntax プロパティをNative に設定します。
  4. SQL プロパティのボタンをクリックし、ダイアログが表示されたらSQL クエリを入力します。この例では以下のクエリを使います:

    SELECT Name, Address FROM ByName WHERE City = 'Miami'
  5. query オブジェクトのプロパティを編集:Processing プロパティを[Limited Local]に設定します。この値はquery オブジェクトをSQL に変換するために必要です。

    SQL ステートメントから作成された query オブジェクト

クエリ結果をチャートで使用

これで[Data Items]タブのオブジェクトとしてSQL クエリ結果にアクセスできるようになりました。下記の手順に従って、クエリ結果を使ってチャートを作成します;例えば、ByName テーブルからAddress を各Name へ。

  1. [Page Explorer] 上にカーソルを置きpage オブジェクトをクリックしてページに戻ります。
  2. 円グラフをツールボックスからワークスペース上にドラッグします。
  3. チャートのプロパティで、Query プロパティに先ほど作成したクエリの名前を設定します。
  4. [Data Items]タブをクリックしてカラムをx およびy 軸上にドラッグします。この例ではName カラムをSeries (pie slices) ボックスに、Address カラムをDefault Measure ボックスにドラッグします。
  5. Default Measure (Address 値) のデフォルトのプロパティを編集します:[Aggregate Function]ボックスで "Not Applicable" オプションを選択します。

SQL クエリの実行結果を表示した円グラフ(Salesforce の例)

レポートを実行してクエリ結果を追加します。

レンダリングされたレポート(Salesforce の例)

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

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

 ダウンロード

詳細:

HCL Domino Icon HCL Domino ODBC Driver お問い合わせ

HCL Domino ODBC Driver を使って、ODBC 接続をサポートする多様なツールからHCL Domino にデータ連携。

DB のようにHCL Domino データへODBC インターフェースでアクセス可能に。