Top / OpenOffice.org / Base / Study

OpenOffice.org/Base/Study

OpenOffice.orgについてのメモ。Baseの初心者向けのセミナードキュメントを作成する試みですが、書きかけですのでご注意。

基本講座

2時間コース

Baseの基礎知識(20分)

最初にデータベース及びOpenOffice.org Base(以下、Base)に関する基礎的な知識を学びます。注意すべき点は、Baseはデータベースのフロントエンドに機能を絞ったアプリケーションであって、データベース自体の機能は持っていないということです。この点は、同様の製品であるMicrosoft Access(以下、Access)と異なる点です。

Baseは、後述するHSQLDBを標準データベースとして使用します。このときだけ、AccessのMDBファイルのように、拡張子がODBとなるひとつのファイルにテーブル、フォーム、クエリー、レポートを格納することができます。しかし、Accessのような複数ユーザーで共有が可能なデータベース機能を持たないため、ODBファイルへのアクセスは、必ずひとりのユーザーが独占してしまいます。この点は注意してください。

ただし、フロントエンドの利点としては、目的に応じてデータベースを手軽に切り替えることができるということです。Windows環境では、AccessのMDBファイルも限定的ながら扱えますし、大規模なデータベースへの移行も考慮された設計になっています。

  • 表計算ソフトとの違い

    OpenOffice.orgでは、表計算ソフトのCalcでもデータベース的な利用が可能です。表計算ソフトで、データの集計や住所録などを作成した方もいらっしゃるでしょう。では、Baseを利用する利点は何でしょうか。アトランダムにあげてみると、次のような利点があります。
    • Calcの制限65536行×256列以上のデータを格納できます
      • 利用するデータベースによりますが、通常は記憶媒体の制限値から最大レコード数が決まります
      • HSQLDBの場合は、メモリ容量に制限がありますが、設定で回避できます
    • 高機能なデータベースアクセス用の言語SQLを利用できます
      • SQLは並べ替え、検索、抽出などデータを扱う際に便利な言語です
      • データベースを扱う際には必須の言語として国際規格になっています
      • HSQLDBのSQLはANSI標準をベースに拡張されたものです
    • SQLにより、複数のテーブルを関連付けし、複雑なデータの処理を可能にします
      • SQLのリレーション機能が利用できます
      • テーブルを複数に分割し、正規化が可能です
      • Accessとほぼ同等のリレーションシップ機能も備えています
    • データ入力を助けるフォームの作成が簡単に行えます
      • ウィザード形式で簡単にフォームを作成できます
      • 単票形式のフォームはデータ入力に最適です
    • データを保護する機能があります
      • フォームにはデータ参照のみ、新規データ追加のみなどの制限を加えることができます
    • データの重複入力を制限する機能があります
      • プライマリキー(主キー)を設定したフィールドは、重複入力不可となります
      • 任意のフィールドを重複不可とすることも可能です
    • アドレス帳、表計算ドキュメントなどの過去資産をデータベース化できます
      • データベースウィザードではデータベース以外のデータにも対応しています
      • OpenOffice.orgに登録したBaseファイルどうしでテーブルのコンバートが可能です
  • Baseの標準データベースとその他利用できるデータベース

    OpenOffice.org 2.0は、HSQLDBが付属します。このデータベースは単体でも動作しますが、Baseの利用の前に起動しておく必要はありません。ユーザーが外部データベースの存在を意識することなく、組み込まれた状態で利用できるように設計されています。
    HSQLDBは、OpenOffice.orgと同様、オープンソースプロジェクトのJavaベースのデータベースです。公式サイト http://hsqldb.sourceforge.net/ には英語ながら充実したドキュメントが公開されています。BaseのGUIから操作できないSQLコマンドについては、このドキュメントで調べることができます。
    HSQLDB以外以外では、表の主なデータベースを利用できます。

    標準状態で利用できるものODBC/JDBCなどの接続ドライバが必要なもの
    dBASEMySQL
    Adabas D(Star Suiteに付属)PostgreSQL
    アドレス帳(Outlook Express/Microsoft Outlook/Mozilla Mail/LDAP)Firebird
    表計算ドキュメント(OpenOffice.org Calc/Microsoft Excel)SQL Server
    テキスト(CSVなど書式の定まったテキストファイル)Oracle
    Microsoft Access(Windowsのみ)SQLite

  • Baseのユーザーインターフェース

    Baseのユーザーインターフェースは、その他のOpenOffice.orgアプリケーションとは異なるデザインになっています。
    ウインドウ内に作業領域がなく、左側にテーブル、クエリー、フォーム、レポートの機能のカテゴリ、右上に各カテゴリ別のメニュー、右下に作成されたオブジェクトが表示され、それぞれをクリックすることで、カテゴリの切り替え、メニューの選択、オブジェクトの表示を可能にします。
    これは、Accessとほぼ同じユーザーインターフェースなので、同ソフトを利用したことがある方には、すぐに機能がわかるものとなっています。

  • データベース関連の用語

    • データベース用語
