PortaBase 2.0
- A portable database -
1)イントロダクション
2)ファイル選択画面
3)フォーマット編集画面
4)列挙管理画面
5)列挙編集画面
6)計算値編集画面
7)画像編集画面
8)画像表示画面
9)ビュー編集画面
10)データ表示画面
11)レコード編集画面
12)レコード表示画面
13)記述画面(編集/表示)
14)ソーティング編集画面
15)フィルター編集画面
16)ビュー、ソーティング、とフィルター管理画面
17)CSVインポート
18)データエクスポート
19)設定画面
20)コマンドラインでの使い方
21)暗号化
1)イントロダクション
PortaBaseは自分でテーブルを設定し、作成し、表示し、編集することのできる小さなデータベースプログラムです。一般的な用途はメディア一覧、リファレンスチャート、TODOリスト、買い物リスト、などなどです。以下のような機能があります:
- 文字列、整数値、数値、真偽、ノート(複数行のテキスト)、日付、時刻、計算値、番号、画像、列挙型のフィールドタイプ。
- カスタムデータビュー(任意のフィールドの組み合わせ)。
- 複数の条件を組み合せた表示データのフィルター。
- 任意のフィールドに昇順、降順を指定した組み合わせでのソート。
- 大きなファイルでも問題なく扱える要求時ページング。
- オプションとして、ページあたりのレコード数を指定した状態での、ページナビゲーションボタン。
- 随時フィールドの追加、削除、再編集、リネームが可能。
- フィールドのデフォルト値指定。
- フィールドの統計情報(総計、平均、最小、最大など)の表示。
- CSV、XML、MobileDBファイルからのデータインポート。
- CSV、XMLへのデータエクスポート。
- コマンドラインでの形式変換(XMLとPortaBaseファイルの相互変換、CSVとPortaBaseファイルの相互変換、MobileDBからPortaBaseファイルへの変換)。
- ビュー、ソーティング、とフィルターを適用したデータ印刷。(Maemo版以外)
- フルスクリーン表示可能
- Unicodeサポート。
- 利用可能な全てのフォントからアプリケーションで使用するものを選択可能。(Mac OS X版以外)
- レコードのユーザー指定の二色で交互に背景色塗り分け。(Maemo 5版以外)
- 数値データのシンプルな計算方式の入力画面。
2)ファイル選択画面
PortaBaseファイルをクリックしてプログラムを起動した時を以外は、最初にファイル選択画面が表示されます。ここで"ファイル"メニュー、ツールバー、や画面のボタンから以下のオプションのいずれかを選択します:
- 新規 - 新しいファイル(暗号化されたものも可)を作成します。
- 開く - ファイル選択ダイアログで選ぶファイルを開きます。
- 最近使ったファイル - サブメニューで最近使用したファイルが一覧表示され、そのうちの一つをクリックすることで開けます。
- インポート - XMLまたはMobileDBファイルから新しいファイル(暗号化されたものも可)を作成します。まずインポートするファイルのタイプ、次いで作成するファイル名、最後にインポートするファイル名をを入力するプロンプトが表示されます。使用されるXMLフォーマットについてはPortaBaseのホームページを参照して下さい。
- 設定 - 設定画面を起動します。
- フルスクリーン - PortaBaseを通常表示からフルスクリーン表示に変えます、あるいはその逆
- 終了 - PortaBaseを閉じます。
3)フォーマット編集画面
PortaBaseファイルはそれぞれ、ユーザーが定義したフォーマットのテーブルを1つ含んでいます。このテーブルのフォーマットは一連のデータフィールドから決定されており、フィールドはそれぞれ名前、データタイプ、デフォルト値を持っています。PortaBaseファイルの新規作成時にはこのダイアログが表示され、データフィールドを定義することができます。既存のファイルのフィールドもいつでも、データ表示画面の"ファイル"メニューの"フォーマット編集"を選択し、このダイアログを使って編集できます。(メニューの構成が簡単なMaemoでは、このオプションは"ファイル"メニューの下ではなく、直接メニューに入っている。)
現在のフィールド定義が1フィールドにつき1行の形で、レコード編集画面で表示されるのと同じ順番で一覧表示されます。これらのフィールド定義は、ダイアログのボタンを使って操作することができます:
- 作成 - リストの最後に新しいフィールド定義を作成します。名前、データタイプ、そしてデフォルト値を入力するための小さなダイアログが表示されます。(もしこのダイアログのタイプリストから"(新しい列挙)"を選択した場合、これを追加するための列挙編集画面が起動されます。)デフォルト値は、既存のデータレコードのこのフィールドに入力され、新しいレコードを追加する時にもレコード編集画面に表示されます。
- 編集 - 選択されているフィールド定義を編集します。データタイプは変更できないことに注意してください。デフォルト値が変更されると、この新しいデフォルト値が新規レコード作成時のレコード編集画面で表示されます; 既存のレコードには影響しません。
- 削除 - 選択されているフィールド定義を削除します。このフィールドに入力されているデータはすべて失われます。
- 上げる - 選択されているフィールドのリスト上での位置を一つ上げます(それに伴って、レコード編集画面上でも一つ上の位置に表示されます)。
- 下げる - 選択されているフィールドのリスト上での位置を一つ下げます(それに伴って、レコード編集画面上でも一つ下の位置に表示されます)。
テーブルフォーマットに行った変更は、OKボタンが押されるまでは適用されません: 代りにキャンセルするのを選ぶと、変更は破棄され、元々のファイルのフォーマットが残されます。新規ファイルのフィールド定義注にキャンセルする場合、ファイル作成はアボートされます; それ以外の時は、どちらかのダイアログクローズボタンを押すとデータ表示画面に移ります。
4)列挙管理画面
PortaBaseは列挙型のフィールドタイプをサポートしています。このフィールドの値は選択可能な文字列値のセットの内の一つになります。列挙管理ダイアログを使って、列挙型の作成、編集、削除、表示順の変更ができます。
ダイアログの大部分は、現在定義されている列挙型の一覧で占められています。画面には、フォーマット編集画面と同様のボタンが一行に並んでいます:
- 作成 - 列挙編集画面を起動し、列挙型を定義します。新しい列挙型は編集ダイアログで"OK"がクリックされた時点で登録されます。ダイアログの"OK"ボタンがクリックされなかった場合は登録されませんのでご注意ください。
- 編集 - 列挙編集画面を起動し、選択されている列挙型を編集します。作成の時と同様、編集ダイアログで"OK"がクリックされた時に編集結果が適用されます。
- 削除 - 選択されている列挙型を削除します。この列挙型を使用しているフィールドがある場合、これらも削除される旨の警告が表示され、続けてよいかと訊ねられます。この列挙型(と関連するフィールド)は"OK"がクリックされた時ではなく、即座に削除されます。
- 上げる - 選択されている列挙型のリスト上での位置を一つ上げます(それに伴って、フィールド編集画面のタイプリストでの順番もひとつ前に来ます)。
- 下げる - 選択されている列挙型のリスト上での位置を一つ下げます(それに伴って、フィールド編集画面のタイプリストでの順番もひとつ後に来ます)。
列挙型の表示順序に行った変更を適用するには"OK"をクリック、表示順を(列挙型の追加および削除の分を除いては)変更せずに終わるにはキャンセルします。
5)列挙編集画面
このダイアログでは列挙型フィールドタイプの名前と、それに含まれる列挙値を定義することができます。このダイアログには列挙値のリストと、他の編集ダイアログの大半と同じボタンのセットがあります:
- 作成 - 新しい列挙値を追加します; 列挙値にする文字列を入力するためのダイアログが表示されます。
- 編集 - 既存の列挙値を編集します。この列挙値を使っているものは全て新しい文字列で更新されます。
- 削除 - 選択されている列挙値を削除します。この列挙値が使用されている個所を、どの値で置き換えるかを尋ねるダイアログが表示されます。
- 上げる - 選択されている列挙値のリスト上での位置を一つ上げます(それに伴って、ドロップリストから選択する時の表示位置も一つ上に来ます)。
- 下げる - 選択されている列挙値のリスト上での位置を一つ下げます(それに伴って、ドロップリストから選択する時の表示位置も一つ下に来ます)。
列挙名のすぐ下にはオプションの一覧を変更するためのボタンがあります:
- ソート - オプションをアルファベット順に並べます。逆順に並べるには、もう一度ボタンをクリックします。
- インポート - テキストファイルからオプションを追加します; このファイルには、1行に1オプションを書きます。
- エクスポート - 各行に1件ずつの形で、現在の列挙選択肢をリストしたテキストファイルを生成します。
行った変更内容を適用するには"OK"を、列挙値を変更しないで終了する(あるいは新しい列挙値の追加をキャンセルする)にはキャンセルします。
6)計算値編集画面
このダイアログで、同じレコードの他のフィールドの値からの算出値を持つフィールドを定義できます。フィールドエディタ画面で"計算編集"ボタンを押すと起動するダイアログで、フィールドタイプが"計算値"の時にのみ表示されます。このダイアログの最上部にはフィールド名、読み取り専用の1行の数式で表した現在の数式の表示部、計算結果を何桁まで表示するかを選択するスピンボックスがあります。
ダイアログの大部分は多くのファイルエクスプローラにも似た、ツリー状に現在の計算式を表示するウィジェットで占められています。ツリー上のノードはそれぞれ、他のフィールドの値、定数,または演算子のいずれかを表示しています。計算式を編集するには、(もし既にあれば)ツリーからノードを選択し、ダイアログのボタンを使用します:
- 作成 - 新しいノードを、現在選択しているノードの子として追加します: ノードの値のタイプを選択するためのダイアログが表示されます。
- 編集 - 選択されているノードを編集します。
- 削除 - 選択されているノードを削除します。
- 上げる - 選択されているノードをその兄弟の間で上に移動します。
- 下げる - 選択されているノードをその兄弟の間で下に移動します。
通常は、例えば"+"などの演算子ノードの追加から始め、その引き数(それ自身も引き数を持った演算子ノードでも構いません)を追加します。ボタンは、現在選択されているノードに対してそのアクションが実行できる時には、自動的に更新されます; 許可されないアクションは、例えば次のようなものです:
- 演算子ノードが既に扱える最大の個数の引き数を持っている時の、子ノードの追加。
- 演算子ノードの編集; 編集した値は削除され、代替値で置き換えられます。
- その方向にそれ以上動かせない時のノードの"上げる"と"下げる"。
以下は蛇足ですが:
- 計算には、整数値、数値、番号フィールドを使うことができます。加えて、日付フィールドを"Days_Between"操作の時に、時刻フィールドを"Seconds_Between"、"Minutes_Between"、それから"Hours_Between"フィールドで使うことができます。
- 計算値フィールドは、さまざまな複合問題を引き起こしかねないので、他の計算値フィールドでは使えません。同じ効果は、計算値の定義を他の計算値の一部として繰り返すことで得られます。
- 操作に必要なだけの引き数が(あるいは引き数が全く)渡されなかった場合は、通常、0が返されます。
- フィールドエディタでフィールド名が変更された時やフィールドが削除された時は、いずれの計算値も変更内容にしたがって自動的に更新されます。
7)画像編集画面
画像フィールドにはJPEGまたはPNG画像ファイルから読み込んだ写真が保持されます。データベース上のフィールドにインポートする画像ファイルを選択すると、この画面が表示され、データベースに保持する画像のコピーにちょっとした変更を加えることができます。画面上部には以下のコントロールがあります:
- 幅 - 画像の幅の上限値(ピクセル単位)。
- 高さ - 画像の幅の上限値(ピクセル単位)。
- 回転 - 画像を回転させる角度: 0、90、180、270のいずれか。
- 再読み込み - 現在表示されている設定を適用し、画像プレビューを更新します。
PortaBase開発の元だったザウルス上のメモリが限られていたことから、大きすぎる画像は弾かれます。JPEG画像では6,400×4,800ピクセルを超えるものはインポートできませんし、800×600以上のものは最大でもこのサイズに縮小されます。同様に、PNG画像では800×600ピクセル以上のものはインポートできません。PortaBaseのZaurus版が開発中止になったので、この制限は近い内になくなります。
"OK"を押して表示されている状態で画像を保存するか、あるいはキャンセルして変更せずに終了します。
8)画像表示画面
画像表示画面は画像フィールドの一つに含まれている画像を表示するためのシンプルな画面です。データ表示画面から起動され、左矢印キーで現在のフィルター中の前のレコードの同じフィールドの画像が、同様に右矢印で次のレコードの画像が表示されます。画像をダブルクリックするとフルスクリーンモードで表示されます; ビューアを閉じるにはフルスクリーン画像を再度クリックします。
9)ビュー編集画面
データ表示画面でのデータベースの内容をブラウズでは、データ"ビュー"の1つを見ることになります。ビューはデータベース内のフィールドのサブセットで、指定した並び順、表示幅で表示されます。データベースはデフォルトで、レコード編集画面で表示されるのと同じ順序でデータベース内のすべてのフィールドを表示する"全てのフィールド"ビューを持ちます。
ビューはビュー編集ダイアログを使って定義されます。ダイアログの最上部にはビューの名前が入ったテキストボックスがあります; これを変更するとビューがリネームされます。これに続いて、このビューに切り替えた時にデフォルトで使用されるソーティングとフィルターを選択できるドロップリストがあります; "デフォルトソーティングなし"や"デフォルトフィルタなし"を選択すると、現在のソーティングとフィルタがそのまま変更されずに使われます(この設定は、よく使うビュー、ソーティング、フィルターの組み合わせがあるとき、ビューを選択して、それからソーティング、それからフィルターと選択していく必要をなくしてくれます)。この下にはデータベース内のすべてのフィールドを表示した表があり、各フィールドのわきにはこのフィールドがこのビューでの表示対象になっているか否かを示すチェックボックスがあります。表中内での選択されている行の位置を上下させ、ビューでのカラムの順序を変更するための"上げる"と"下げる"ボタンもあります。"OK"を押して現在表示されている設定を受け入れるか、あるいはキャンセルして変更前の状態のままにします(あるいは新しいビューの追加をキャンセルします)。
10)データ表示画面
これはこのアプリケーションのメインの画面で、ここでデータベースの内容をブラウズし、他のダイアログの大半を起動することができます。この画面上には以下があります:
レコード表示・操作部
データ表示画面画面の大部分は一つのビューを使って、データベース内のレコードの一部を表示している表で占められています。使っているフィルターにパスする全部のレコードをスクロール出来る; 要求時ページングのおかげで大きいファイルでも遅くなることはない。通常、レコード上でクリックするとレコード表示画面が起動されます。設定画面でこのオプションを外した場合でも、レコードが選択された状態でスペース、Enter/Return、あるいはCtrl-Rを押すとその画面は起動されます。
設定画面で"データ表示にページを使う"を選択した場合、画面の下部にそのためのコントロールがあります。画面左下のスピンボックスには現在のビューで1度に表示するレコード数を示しています; この値は好きな正数に変更することができます(表の表示部の右側にスクロールバーが表示されないような小さい値に設定すると、ちょっとだけ横方向の空間が広がります)。"ページごとのレコード数"ボックスの右側には、ページナビゲーション用のボタンがあります。この数字が振られたボタンのいずれかをクリックすることで、そのレコードページに移動できます; 現在のページは押された状態で表示されています。前の5ページ、または次の5ページのボタンを表示させるには、端にある矢印ボタンをクリックします。
データ表示部のセルをクリックし、そのまま0.5秒かそれ以上してから離すと、特別な機能が実行されます。ノートフィールドのセル上でこれを行った場合、記述画面(表示)でノートの内容が表示されます。イメージフィールドのセル上で行ったときは、そのセルに含まれている画像が画像表示画面で表示されます。他のタイプのフィールド上でこれを行った場合、クリックしたレコードを対象としてレコード編集画面が起動されます。
フィールドラベル
フィールドラベル行にはフィールド名関連の情報を提供するいくつかの追加機能があります。現在のビューでフィールド表示幅を変更するには、二つのフィールドラベル間の境界(あるいは、最後のカラムであれば右端)をクリックし、望みの位置までドラッグします。フィールドラベルをクリックするとそのフィールドの内容の昇順でソートされます; 再度そこをクリックすると降順でソートされます。フィールドをクリックし0.5秒かそれ以上そのままにしてから放すと、そのフィールドのサマリー情報を含むダイアログが表示されます; サマリは現在のフィルターを通過したものだけが対象になっています。
ファイルメニュー
"ファイル"メニュー(Maemo版では唯一のメニュー)にはデータベース全体に適用されるオプションが含まれています。以下があります:
- 保存 - ファイルが開かれてから、あるいは最後に保存されてから行われた全ての変更を保存します。最後に行った変更を保存せずにPortaBaseを終了すると、それらの変更は失われてしまいます(このようなことが起ころうとすると、ダイアログが現れて警告が表示されます)。このオプションは現在のデータベースが開かれてから、あるいは最後に保存されてからまったく変更が行われていない時には選択できないようになっています。(Maemo版では表示されません; ツールバーの保存ボタンを使います)
- パスワード変更 - データファイルのパスワードを変更するためのダイアログを起動します(暗号化されたファイルでのみ表示されます)。
- インポート - CSVファイルからレコードのインポートを行うことができます。
- エクスポート - 現在のデータベースの内容をCSVまたはXMLファイルにエクスポートすることができます。
- フィルターに含まれるレコードを削除 - 現在使用しているフィルターに含まれるレコードを全て削除します。
- フォーマット編集 - フォーマット編集画面を起動します。
- 列挙管理 - 列挙管理画面を起動します。
- スライドショー - 現在のビューに含まれている画像フィールドの画像を時間駆動でスライドショーするための画面を起動します。現在のフィルターに含まれているレコードの画像だけが使用され、順番は現在のソーティングになります。
- プロパティ - 現在のファイルについての基本的な統計情報(サイズ、レコード数、フィールド数など)を表示する画面を起動します。
- 印刷プレビュー - 使っているビューなどで印刷したらどうなりますかを示す画面を表示します。用紙サイズとズーム率などの設定もこの画面で選択できます。(印刷機能のないMaemoでは表示されません)
- 印刷 - 使っているビュー、フィルター、とソーティングを適用したデータを印刷します。先に印刷プレビューの画面で設定を確認した方がいいかもしれません。(印刷機能のないMaemoでは表示されません)
- 設定 - 設定画面を起動します。
- 閉じる - 現在のファイルを閉じます; 保存されていない変更がある場合は、これを保存するかと聞かれます。(Maemo版では表示されません、上右のボタンを使います; フルスクリーン表示の場合、まず通常表示に戻ります)
レコードメニュー
"レコード"メニューにはここのレコードに適用されるアクションが含まれています。以下があります:
- 作成 - 新しいレコードを作成します(レコード編集画面が起動されます)。
- 編集 - 選択されているデータレコードを編集します(これもレコード編集画面を使用します)。
- 削除 - 選択されているデータレコードを削除します。
- コピー - 新しいデータレコードを作成しますが、レコード編集画面はあらかじめ、デフォルト値の代わりに現在選択されているレコードのデータが入力されています。
- 表示 - 現在選択されているレコードをレコード表示画面で表示します。
小さい画面をうまく使うために、Maemo版はこのメニューを表示しません。同等な機能はツールバーとレコード表示画面のボタンを通じて使えます。
ビューメニュー
"ビュー"メニューではビューの選択と管理ができます。このメニューの先頭部には3つのオプションがあります:
- 作成 - データベースファイルに新しいビューを追加します。このオプションを選択すると、名前は未指定、全てのフィールドが未チェックの状態で、ビュー編集画面が起動されます。
- 編集 - 現在表示されているビューを編集します。このオプションを選択すると、現在のビューの名前とフィールド状態でビュー編集画面が起動されます。
- 削除 - 現在表示されている削除を削除し、"全てのフィールド"ビューに切り替えます。"全てのフィールド"ビューを削除することはできません。
メニュー内のこれらの項目より下は現在のデータベースに定義されている全てのビューのリストで、現在表示されているものの隣にチェックがついています。別のビューに切り替えるには、表示したいものをこのメニューから選択します。
小さい画面をうまく使うために、Maemo版はこのメニューを表示しません。同等な機能はツールバーから起動させるビュー管理画面を通じて使えます。
ソートメニュー
"ソート"メニューでは、ソーティング(表示順)の設定の選択と管理ができます。このメニューの先頭部には3つのオプションがあります:
- 作成 - データベースファイルに新しいソーティングを作成します。このオプションを選択すると、名前が未指定で、全てのフィールドがチェックされていない状態でソーティング編集画面が起動されます。
- 編集 - 現在使用されているソーティングを編集します(命名済みのソーティングがすでに使用されている時のみ選択できます)。このオプションを選択すると、現在のソーティングの名前とフィールド状態でソーティング編集画面が起動されます。
- 削除 - 現在使用されているソーティングを削除します(命名済みのソーティングがすでに使用されている時のみ選択できます)。
メニュー内のこれらの項目より下は現在のデータベースに定義されている全てのソーティングのリストで、(ソーティングを使用しているときは)現在使用されているものの隣にチェックがついています。レコードのソート方法を変更するには、使用したいソーティング設定をこのメニューから選択します。もし現在のビューで表示されているフィールドの1つでソートしたいだけであれば、代りに"フィールドラベルのクリックでのソート"機能を使う方が早いでしょう。
小さい画面をうまく使うために、Maemo版はこのメニューを表示しません。同等な機能はツールバーから起動させるソーティング管理画面を通じて使えます。
フィルターメニュー
"フィルター"メニューには、表示対象にするデータレコードを選択するためのオプションがあります。このメニューの先頭部には4つのオプションがあります:
- 簡易フィルター - 一時的な一つの条件だけでのfilterを、簡単に指定できます。全てのレコードを表示しなおす(または別のフィルタを定義して使用する)には、メニューの下部から適当なフィルターを選択してください。
- 作成 - 新しいデータフィルターを定義します; これは、名前が未指定で、何も条件が定義されていない状態で
フィルター編集画面を起動します。
- 編集 - 使用しているデータフィルターを編集します(これもフィルター編集画面を使用します)。"全てのレコード"フィルターは編集できません。
- 削除 - 使用しているデータフィルターを削除します。"全てのレコード"フィルターは削除できません。
メニュー内のこれらの項目より下は現在のデータベースに定義されている全てのフィルターのリストで、(フィルターを使用していれば)現在表示されているものの隣にチェックがついています。別のフィルターに切り替えるには、表示したいものをこのメニューから選択します。
小さい画面をうまく使うために、Maemo版はこのメニューを表示しません。同等な機能はツールバーから起動させるフィルター管理画面を通じて使えます。
ツールバーボタン
共通的に使われる操作に素早くアクセスするためのボタンを配したツールバーがあります。以下がそうです:
11)レコード編集画面
レコード編集画面、レコードを追加する時や編集する時に表示されます。データベースのフィールド1つ1つが、1行になります; 左側はフィールド名です; それから右側は現在の値です。データレコードを追加する時には、デフォルト値が表示されます; 既存のデータレコードを編集する際は、現在の値が表示されます。以下はデータタイプに併せたより確実なデータ入力をするためのコメントです:
- 文字列フィールドは複数行のテキストを含むことができます; 入力フィールドに行を追加するには、enter/returnを押します。
- 日付フィールドを編集するには、現在の日付表示の左にあるボタンをクリックします; これは新しい日付を選択することができるカレンダーウィジェットを表示します。
- 整数値および数値フィールドの右側には、キーパッドとして、または入力する値を計算するために使うことのできるシンプルな計算機を起動するためのボタンがあります; "ok"をクリックすると、現在の値が入力フィールドにセットされます。
- 各計算値フィールドには現在の値が表示されています。計算に使われている同じレコード内のほかのフィールドを変更した時に、表示されている値を更新するには、値表示の右側にある"update"ボタンをクリックします。これはレコードを開き直す手間を省くためのものであって、レコードの追加ないし保存する前にこれを行う必要はありません。
- 画像フィールドが未登録であれば、"画像を選択してください"ボタンで使用する画像を選択できます。既に登録されている画像フィールドには、3つのボタンが表示されます: "表示"(現在の画像を表示する画面を起動します)、"変更"(現在の画像を別のもので置き換えます)、"削除"(このフィールドを空の状態にリセットします)。"画像を選択してください"と"変更"ボタンはいずれもファイル選択画面を起動し、続いて画像編集画面に移ります。
決めた値に編集し終えたら、"OK"を押して現在表示されている設定を受け入れるか、あるいは"X"/"キャンセル"を押して(レコード追加時であれば)レコード追加をキャンセル、または(レコード編集時であれば)変更前の値に戻します。
12)レコード表示画面
レコード表示画面は1レコード内の全データを閲覧するのに便利なようにデザインされたダイアログです。レコード編集画面と同様、左側にはフィールドラベルが、右側にはその値があります。ただし、値を編集することはできず、折り返し表示されますので横方向にスクロールさせなくても全体を見ることができます。ノートの内容は先頭の数語が表示されるのではなく、全文が表示されます。デフォルトでは、現在のビューに含まれているフィールドだけが(ビューで指定された順番で)表示されます; これ以外のフィールドの組み合わせで見るには、画面下部のドロップリストから適当なものを選択します。画面下部の矢印パッドにある左向き、あるいは右向きの矢印(又は矢印キー)を押すと、現在の表示されているレコードを変更することができます。画面下部に他のボタンもいくすかあります:
- 編集 - 現在のレコードを対象にレコード編集画面を起動します; "OK"をクリックするとデータ表示画面に戻りますし、それ以外であればレコード表示画面に戻ります。
- コピー - 現在のレコードのコピーを対象にレコード編集画面を起動します; "OK"をクリックするとデータ表示画面に戻りますし、それ以外であればレコード表示画面に戻ります。
- 削除 - 現在のレコードを削除します。
- テキストコピー - 選択されたテキストをクリップボードにコピーする。(Maemo版でドラッグすればテクスト選択ではなくスクロールするおかげで、このボタンは表示されません; テキストをコピーするにはレコード編集画面を使います)
13)記述画面(編集/表示)
"ノート"フィールドタイプは(短い1行のテキストにより適する"文字列"タイプとは対照に)複数行からなる一かたまりのテキストです。この大きなサイズのカラムの長所はその(とてもシンプルな)ダイアログです。レコード編集画面とフィールド編集画面のデフォルト値の設定部のどちらでも、ノートの値はノートのアイコンと(納まる分だけの)ノートの内容の先頭部が含まれたボタンとして表示されます。全文を表示または編集するにはボタンを押します; 全画面の記述編集ダイアログが現れ、ノートの現在の記述が表示されます。"OK"をクリックして行った変更を適用するか、キャンセルして変更前の状態に戻すことができます。
ノートフィールドはデータ表示画面でも少し特別な扱いがされます。ノートフィールドのフィールドラベルにはこれがただの文字列フィールドではないことを示すノートのアイコンが含まれます。フィールドの各セルは納まる限りのノートの内容を表示します。これらのセルを押し0.5秒かそれ以上そのままにしてから放すと、読取り専用の状態で記述画面が表示されます。"OK"をクリックしてもキャンセルしても、これを閉じてデータ表示画面に戻ります。
14)ソーティング編集画面
データ表示画面のフィールドラベルのクリックは、データベースの内容を一つのフィールドでソートする便利な方法です。しかし、時にはフィールドの組み合わせでソートしたいと思うでしょう; フィールドAの内容でソートし、フィールドAの値が等しいグループ内ではフィールドB、などというように。これをする時や、現在のビューでは表示されていないフィールドでソートするには、ソーティングを定義する必要があります。
ソーティングは、ビュー編集画面に非常によく似たソーティング編集ダイアログで定義されます。ダイアログの先頭はこのソーティングの名前を含むテキストボックスです: これを変更するとこのソーティング名が変更されます。この下にはデータベース内の全てのフィールド名が表示されている表で、それぞれの隣にはソート対象であるか否かを示すチェックボックスがあります。このチェックボックスをクリックすることで、それをソート条件のセットに加えたり、セットから削除することができます。チェックがされたセルの、表中の3番目のフィールドはソート順が"昇順"か"降順"と表示されています; 逆にするにはこの表示をクリックします。表中で選択されている行を上下に動かす"上げる"と"下げる"のボタンもあり、ソートでこのフィールドが使われる順番を変更できます。チェックされたフィールドの内最上段にあるものでまずソートされ、このフィールドが同じ値のレコードはチェックされたフィールドの内、次に高い位置にあるもので、というふうにソートされます。"OK"をクリックして現在表示されている設定を適用するか、キャンセルして元の値に戻します(あるいは新しいソーティングの追加をキャンセルします)。
15)フィルター編集画面
このダイアログでは、データ表示画面で表示されるレコードを選択するためのフィルターを定義することができます。フィルターは"count = 1"のような単純なものも、"いずれかのテキストフィールドが'java'を含み、chapters > 10、pages <= 400、instockがチェックされているもの"のようなより複雑なものにもできます。"フィルター"メニューからフィルターを選ぶと、データ表示画面は定義された条件にマッチするものレコードを対象とするように表示が更新されます。
ダイアログの先頭はこのフィルターの名前を含むテキストボックスです; これを変更するとこのフィルター名が変更されます。この下はフィルターを構成する条件のリストです; レコードがフィルターをパスするには、この全ての条件を満たさなければいけません。"追加"、"編集"、"削除"、"上げる"、"下げる"を使って、基本的にはフォーマット編集画面と同じ要領で条件を編集することができます。ただし、フィールド編集画面ダイアログの代りに、"追加"、"編集"ボタンで条件編集ダイアログが起動します。このダイアログでは、比較に使われるフィールド、使用する比較条件、比較する固定値を選択することができます。テキストの比較には、大文字小文字を区別するか否かを表わすチェックボックスもあります。1フィールドで比較する代わりに、"テキストフィールド"を選択することもできます; レコード中のいずれかの文字列またはノートフィールドの値が条件を満たしていれば、そのレコードは条件を満たしていると見なされます。"OK"をクリックして現在表示されている設定を適用するか、キャンセルして変更前の状態のままにします(あるいは新しいフィルターの追加をキャンセルします)。
16)ビュー、ソーティング、とフィルター管理画面
ツールバーにはビュー、ソティング、とフィルターを管理する画面を起動させる三つのボタンがあります。この三つの画面はほぼ同じで、違うのは管理する項目の種類だけ。どれにも以下があります:
- 使っているビュー/ソーティング/フィルター - 現在選択された項目の名前。"全てのフィールド", "選択したフィールド", "全てのレコード", "簡易フィルター"みたいな変更不能な項目の場合、編集と削除のボタンは押せません。
- 編集 - 現在選択された項目の名前の右にあるこのボタンはその項目を編集するためにビュー編集画面、ソーティング編集画面、あるいはフィルター編集画面を起動します。その画面の設定を適用すればデータ表示画面に戻ります。
- 削除 - 編集ボタンの右にあるこのボタンを押せば、現在選択された項目は削除されます。デフォルトの項目を選択して、データ表示画面にもどります(デフォルトソーティングはないので、ソーティング削除の場合ソート順のない状態に戻ります)。
- ビュー/ソーティング/フィルター作成 - 現在選択された項目の名前の下にあるこのボタンは新しい項目を作成するためにビュー編集画面、ソーティング編集画面、あるいはフィルター編集画面を起動します。その画面の設定を適用すれば、作成した項目を選択してデータ表示画面に戻ります。
- ビュー/ソーティング/フィルターのリスト - "...作成"ボタンの下に既存の項目のリストがあります。その中の項目をクリックすれば、その項目を適用してデータ表示画面に戻ります。その項目を編集又は削除したい場合、またこの画面を起動すればいい。
17)CSVインポート
PortaBaseはCSV(カンマ区切りテキスト)ファイルからデータレコードをインポートすることができます。これにより、表計算や他のデータベースソフトからエクスポートされたデータをインポートすることができます。やり方は以下の通りです:
- データをインポート先になるPortaBaseファイルを開きます。新規ファイルにインポートしたい時は、あらかじめ新しいファイルを作成し、インポーとするデータに合ったフィールド構造を定義します。
- データ表示画面の"ファイル"メニューから"インポート"を選びます。ファイルセレクタが現れ、インポートしたいファイルを1つ選択します。CSVファイルは、開かれているデータベースファイルと同じカラム数で、各カラムの値は定義されているカラムのタイプに合っていなければいけません。
- インポートされるファイル内のレコードがデータベースに追加されます。この手順を繰り返すことで、他のファイルからさらにレコードを追加することも、同じファイルを再度インポートして同じレコードを追加することもできます。
備考:
- 真偽フィールドの値は0か1でなければなりません。
- 日付フィールドはYYYYMMDD、YYYY/MM/DD、YYYY-MM-DD、YYYY.MM.DDのいずれかの形式にします。
- 時間フィールドはHH:MM:SS、HH:MM:SS AM、HH:MM、HH:MM AMのいずれかの形式か、00:00からの経過秒にします。空白と-1は"None"として処理されます。
- 計算値フィールドは0で残しておきます; 実際の値はインポートの間に計算されます。
- 画像フィールドは空(画像をロードしないのであれば)または適切な画像ファイルへの相対または絶対パスを入れます。
18)データエクスポート
PortaBaseは現在、2つの形式: CSVとXMLでのエクスポートをサポートしています。データインポートとは逆に、この操作でデータベースの内容を表計算、テキストエディタ、他のデータベースプログラムなどに移すことができます。以下が現在のデータベースをエクスポートする手順です:
- データ表示画面の"ファイル"メニューから"エクスポート"を選択します。
- ドロップリストからエクスポートしたいファイルの形式を選択します。CSVでエクスポートした場合、現在のフィルタをパスしたレコードだけがエクスポートされます。XMLでエクスポートした場合、データベース構造(カラム定義やビュー、フィルターなどを含みます)もエクスポートされます; ファイルサイズはデータファイルの2倍以上になると思いますので、ストレージに十分な空き要領があるか確認してください。
- 作成するCSVまたはXMLファイル名を入力します。
- エクスポートを完了するには"OK"をクリックして、操作をアボートするにはキャンセルします。
19)設定画面
このダイアログでPortaBaseアプリケーション全体の設定ができます。"OK"をクリックして現在の全てのタブの設定を適用するか、キャンセルして変更前の状態で終了します。タブには以下があります:
Maemo 5版ではこの画面はタブの代わりに、全てのオプションが入っているスクロール出来るリストを使用します。
全般
"全般"タブには以下のオプションがあります:
- 削除時の確認 - レコード、ビュー、ソート方法、フィルターを削除しようとした時に、確認ダイアログを表示させるにはこれをチェックします。これは、他のものをクリックするつもりで何かを削除してしまうといったアクシデントを減らします。
- データ表示画面でチェックボックスの変更を許可 - データ表示画面で、真偽値のチェック状態を、該当のセルをクリックすることで変更できるようにするには、これをチェックします。これでPortaBaseをTODOリストなどに使う時にはより便利になりますが、データの値がちょっとしたアクシデントで変わってしまい易くなる面もあります。
- レコードを一回押すだけで表示します - これをチェックしますとデータ表示画面でレコードを一回押せば、そのレコードはレコード表示画面に表示されます。チェックを外すと、レコードをクリックしてその画面を表示せず選択出来ます。
- このデバイスは小さな画面を持っている - これをチェックしますとPortaBaseは小さい画面に適切な設定を使います(例えばビューフィールドのデフォルト幅、1ページのデフォルトレコード数など)。普段はオペレーティングシステムを確認してこのオプションの設定を自動的に推測出来ますが、ネットブックなどの例外で変えた方がいいかもしれません。
- データ表示にページを使う - データ表示画面下部に1ページあたりのレコード数の指定とページ間の移動をするためのナビゲーションバーを表示するにはこれをチェックします。チェックを外すと、ナビゲーションバーは表示されず、1ページに現在のフィルターを通ったレコードが全て表示されます。
- デフォルトのページごとのレコード数 - 新しいデータベースを作成する時に使用される1ページに表示される最大レコード数のデフォルト値。
- ノートの折返し位置 - 記述画面(表示/編集)で、手作業で改行をいれなくても、自動的に折返しをするようにします。デフォルトでは空白の位置でのみ折返しをしますが、ドロップリストの値を変更して、空白の有無にかかわらず行末で折返しをさせることもできます。(これは日本語のような、空白を使わない傾向のある言語では非常に便利です。)
日付と時刻
"日付と時刻"タブには以下のオプションがあります:
- 日付表示 - データ表示画面やレコード表示画面などで使用される日付値のフォーマットです。
- 時刻表示 - 表示を24時間標記にするか12時間標記(AM/PM付)にするかです。
- 週の先頭 - 週の初めの曜日です; これは日付入力ダイアログの表示に適用されます。
- 秒を表示 - データ表示画面やレコード表示画面などの時刻フィールドで、秒を表示するか否かを切替るためのものです。
表示
表示タブの"フォント"セクションでは使用できるフォントと、それで使用できるフォントサイズからいずれかを選択できます。このフォントは(別のものが選択されるまでは、(アプリケーションを修了し再起動したとした後も含め)PortaBase中の全てのテキストで使用されます。例えばデフォルトフォントでは日本語の文字を表示出来なかったら違うのを選択したり、画面によりを多くの文字を入れるためにもっと小さいフォントを選択するといったことができるでしょう。(システムと違うフォントを使うのが苦手なMac OS Xではこのオプションは表示されません。)
"レコード色"セクションにはデータ表示画面、フォーマット編集画面、ビュー編集画面、ソーティング編集画面の行の背景に使われる色を選択するための2つのボタンがあります。各ボタンは現在の色を表示しています; どちらかをクリックすると使用したいほかの色を選択するための色選択画面が起動されます。(システムのテーマによって色が支配されているMaemo 5ではこのオプションは表示されません。)
20)コマンドラインでの使い方
PortaBaseはLinux/UNIXのターミナルやDOSプロンプトから使用し、グラフィカル・インターフェース抜きでデータをインポート/エクスポートすることができます。これは、PortaBaseのデータファイルを生成し、更新し、その他の操作をするようなスクリプトを書く時には非常に便利です。"portabase -h"を実行すると、使い方の説明が表示されます; 概要としては、以下ができます:
portabase
file - PortaBaseを起動し、すぐに指定された名前のPortaBaseデータファイルを開きます。
portabase fromxml
xmlfile pobfile - "xmlfile"で指定されたPortaBase形式のxmlファイルから、"pobfile"で指定された新しいPortaBaseのデータファイルを生成します。
portabase fromcsv
csvfile pobfile - "csvfile"で指定されたCSVファイルから、"pobfile"で指定された既存のPortaBaseデータファイルにレコードを追加します。
portabase frommobiledb
mdbfile pobfile - "mdbfile"で指定されたMobileDBファイルから、"pobfile"で指定された新しいPortaBaseのデータファイルを生成します。
portabase toxml
pobfile xmlfile - "pobfile"で指定されたPortaBaseのデータファイルから"xmlfile"で指定された新しいxmlファイルを生成します。
portabase tocsv
pobfile csvfile - "pobfile"で指定されたPortaBaseのデータファイル内のレコードから"csvfile"で指定された新しいCSVファイルを生成します。
暗号化済みファイルからのデータの抽出、暗号化済みファイルへのレコード追加、暗号済みファイルの生成には、変換コマンドの直後(以下に示す他のオプションの前)に-p
passwordと入力します。
"toxml"または"tocsv"とエクスポート元になるPortaBaseファイル名の間に、以下のオプションを入れることができます:
-v
ビュー名 - エクスポートの際に指定されたビューを適用します。
-s
ソーティング名 - エクスポートの前に指定されたソーティングを適用します。
-f
フィルター名 - エクスポートの前に指定されたフィルターを適用します。
PortaBaseのXMLフォーマットと、これを使った便利な使い方(HTMLへの変換など)の詳細は、PortaBaseのホームページ(http://portabase.sourceforge.net)をご覧ください。
21)暗号化
パスワードなどのように取り扱いに注意を要する情報を守るといった要求に答えるため、PortaBaseデータファイルを暗号化することができます。暗号化されたファイルは、ファイル作成者が設定したパスワードを入力することでアクセスできるようになります(このパスワードは後から、"ファイル"メニューの"パスワード変更"で変更することができます)。このパスワードは覚えられる程度に易しいものにせざるを得ないため、これが暗号化使用時に最大の弱点になります; 良いパスワードを選ぶことが重要です。パスワードは以下のガイドラインに従うべきです:
- 6文字かそれ以上の長さにすること; 長いほど良い(上限はありません)
- 大文字小文字、数字、句読点の組み合わせを含めること。
- 個人情報(友人/関係者/ペットの名前、住所や電話番号など)からつけないこと(あるいは意図的にスペルミスをいれること)。
- 覚え易いこと; もし上の内容に沿った"良い"パスワードを選ぶことができれば、あなたのデータは現実的には覗き見不可能です。
セキュリティ及び実装上の理由から、暗号化されたファイルの入力内容は一度にメモリに保持されます; したがって暗号化されたファイルは暗号化されていないファイルほど大きなサイズにすることはできません。数百から2、3千レコードのファイルは問題なく扱えますが、数千のデータレコードがある場合はそうは行かないと思います(Maemoの場合です; より多くのメモリを積んだデスクトップコンピュータであれば、はるかに大きな暗号化されたファイルを扱えます)。
PortaBaseでの暗号化の詳細(使用しているアルゴリズムなども含む)は、PortaBaseのホームページ(http://portabase.sourceforge.net)をご覧ください。
----
Copyright 2002-2004,2010 by Jeremy Bowman.
(jmbowman@alum.mit.edu)
----
長い間和訳してくれたTSUKAMOTO Makio (walrus@digit.que.ne.jp)に感謝します。