[ 新規 | 編集 | 差分 ] [ 検索 | 一覧 | FrontPage ] [ 履歴 (RSS) | 差分履歴 (RSS) ] [ ログイン ]
【PR】Amazon | SL-C3000 | SL-C1000(3/18発売!) | SL-C860 | SL-6000W | SL-6000L | SL-6000N

zdbat

編集

Zaurus DataBase Access Tool

編集

LinuxZaurus の PIMデータベース(BOX形式) にアクセスするためのツールです。
BOX形式のデータベースを使用していないA300では使用できません

PIMのデータを直接扱うので間違った操作をするとデータを壊すおそれがありますので十分にご注意下さい。
またこのツールの使用によりデータが壊れるようなことがあっても自己責任ということでお願いします。

更新履歴

編集

使用例

編集

ダウンロード

編集

バイナリ

編集

ソース

編集

コマンドラインオプション

編集
--- Zaurus DataBase Access Tool version 1.0.1 ---
Usage: zdbat TYPE [-i|-r [-f FIELDS] [-n CARDID]|-w [-g]|-d] [-s SYSTEM FIELDS] [-b BASEDIR] [-e STORAGE] [-c CODEC] [-h]
       TYPE    database type
                 address  : AddressBook
                 todo     : ToDo
                 datebook : DateBook
                 inbox    : MailInbox
                 outbox   : MailOutbox
                 memo     : Memo
       -i      show record information(default)
       -r      read records
         -f     database fields list(CSV)
         -n     number of cardid
       -w      write records
         -g     add undefined category
       -d      delete records
       -s      database system fields list(CSV)
       -b      set base directory
       -e      set external storage(1:SD, 2:CF)
       -c      set text codec
                 eucJP(default) ShiftJIS utf8 ...
       -h      print this help

TYPE

編集

アクセスするデータベースの種類を指定します。

TYPE内容
addressアドレス帳
todoToDo
datebookカレンダー
inbox受信メール
outbox送信メール
memoメモ帳

-i

編集

データベースのレコード情報を表示します。
結果はCSVファイル形式で標準出力に出力されます。

-r

編集

データベースからレコードを読み込みます。
結果はCSVファイル形式で標準出力に出力されます。

-f FIELDS

編集

全てのフィールドではなく、指定したフィールドのみを読み込みたい場合に指定します。
読み込みたいフィールド識別名をカンマで区切って指定します。

例) メールのサブジェクトと本文のみを読み込み

zdbat inbox -r -f "SBJT,BODY"

-n CARDID

編集

指定したカードIDのレコードを読み込みます。

-w

編集

データベースにレコードを追加、またはレコードを編集します。
標準入力からCSVファイル形式のデータを読み込んで動作します。

必須のフィールドとしてCARDIDを指定する必要があります。
CARDIDが0の場合は新規レコードの追加、
CARDIDが0より大きい場合は指定されたCARDIDのレコードの編集になります。

標準出力に実行結果がCSVファイル形式で出力されます。
変更前のデータ、変更後のデータが交互に出力されます。
エラーが発生した場合にはCARDIDが-1のデータが出力されます。

CARDID以外はヘッダ行で指定したフィールドに対してのみ編集が行われます。
(指定していないフィールドは、追加時はデータが空、編集時は無編集になります)
ただし、アプリケーション側で必須なフィールドかどうかは考慮していないので
アプリケーション側で必須なフィールドには必ずデータを入れるようにして下さい。

-g

編集

CATEGORYに存在しないカテゴリー名が指定された場合に自動的にカテゴリーの追加を行います。
通常は存在しないカテゴリー指定は無視されます。

-d

編集

データベースのレコードを削除します。
標準入力からCSVファイル形式のデータを読み込んで動作します。

必須のフィールドとしてCARDIDを指定する必要があります。
CARDID以外のフィールドが指定された場合には
フィールドの内容が一致した場合のみ削除が行われます。

標準出力に実行結果がCSVファイル形式で出力されます。
変更前のデータ、CARDIDが0のデータが交互に出力されます。
エラーが発生した場合にはCARDIDが-1のデータが出力されます。

-s SYSTEM FIELDS

編集