リレーショナルデータベース
RDBMS(relational database management system)という略称でも呼ばれます。表計算ソフトのようなテーブル形式で管理されるデータベースシステムです。複数のテーブルをリレーション(関連付ける)することで、高度なデータ管理を行うことができます。
フィールド
RDBMSのデータは、テーブルに格納されますが、さらにフィールドと呼ばれる列に分けて格納します。
レコード
テーブル作成時に設定したフィールド1行分のデータをレコードと呼びます。
プライマリキー
RDBMSでは、必ず1つのフィールドに設定します。プライマリキーに設定されたフィールドは、重複したデータを持ちません。このことでレコードの一意威勢を保つことが可能になります。Accessなどでは主キーと呼ばれます。
JDBC
Java DataBase Connectivityの略。Javaで作成されたデータベース接続ドライバです。主にMySQL、PostgreSQL、Firebirdなどと接続する際に用います。HSQLDBでは自動的にJDBCドライバが用いられています。
ODBC
Open DataBase Connectivityの略。Microsoft社の提唱によって生まれたデータベース接続用ドライバです。主にSQL Server、Oracleなどと接続する際に用います。なお、オープンソースで開発されたUNIX互換OS用ODBC環境もあります。
SQL
Structured Query Languageの略です。「構造化問い合わせ言語」とも訳されますが、訳語で呼ばれることはほとんどありません。Baseのクエリーは、SQLで作成しますが、GUIを備えているので、対話的にSQL文を作成できます。
ビュー
SQLを用いて作成したテーブル。ただし、作成後はSQLの編集はできなくなります。SQL文を見せたくないときや、クエリーを作成する場合、テーブルとして読み込みたいときに利用します。
コントロール
データ入力時の操作をわかりやすく補助してくれる、フォーム上の便利な部品です。代用的なものとして、ボタンやリストボックスがあります。
  • フィールドとレコード

    Baseのテーブルでは、図のように列部分の項目を「フィールド」、行部分を「レコード」と呼びます。

データベースの登録(10分)

それでは、具体的なBaseの操作を学びます。

まずは、Baseにデータベースを登録してみましょう。ここで、データベースの「作成」ではなく「登録」と呼んでいることに注意してください。基礎知識で学んだように、Baseはデータベースのフロントエンドですので、既存のデータベースを登録することから始めることになるわけです。実際には、言葉の使い分けに過ぎませんが、頭のどこかに"Baseはデータベースのフロントエンドである"という概念を置いておいてください。また、Writer、Calcからデータベースを操作する場合や配布されたBaseファイルを利用する際には、「登録」という考え方が必要になります。この件は、後で学びます。

データベースの登録は、データベースウィザードを利用します。通常はOSのプログラムメニューから[OpenOffice.org Base]を選べば、データベースウィザードが起動します。すでに何らかのOpenOffice.orgアプリケーションが起動している場合は、ファイルメニューから[新規作成]−[データベース]、または標準バー左のOpenOffice.orgボタン右の三角マークをクリックして[データベース]を選びます。

OSのプログラムメニュー画面

OpenOffice.orgからBaseを起動する

  • データベースウィザードでの登録

    OpenOffice.orgに付属する標準のデータベースであるHSQLDBを利用する場合は、たった2ステップでウィザードは終了します。つまり、以下で説明するステップ1「データベースの選択」、ステップ2「保存して実行」の2つです。
    • ステップ1「データベースの選択」

      データベースにHSQLDBを選ぶ場合は、初期設定のまま[次へ]ボタンをクリックします。
    • ステップ2「保存して続行」

      このステップでは、どのデータベースを選んだ場合でも基本的には初期設定のまま[完了]ボタンをクリックします。なお、ダイアログには「ウィザードを使ってOpenOffice.orgにデータベースを登録しますか。」と表示されており、初期設定では「はい、登録します」が選ばれています。Baseではデータベースを「登録」するものという考え方を物語っています。

