...
Table of Contents | ||
---|---|---|
|
概要
SQLエディターを使用してレポートを作成するには、それを行えるアクセスレベルが必要です。また、SQL(Structured Query Language)に関する知識と、使用するデータベースに関する充分な理解も要求されます。
あるレポートが必要とされ、しかもそのデータベースに対するビューが存在しない場合、データに直接アクセスするためにSQLクエリーを書かなければなりません。そのためには、使用するビルダーを選択する際に「フリーハンドSQL」オプションを選択します。
フリーハンドSQLによるレポート作成
この作成方法の場合、すべてのフィルターと条件がSQL文に含まれている必要があります。表示されるテキストボックスにSQL文を入力します。
データベーステーブル一覧
データベースのテーブル一覧はSQL文の作成を補助するためのものです。テーブル名の左にあるアイコンをクリックするとその内容が表示されます。また、個々のエレメントがテーブルかビューであるかも示されます。
SQLの実行チェック
「テスト」をクリックすると作成したSQL文をテストすることができます。SQL文の実行でエラーが発生した場合、それを報告するエラーメッセージが表示されます(この内容はデータベースに依存します)。
SQL文の実行に成功すると以下のメッセージが表示されます。
SQLレポートの書式設定
SQLを作成しテストを済ませたら「→」をクリックして次に進みます。このページの使い方はドラッグ&ドロップレポートライターのレポートデータページとほとんど同じです。
ユーザーはレポートにグラフやドリルスルー、リンクレポートなどを追加できます。フィルターや集約などいくつかの機能は使用できません(それらはSQL文に記述されているものと見なされます)。
ユーザープロンプトとソースフィルター
SQLレポートにユーザープロンプトまたはソースフィルターを挿入するには、SQLクエリーにスクリプトを追加して、使用するカラム(列)を指定する必要があります。
...
フリーハンドSQLレポートの作成には、適切なユーザーアクセスが必要です。また、SQLレポートの作成には、「SQL(Structured Query Language)」に関する知識と、クエリ―を発行するデータソースに関する知識も要求されます。
特定のレポート要件はあるが、既存のデータベースに対するビューが存在しない場合、データに直接アクセスするためにSQLクエリ―を作成することができます。
高度な作成方法
ユーザーに適切な権限があれば、「新規レポート」ライトボックスで、「高度な作成方法」オプションを利用することができます。標準的なドラッグ&ドロップビルダーではなく、高度なレポート作成方法を使用するためには、このオプションを有効化しなくてはいけません。
作成方法ドロップダウンから、「フリーハンドSQL」オプションを選択します。
使用するビューを選択し、「レポート作成」ボタンをクリックして、フリーハンドSQLビルダーステップへ進みます。
フリーハンドSQLによるレポート作成
レポートビルダーのSQLステップが表示されます。画面の右側にSQLクエリ―を入力します。
左側のパネルには、選択したビューを通して利用可能な、テーブルやフィールドの一覧が表示されます。
データベーステーブル一覧
データベーステーブル一覧は、SQL作成をサポートします。テーブル名の横にあるアイコンをクリックすることで、テーブル内のフィールドが表示されます。一覧では、選択した要素がテーブルか、またはデータベースビューであるかを確認することもできます。
SQLの実行チェック
「テスト」ボタンをクリックすることで、SQL文のテストをすることができます。SQL文の実行でエラーが発生した場合は、その内容を示すメッセージが表示されます(これは、データベースに依存します)。
SQLの実行に成功すると、以下のメッセージが表示されます。
SQLレポートの書式設定
SQLの作成が完了したら、これを保存し、上部のメニューからデータステップに進みます。標準的なドラッグ&ドロップレポートビルダーに似た、レポートデータページが表示されます。
グラフ、ドリルスルー、マルチ表示レポートを追加することができます。フリーハンドSQLに含まれるため、フィルターや集約のようないくつかの機能は使用することができません。
ユーザープロンプト&ソースフィルター
SQLにユーザープロンプトやソースフィルターを含めるためには、どのカラム(列)を使用するのかを示すために、SQLクエリ―にスクリプトを追加しなくてはいけません。
- SQLレポートに、ユーザープロンプトやソースフィルター含めるためには、{?}パラメーターを追加します。
例:select 例:select * from client where country = {?}
複数の入力パラメーターを持つソースフィルターを挿入する場合は、以下のSQL文を使用します。
select * from client where country in ({?})(注意:括弧を追加します)。「テスト」をクリックすると、SQLの構文が有効かどうかを知らせ、同時にパラメーター数が表示されます。 (注意:カッコの追加が必要です) - 「テスト」をクリックすると、SQL構文が有効がどうかを示し、パラメーター数も表示されます。