CTTM,MDTM等のシステムフィールドを読み込みたい場合に指定します。
読み込みたいフィールド識別名をカンマで区切って指定します。

例) CTTM,MDTMを含めてレコードを読み込み

zdbat todo -r -s "CTTM,MDTM"

例) CTTM,MDTMを含めてレコード情報を出力

zdbat todo -i -s "CTTM,MDTM"

-b BASEDIR

編集

デフォルト以外のデータベースファイル(.BOX)を使用するときに指定します。
SDカードやCFカードのデータベースファイルにアクセスする時等に使用します。
※MailInbox,MailOutbox以外の場合

-e STORAGE

編集

デフォルト以外のデータベースファイル(.BOX)を使用するときに指定します。
SDカードやCFカードのデータベースファイルにアクセスする時等に使用します。
※MailInbox,MailOutboxの場合

上記BASEDIRの指定は必要ありません。

指定値使用ストレージ
1SD
2CF

-c CODEC

編集

入出力のコーデックを変更するときに指定します。デフォルトはEUCコードです。

-h

編集

ヘルプを表示します。

CSVファイル形式

編集

フォーマット

編集

カンマ区切りのテキストファイルで、下記のルールに従って記述します。
1行目はヘッダー行、2行目以降をデータ行として扱います。

識別名

編集

フィールド名は全て4文字の識別名を持つが、
カードID、カテゴリーは特別扱いとしCARDIDCATEGORYをフィールド名に使用する。
カードIDは必須のフィールドである。

データ型

編集
text文字列
uchar8bit整数値
ushort16bit整数値
ulong32bit整数値
time日付/時刻(ISO8601形式?)
CARDID32bit整数値
CATEGORYカンマ区切り文字列(値はint(ID)またはカテゴリ名(文字列))

日付/時刻形式

編集

日付/時刻形式はQtopiaの TimeConversion::fromISO8601() を使用して変換しています。

タイムゾーンの指定にも対応しているようなので

のような書式でも記述可能です。

末尾にZが入った場合にはUTC、タイムゾーンの指定がない場合にはローカルタイムとして扱うようです。

ハイフン(-)、コロン(:)は削除してから変換を行っているようなので
有ってもなくても変換は可能です。

データベース定義

編集

内容まで全部書ききれないので分かった方は追記お願いします。

AddressBook

編集
識別名データ型内容備考
FULLtext表示名編集不可。一覧表示の個人名として使用。編集時に個人名(姓)、ミドルネーム、個人名(名)で上書きされる。
TITLtextタイトル?未使用。編集時にも変更されない。
LNMEtext個人名(姓)
FNMEtext個人名(名)
MNMEtextミドルネームオプション→入力項目設定で選択すると編集できる。
SUFXtext敬称?未使用。編集時にも変更されない。
FLAStext表示名(英語表記)表示されることはない。編集時に個人名(姓)、ミドルネーム、個人名(名)で上書きされる。
LNPRtextよみ(姓)
FNPRtextよみ(名)
NAPRtext表示名(よみ)詳細表示の際に個人名のよみとして表示される。
CPNYtext会社名
CPPRtextよみ(会社名)
SCTNtext所属
PSTNtext役職
TEL2text[会社]TEL
FAX2text[会社]FAX
CPS2text[会社]携帯電話オプション→入力項目設定で選択すると編集できる。
BSTAtext[会社]都道府県
BCTYtext[会社]市町村
BSTRtext[会社]番地
BZIPtext[会社]郵便番号
BCTRtext[会社]国名オプション→入力項目設定で選択すると編集できる。
BWEBtext[会社]Webページオプション→入力項目設定で選択すると編集できる。
OFCEtextオフィス?未使用。編集時にも変更されない。
PRFStext不明未使用。編集時にも変更されない。
ASSTtextアシスト?未使用。編集時にも変更されない。
MNGRtextマネージャ?未使用。編集時にも変更されない。
BPGRtextポケベルオプション→入力項目設定で選択すると編集できる。
CPS1text携帯電話
TEL1text[自宅]TEL
FAX1text[自宅]FAX
HSTAtext[自宅]都道府県
HCTYtext[自宅]市町村
HSTRtext[自宅]番地
HZIPtext[自宅]郵便番号
HCTRtext[自宅]国名オプション→入力項目設定で選択すると編集できる。
HWEBtext[自宅]Webページオプション→入力項目設定で選択すると編集できる。
DMALtextメールアドレス(その2?)編集は出来るが、表示はされない。カンマとスペースで区切って2つアドレスを入力した場合の最初のアドレス。
MAL1textメールアドレスカンマとスペースで区切って2つアドレスを入力した場合の2番目のアドレス。
SPUStext配偶者オプション→入力項目設定で選択すると編集できる。
GNDRtext性別男性が1、女性が2。
BRTHtext誕生日
ANIVtext記念日オプション→入力項目設定で選択すると編集できる。
NCNMtextニックネームオプション→入力項目設定で選択すると編集できる。
CLDRtext不明未使用。編集時にも変更されない。
MEM1textメモ改行なども含んだ内容を記述できる。
GRPStextグループ?未使用。編集時にも変更されない。