では、実際にデータベースを登録してみてください。保存の際のファイル名は「database1」としてください。OpenOffice.org Baseの新しいデータベース「database1」が表示されれば完了です。

ワンポイント
「既存のデータベースファイルを開きます。」を選び、「最近使用されたもの」欄や[開く]ボタンをクリックしてファイルマネージャから作成済みのBaseファイルを指定します。[完了]ボタンをクリックすれば、Baseファイルを読み込みます。


ワンポイント
「既存のデータベースに接続」を選ぶと、ドロップダウンメニューで「MySQL」「JDBC」「ODBC」などの選択肢が表示されます。Windows環境では「Microsoft Access」もあります。データベースに合わせて適切な項目を選んでください。

テーブルの作成(10分)

SQL Server、MySQLなどの本格的なデータベースでは、管理者があらかじめテーブルを作成していることが多いと思いますが、標準データベースのHSQLDBを登録して作成されたBaseファイルには、テーブルがありません。まずはテーブルを作成することからはじめないといけません。

さて、そのテーブルですが、データベースではテーブルの設計次第で管理が容易になったり、処理能力に差が出たりします。その分、奥が深く、勉強が必要な部分です。また、フィールドには、格納するデータの種類によってテキスト型、数値型など、どのようなデータ型にするのかも決定しなければなりません。この点も、初心者には難しいところです。そこでBaseでは、テーブルウィザードにサンプルテーブル(個人用15種類、社用22種類)を用意し、その中から選択できるようになっているので、誰もが簡単にデータベースの世界へ足を踏み入れるができます。このあたりは、Accessと同様、初心者を意識したソフト設計になっています。実際にテーブルウィザードを操作しながら、使い方を学びましょう。

  • テーブルウィザードの使用方法

    今回は、サンプルテーブルをもとに住所テーブルを作成してみます。
    • テーブルウィザードの起動

      テーブルを作成するために、テーブルウィザードを起動しましょう。操作手順は以下のとおりです。
      1. Baseファイルのデータベースペインの[テーブル]を選択します
      2. タスクペインの「ウィザードを使用してテーブルを作成...」をクリックします
  • ステップ1「フィールドの選択」

    カテゴリに分けられたサンプルから、テーブルのフィールドを選択するステップです。「社用」には「顧客」や「商品」「請求書」など、「個人用」には「住所」や「運動記録」「レシピ」などの豊富なサンプルテーブルが用意されています。
    1. 「カテゴリ」で「個人用」を選択します
    2. 「サンプルテーブル」には「住所」を選びます
    3. 「使用可能なフィールド」欄にサンプルテーブルのフィールド一覧が表示されるので、この中から必要なフィールドを、[>]ボタンをクリックして順番に右の「選択されたフィールド」へ登録していきます
    4. [次へ]ボタンをクリックします

    ここでは「住所ID」「苗字」「名前」「住所」「カード送付」の順に登録します。

  • ステップ2「種類と書式の設定」

    選択された各フィールドを確認し、種類と書式(データ型)の設定、変更を行うステップです。「フィールドの情報」欄でフィールドの種類などをチェックしてください。サンプルテーブルによっては、同じ数値フィールドでも「整数[INTEGER]」や「数値[NUMRIC]」が選ばれていることもあります。サンプルテーブルを利用した場合は、ほぼ適切なフィールドの種類、書式となっているはずです。ただし、必要な場合はここで修正することも可能です。実際、住所録ではフィールドの種類を変更してみます。
    1. 「選択されたフィールド」欄で「カード送付」を選んでください
    2. 「フィールド情報」欄のフィールドの種類を「整数[INTEGER]」に変更します。
    3. [次へ]ボタンをクリックします
ワンポイント
「カード送付」フィールドのフィールドの種類は、もともと「はい/いいえ[BOOLEAN]でしたが、格納されたデータの値をクエリーウィザードで利用できない不具合があるので、あえて変更しました。
  • ステップ3「プライマリキーの設定」

    プライマリキーを設定するステップです。プライマリキーを新たに設定したり、複数のフィールドの組み合わせでプライマリキーを作成することも可能です。RDBMSでは、必ずひとつプライマリキーを設定しないといけません。
    1. 今回は、「既存のフィールドをプライマリキーとして使用」を選択します
    2. 「フィールド名」欄に「住所ID」を選択します
    3. [次へ]ボタンをクリックします
ワンポイント
プライマリキーは、数値フィールドだけに限りません。テキストフィールドを指定することも可能です。登録されるデータの重複を想定しないフィールドなら、プライマリキーを設定することができます。
  • ステップ4「テーブルの作成」

    テーブル名の指定とテーブル作成後の処理を設定するステップです。テーブル名欄には、サンプルテーブルの名前が自動的に指定されます。
    1. 変更が必要な場合以外は、初期設定のまま[完了]ボタンをクリックします
    2. 作成されたテーブルが表示されます
データ型〜Accessとの比較
HSQLDBの主なデータ型Accessのデータ型
長整数[TINYINT]長整数型
整数[INTEGER]整数型
数値[NUMRIC]通貨型
浮動小数点[FLOAT]単精度浮動小数点型
イメージ[LONGVARBINARY]OLEオブジェクト型
テキスト[VARCHAR]テキスト型
メモ[LONGVARCHAR]メモ型
はい/いいえ[BOOLEAN]Yes/No型
日付/時刻[TIMESTAMP]日付/時刻型
オートナンバー型
ハイパーリンク型


ワンポイント
Baseのオートナンバー型は、「整数[INTEGER]」に指定したフィールドの「自動入力値」欄を「はい」とすることで実現できます。
  • テーブルにデータを入力しよう

    作成されたテーブルを使ってみます。テーブルへの入力は、Calcなどの表計算ソフトと穂同じように操作できます。「住所ID」に「1」、「苗字」「名前」「郵便番号」「住所」には、ご自分の名前など適当に入力してください。「カード送付」には、カードを送る相手には「1」を、送らない相手には「0」を入力するというルールを設けておきます。こちらは、基礎編のクエリーや応用編の「実用的なフォームのデザイン」の中で、ルールどおりに入力できるフォームの作成する際の題材となります。

フォームの作成(20分)

データベースでは、データを入力する際、テーブルではなく、通常はフォームという入力専用にデザインされた画面を用います。用途に応じて、表計算ソフトのようなテーブル形式やカード型データベースのような単票形式を選べます。

Baseでは、誰もが簡単な操作でフォームを作成できるようフォームウィザードが用意されています。実際にフォームウィザードを操作しながら、使い方を学びましょう。

  • フォームウィザードの使用方法

    今回は、テーブルウィザードで作成した「住所」テーブルをもとにフォームを作成してみます。なお、フォームウィザードには、メインテーブルとサブテーブルからサブフォームを作成する機能もありますが、基本編ではサブフォームには触れません。そのためフォームウィザードの全8ステップのうち、基本編では6ステップの操作を紹介します。
    • フォームウィザードの起動

      1. Baseファイルのデータベースペインの[フォーム]を選択します
      2. タスクペインの「ウィザードを使用してフォームを作成...」をクリックします

      フォームウィザードを起動すると、ウィザードダイアログとともにバックにWriterドキュメントが立ち上がります。こちらがのちにフォームとなるものです。

  • ステップ1「フィールドの選択」

    フォームで表示するフィールドを選択するステップです。「テーブルまたはクエリー」欄から作成済みのテーブルかクエリーを選び、「使用可能なフィールド」欄に表示されたフィールドを[>][>>]ボタンをクリックして、右の「フォーム内のフィールド」欄に登録します。[>]ボタンを使えば、テーブルの表示順ではなく、自由な表示順でフォームを作成できます。
    1. 今回は、「テーブルまたはクエリー」欄で「テーブル.住所」を選択します
    2. [>>]ボタンをクリックして「住所」テーブルのフィールドをすべて利用します
    3. [次へ]ボタンをクリックします
  • ステップ2「サブフォームの設定」

    サブフォームについては応用編で紹介しますので、このステップは何も設定せずに[次へ]ボタンをクリックします。
  • ステップ5「コントロールの整列」

    ステップ2でサブフォームを設定していませんので、メインフォームだけの設定となります。「メインフォームの整列」欄で「欄で、ラベル書きは左に」「欄で、ラベル書きは上に」「データ表として」「ブロックで、ラベルは上に」を選ぶと、バックのWriterドキュメント上のコントロールの配置デザインが変わります。このプレビューを参考に、目的のデザインを選ぶことができます。
    1. 今回は、「メインフォームの整列」欄は、「欄で、ラベル書きは左に」を選択します
    2. 「ラベルの位置」欄は自動的に「左揃え」となります
    3. [次へ]ボタンをクリックします
  • ステップ6「データエントリの設定」

    作成後のフォームのデータ入力作業に関わる設定を行うステップです。新規の入力データのみを表示したり、既存データの変更をおこなえないようにするなどの設定を行えます。データ入力をオペレータなどの第三者に任せる場合になどに便利でしょう。予期しないデータの書き換えやレコードの消失などを防ぎたい場合は、このステップ2で「新規データを入力するための専用フォームです」を選べばよいでしょう。
    1. 初期設定である「フォームにはすべてのデータが表示されます」が選択されているのを確認します
    2. [次へ]ボタンをクリックします
  • ステップ7「スタイルの適用」

    フォームのスタイルやフィールド枠のデザインを設定するステップです。このステップでも設定を変更すると、バックのWriterドキュメントのデザインが変化するので、気に入った設定を選択できます。今回は、初期設定から変更してみましょう。
    1. 「スタイルの摘要」欄の初期設定は「ベージュ」になっていますが、「ライトグレー」に変更します
    2. 「フィールド枠」欄は、初期設定の「3Dルック」のままにします
    3. [次へ]ボタンをクリックします