ToDo

編集
識別名データ型内容備考
ETDYtime開始日
LTDYtime期限日
FNDYtime処理日
MARKuchar完了チェック(0:完了,1:未完)
PRTYuchar重要度(1-5)
TITLtext内容
MEM1textメモ

DateBook

編集
識別名データ型内容備考
DSRPtext記述
PLCEtext場所
MEM1textメモ複数行にわたるメモも可。
TIM1time開始
TIM2time終了
ADAYuchar終日1=yes,0=no
ARONucharアラームon/off0=on,1=off (???)
ARMNushortアラーム時間何分前
ARSDucharアラーム音1=あり, 0=なし
RTYPuchar繰り返しの種類255(signed charなら-1)=なし, 0=日, 1=週, 2=月(曜日指定), 3=月(日付指定), 4=年
RFRQushort繰り返しの間隔1=毎日(週、月), 2=1日(週、月)おき, ...
RPOSushort繰り返しの位置1=月の第1週, ...
RDYSuchar繰り返しの曜日7ビットで、下位ビットから月、火、水、…を表す。例: 月水金=21
RENDuchar繰り返し最終日あり1=あり
REDTtime繰り返し最終日UTC
ALSDtime終日の予定の開始日
ALEDtime終日の予定の終了日ALSDと異なる場合、MDAY=1
MDAYuchar終日の継続1=あり, 0=なし

Datebookは標準環境で高速起動が有効になっていますが、この場合はzdbatでレコードの追加、削除、変更をした後には、カレンダに表示するために以下を実行する必要があります。

qcop QPE/Application/datebook "reload()"

Mail

編集
識別名データ型内容備考
MLIDulong
SIZEulong
TYPEuchar1で固定?
RDCKuchar既読チェック
DLCKuchar
DECKuchar
SVIDtextX-UIDL0x21から0x7Eの範囲の1から70文字で、ユニークになるように構成
SDCKuchar
MDCKuchar
DRFTuchar
SLCKuchar
ACNMtextアカウント名
MLBXtextフォルダ名
RVTMtime受信日時
SDTMtime送信日時
TMZNtextTimeZone
FMACtextpop3アカウント
FMNMtextFrom名前
FMADtextFromアドレス
MLTOtextTo
MLCCtextCc
MLBCtextBcc
MLRPtextReply-To
SBJTtext件名
BODYtext本文
HTMLtext
ENNMushort添付ファイル数添付ファイルがないときは0を指定。
ENATtextMIMEタイプplain、png、x-bmpなど。複数添付ファイル時はカンマ区切りで記述。
ENTPtextMIMEタイプtext、imageなど。 〃 。
ENFLtextファイルパスフルパスで指定。 〃 。
DMMYtextその他ヘッダC750/60および1.50JP以降のC700/B500ではMessage-Id・In-Reply-To・Referenceが、[ヘッダ名 中身 改行]という形で入っている。ヘッダ名は内容の有無にかかわらず必ずある。1.20JPまでのC700/B500では何も入っていない。

Memo

編集
識別名データ型内容備考
CLAStext名前
MEM1text本文
DATEtime

コメント

編集

ご意見、ご要望はこちらにどうぞ。


31188