ワンポイント
設定したフォームをそのまま印刷することを想定している場合は、「フィールド枠」欄を「枠なし」に設定するとよいでしょう。
  • ステップ8「名前の設定」

    フォームの名前やフォーム作成後の作業を設定するステップです。初期設定では、「フォーム名」欄は自動的に設定され、フォーム作成後の作業には、「フォームを使用」が選択されています。今回は、そのまま[完了]ボタンをクリックしてください。

これでフォームウィザードが終了しました。自動的に作成されたフォームが表示されます。

  • フォーム画面の操作方法

    データの入力は、それぞれのフィールドに入力し、[Tab]や[Enter]、[→]キーで次のフィールドに移動します。フィールドの最後では、入力を終えたレコードを保存し、次のレコードを表示します。また、[Shift]+[Tab]でフィールドを戻ることも可能です。
    • フォームナビゲーションの機能

クエリーの利用方法(20分)

クエリーは、既存のデータベースに接続して必要なデータを検索、抽出、収集したり、計算する機能です。クエリーは、通常はSQLで記述しますが、Baseならウィザードを使って簡単に作成することができます。実際にクエリーウィザードを操作しながら、使い方を学びましょう。

  • クエリーウィザードの使用方法

    今回は、あらかじめ用意しておいたBaseのサンプルファイル「sample.odb」の「住所」テーブルをもとにクエリーを作成してみます。すでに何人かのデータが入力されています。「住所」テーブルの「カード送付」フィールドに「1」、つまり年賀状などのカードを送る予定の方々のレコードを抽出するクエリーです。基本編では、集計関数を用いた集計を行えるサマリークエリーやグループ化には触れません。そのためクエリーウィザードの全8ステップのうち、基本編では6ステップの操作を紹介します。
  • クエリーウィザードの起動
    1. Baseファイルのデータベースペインの「クエリー」を選びます
    2. タスクペインの「ウィザードを使用してクエリーを作成...」をクリックします
  • ステップ1「フィールド選択」

    クエリーで表示するフィールドを選択するステップです。「テーブル」欄から作成済みのテーブルを選び、「利用できるフィールド」欄に表示されたフィールドを[>]や[>>]ボタンをクリックして、右の「クエリー内のフィールド」欄に登録します。[>]ボタンを使えば、テーブルの表示順ではなく、自由な表示順でクエリーを作成できます。
    1. 今回は、「テーブル」欄で「テーブル.住所」を選択します
    2. [>>]ボタンをクリックして「住所」テーブルのフィールドをすべて利用します
    3. [次へ]ボタンをクリックします
  • ステップ2「並べ替え順序」

    レコードの並べ替え順序を設定するステップです。ダイアログを見るとわかるように4レベルまで設定できます。「昇順」なら数値の小さいほうから、「降順」なら大きいほうから並びます。なお、フィールドの種類が「テキスト」の場合は、英数字、日本語文字などの文字コード順になります。
    1. 今回は、「並べ替え基準」に「住所ID」を指定します。
    2. 「昇順」を選択します
    3. [次へ]ボタンをクリックします
  • ステップ3「検索条件」

    フィールドに対する検索条件を指定するステップです。ダイアログを見るとわかるように3レベルまで指定可能です。2レベル以上設定する場合、「次のすべてを一致させる」を選択すればAND検索に、「次のいずれも一致させる」を選択した場合はOR検索になります。Baseの初期設定では「次のすべてを一致させる」が選択されています。1レベルの条件の場合は、どちらを選んでも検索結果に影響ありません。
    「住所」テーブルから「カード送付」フィールドが「1」の場合のレコードを抽出するには、以下のように設定します。
    1. 「フィールド」に「住所.カード送付」を指定します
    2. 「条件」に「次のものに等しい」を指定します
    3. 「値」に「1」を入力します
    4. [次へ]ボタンをクリックします
  • ステップ4「詳細または概要」

    クエリーの種類を選択するステップです。「詳細クエリー」とは、ステップ3で選択されたレコードをすべて表示するクエリーです。Baseの初期設定では、このクエリーが選択されています。「サマリークエリー」を選択すると、集計関数の結果のみを表示するクエリーになります。なお、サマリークエリーでは、ダイアログでグレイアウトしている「集計関数」「フィールド」の各欄の設定が可能になり、同じくグレイアウトしているステップ5、6の「グループ化」「グループ化の条件」の設定が行えるようになります。
    1. 今回のように、条件検索を行うクエリーでは、初期設定の「詳細クエリー」のままにします
    2. [次へ]ボタンをクリックします
  • ステップ7「エイリアス」

    フィールドに対してエイリアスを設定するステップです。「エイリアス」とは、別の名前を設定する機能のことを言います。フィールドの命名ルールやデータベースの制限でフィールド名に日本語が利用できない場合など、このステップで日本語名を設定すれば、わかりやすいクエリーとなります。また、クエリーによっては、その目的にあった名前を設定しても良いでしょう。
    今回は、特に設定せずに[次へ]ボタンをクリックします。
  • ステップ8「概要」

    クエリーの名前やクエリー作成後の作業を設定したり、クエリーの内容を確認するステップです。初期設定で自動的にクエリーの名前が設定され、クエリーの作成後の作業には「クエリーを表示」が選択されています。「概要」欄には、これまでのステップで設定したクエリーの内容が表示されます。
    今回は、クエリーの名前などは初期設定のまま、また「概要」欄に間違いはないので、[完了]ボタンをクリックします。
ワンポイント
「概要」欄で間違いが見つかったら、[戻る]ボタンでさかのぼり、再設定することができます。

これでクエリーウィザードが終了しました。「カード送付」フィールドの値「1」で抽出された「住所」テーブルのレコード一覧が表示されたでしょうか。

ワンポイント
クエリーやフォームを作成した後、Baseファイルの画面のツールバーにある[保存]ボタンが選択可能になります。クエリーペインには、作成されたクエリーが登録されていますが、Baseファイル自身には保存されていない状態をさしています。この点注意してください。

レポートの作成(20分)

データをハードディスクに溜め込むだけでは、データベースを活用しているとは言えません。印刷物やWebなどでデータを生かしたレポートを公開することも重要です。

Baseのデータを利用した差込印刷も可能ですが、Baseではウィザードを使えば簡単に行えます。また、フィールドのグループ化なども可能なので、いろいろな目的に応じたレポートを作成できます。実際にレポートウィザードを操作しながら、使い方を学びましょう。

  • レポートウィザードの使用方法

    今回は、あらかじめ用意しておいたBaseのサンプルファイル「sample.odb」の「CD コレクション」テーブルをもとにレポートを作成してみます。すでにデータが入力済みのテーブルです。グループ化の機能を使って、1ページ1アーティストに分類したレポートを作成してみましょう。
  • レポートウィザードの起動
    1. Baseファイルのデータベースペインの[レポート]を選択します
    2. タスクペインの「ウィザードを使用してレポートを作成...」をクリックします

    レポートウィザードを起動すると、ウィザードダイアログとともにバックにWriterドキュメントが立ち上がります。こちらがのちにレポートとなるものです。

  • ステップ1「フィールド選択」

    レポートで表示するフィールドを選択するステップです。「テーブルまたはクエリー」欄から作成済みのテーブルかクエリーを選び、「使用可能なフィールド」欄に表示されたフィールドを[>]や[>>]ボタンをクリックして、右の「レポートのフィールド」欄に登録します。[>]ボタンを使えば、テーブルの表示順ではなく、自由な表示順でレポートを作成できます。
    1. 今回は、「テーブルまたはクエリー」欄で「テーブル.CD コレクション」を選択します
    2. [>>]ボタンをクリックして「CD コレクション」テーブルのフィールドをすべて利用します
    3. [次へ]ボタンをクリックします
  • ステップ2「ラベル付けフィールド」

    フィールドに対してラベルを設定するステップです。ラベルとは、クエリーでのエイリアスと同様に、フィールドいつける別名のことです。フィールドの命名ルールやデータベースの制限で日本語が利用できない場合など、ここでは日本語名を設定すれば、わかりやすいレポートになります。
    今回は、ステップは設定せずに[次へ]ボタンをクリックします。
  • ステップ3「グループ化」

    レポートのグループ設定を行うステップです。「フィールド」欄から[>]ボタンをクリックして、右の「分類」欄に登録すると、そのフィールドをキーにしたデータでレコードがグループ化されます。結果的に「分類」欄に登録したフィールドがレポート上のサブタイトルに表示され、さらにそのサブタイトルごと二ページ分けされたレポートが作成されます。
    1. 「フィールド」欄の「アーティスト」を選択します
    2. [>]ボタンをクリックして「分類」欄に登録します
    3. [次へ]ボタンをクリックします
ワンポイント
グループ化を使用しない場合は、すべてのフィールドが同レベルで表示される、とてもシンプルなレポートになります。
  • ステップ4「並べ替えオプション」

    フィールドの並べ替え順序を設定するステップです。ダイアログを見ればわかるよう に4レベルまで設定できます。考え方はクエリーと同じです。
    今回は、ステップ3の操作でグループ化の設定を子なったので、第1レベルの「並べ替え基準」には、すでに「アーティスト」フィールドが設定されています。
    1. 追加として「次の並べ替え基準」に「コレクションID」を選択します
    2. 並び順は「昇順」を選択します
    3. [次へ]ボタンをクリックします
ワンポイント
「次の並べ替え基準」を設定しないと、作成後のレポートでアーティスト名ごとに改ページされなくなります。
  • ステップ5「レイアウトの選択」

    レポート用紙やデータのレイアウト、ヘッダ、フッタ、背景デザインを設定するステップです。「データのレイアウト」欄には「エレガント」「モダン」など、また「ヘッダーとフッターのレイアウト」欄には「キネマ」「ファイナンス」など、わかりやすいキャッチのついたレイアウトパターンが登録され、「方向」欄で用紙の印刷方法を「縦」「横」から選択できます。「ヘッダーとフッターのレイアウト」には背景デザインも含まれています。このステップで設定を変更すると、バックのWriterドキュメントのデザインが変化するので、気に入った設定を選ぶことができます。
    1. 「データのレイアウト」は「標準」を選択します
    2. 「ヘッダーとフッターのレイアウト」は「シャボン玉」を選択します
    3. [次へ]ボタンをクリックします
  • ステップ6「レポートの作成」

    レポートのタイトルやレポートの作成後の作業を設定するステップです。「レポートのタイトル」欄は自動的に設定され、初期設定でレポートの作成後の作業には、「自動レポート」の「レポートを直ちに作成する」が選択されています。
    初期設定の自動レポートは、テーブルのデータが更新された場合にも対応できるテンプレートです。一方、「スタティックなレポート」を選択すると、テーブル内容はレポート作成時のものとなり更新できません。
    今回は、レポートのタイトル、レポートの作成後の作業は初期設定のまま[完了]ボタンをクリックします。

これでレポートウィザードが終了しました。自動的にレポートが表示されます。

Writer、Calcとの連携(20分)

データベースをWriterやCalcなどから参照できたり、文章や表計算へデータを挿入できるのが、オフィススィートらしい点です。そのためには、OpenOffice.org 1.0から備わっているデータソース機能を利用します。

基本編の最後に、OpenOffic.org全体のデータベースとのかかわりを学びましょう。

  • データベースの管理

    OpenOffice.orgのWriter、Calcからデータベースのテーブル、クエリーを参照する機能を「データソース」と呼びます。データベースウィザードで新しいデータベースを作成した時点で自動的にデータソースの参照が行えるようになります。
    では、必要がなくなったデータベースを削除したい場合はどうしたら良いのでしょうか。また、仕事で配布されたBaseのデータベースも、Baseファイルとしては扱えますが、他のOpenOffice.orgアプリケーションからは参照できません。
    これらの問題を解決するのが、ツールメニューの[オプション]から呼び出すオプションダイアログの「OpenOffice.org Base」にある「データベース」画面です。
    この画面で、Writer、Calcなどで参照できるデータソースの新規作成、削除、編集(データソース名の変更など)を行います。
    ちょうど「登録されたデータベース」欄には「Biblography」と当研修で登録した「database1」という2つのデータベースが登録されていますが、サンプルの「sample.odb」は登録されていません。といことで、「sample.odb」例に、データベースへの登録方法を紹介します。
    • 新規作成
      1. [新規作成]ボタンをクリックします
      2. 表示された「データベースリンクを作成」ダイアログの[検索]ボタンをクリックします
      3. 「sample.odb」を選択すると「データベースリンクを作成」ダイアログに戻り、「登録名」欄に自動的に「sample」と表示されます
      4. [OK]ボタンをクリックします
  • 削除と編集

    削除は、データエースを選択し、[削除]ボタンをクリックするだけです。なお、odbファイル自体は削除されないので、ファイルマネージャなどで削除してください。
    編集は、データベースを選択し、[編集]ボタンをクリックすると、「データベースリンクを編集」ダイアログが表示されるので、odbファイルの場所と登録名の変更などの編集が行えます。
  • Writer、Calcからデータベースを利用する

    Writer、Calcからデータベースを参照したい場合は、データソース画面を表示します。データソース画面は次の3つの方法で表示できます。
    • 標準ツールバーの[データソース]ボタンをクリックします
    • メニューから[表示]−[データソース]を選択
    • [F4]キーを押します

      データソース画面が表示されたら、左のエクスプローラでデータベースのテーブルを表示します。たとえばデータベース「sample」のテーブル「住所」を選んでみてください。このデータソース画面でデータベース上のデータの更新や追加も可能なので、Writer、Calcを使用中でも手軽にデータベースを操作できるのが、OpenOffice.orgの特徴です。逆に都合が悪い場合は、そうおわかりですね。データソースへの登録を削除すれば良いのです。

      データソースバーにあるボタンは、フォームナビゲータと同様のものに加え、次のようなWriter、Calcとデータベースとの連携に便利なボタンが用意されています。
      各ボタンの利用方法は、次のとおりです。WriterとCalcでは、動作が異なります。Calcの場合が簡単なので先に紹介します。
  • Calcの場合
    1. 現在のテーブルでレコードを選択します(レコードを複数選択する場合は、最初のレコードを選択後、[Shift]キーを押しながら最後のレコードをクリックする)
    2. [データからテキストへ]ボタンをクリックします

    これで、Calc上に選択したレコードが、先頭にフィールド名を付加して挿入されます。なお、データベースのテーブル画面で[>]部分をマウスでドラッグし、Calcへドロップしても同様にレコードが挿入されます。

  • Writerの場合

    Calcと同様に[データからテキストへ]ボタンをクリックすると表示される「データベースの列の挿入」ダイアログで挿入方法を選択できます。
    • レコードの挿入
      1. 「データの挿入」欄で「表」を選択
      2. 「データベース列」欄で挿入したいフィールドを順番に選んで[>]ボタンをクリックして右の「表の列」欄へ移動します
      3. [OK]ボタンをクリックします

      これで、Writer上に選択レコードが表組みで挿入されます。

  • フィールドの挿入
    1. 「データの挿入」欄で「フィールド」を選択
    2. 「データベース列」欄で挿入したいフィールドを順番に選んで[>]ボタンをクリックして右の編集ボックスへ移動します
    3. [OK]ボタンをクリックします

    たとえば、「住所」テーブルの「住所」「苗字」「名前」フィールドを選び、「住所」のあとに改行を入れると、簡単な宛名になります。この挿入されたフィールドは、対応するレコードを指定することで内容を変更したり、差し込み印刷に利用することができます。これらは、[データからフィールドへ][差込印刷]の各ボタンを使います。

  • テキストの挿入
    1. 現在のテーブルでレコードを選択する(今度は2つのレコードを選択します)
    2. [データからテキストへ]ボタンをクリックします
    3. 「データの挿入」欄で「テキスト」を選択
    4. 編集ボックスには、「フィールドの挿入」で使ったものが残っているので、このまま利用します
    5. [OK]ボタンをクリックします

    今度は、次のように宛名がテキストとして2つ挿入されます。この機能は、1度しか使わない宛名ラベルなどに利用できそうです。

  • Calcのデータパイロットでデータベースを分析する

    Baseには、Accessのようなピボットテーブルやピボットグラフは備わっていません。そのかわり、Calcのデータパイロットからデータベースを選択することができます。

応用講座

1時間コース

テーブル作成の応用(15分)

実用的なフォームのデザイン(15分)

クエリーの様々な機能(15分)

レポートの編集方法(15分)

更新履歴


トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2012-10-19 (金) 21:39:36 (793d)