[PR]今日のニュースは
「Infoseek モバイル」


znsyncのホムペ

SL系zaurus用のLotusNotes同期ツールの公開ページです。

あなたは人目の訪問者です


version 0.3公開

A300への対応、不具合の修正
2006/12/17再公開 ※calender.xmlを修正しています

LotusNotesとZaurusでデータを交換するツールです。
環境によっては動作しないこともあるかもしれません。
事情により本ver0.3をもって開発終了とさせていただきます。
詳しくは開発日記をご覧ください。


2006/12/17の時点で分かっている問題

2006/12/17の時点での問題の解決方法

2006/12/17の時点で上がっている希望


機能

 ZaurusのPIMをLotusNotesのタスクやカレンダーと同期させるツールです。
 Zaurus側とPC側の両方にソフトを用意して同期させます。
 現状同期できるのは以下のとおり。
  1. タスク(Todo)
  2. カレンダー
 いくつかのイベントでDMonkeyスクリプトを実行できます。
 (と言うより実行しないと動作しない)
 ※DMonkeyのすべての機能は網羅していません

 このアプリケーションは以下の図のようにZaurus側をサーバーと見なし、
 PCでNotes、Zaurusからデータを収集、同期するようになっています。
 
 そのため、Zaurus側とPC側の両方にアプリをインストールしてはじめて機能します。

前提条件

現状動作を確認しているのは以下の機種。
  1. SL-C700
  2. SL-B500
  3. SL-A300

インストール

このバイナリをZaurusにダウンロードしてインストールしてください。
カードにインストールしても動くと思います。
B500、C700系用A300用
znsync_0.3-1_arm.ipk znsync_0.3-1_arm.ipk
A300とB500,C700系はバイナリが違いますのでご注意ください。

更にこのバイナリをPCにダウンロードして適当なフォルダに一式解凍してください。
A300、B500、C700系用
znsync.zip
PC側モジュールは共用です。


ソース

Zaurus側
B500、C700、A300用
znsync_sv_src.zip
A300とB500,C700系すべてのソースが含まれています。

PC側
A300、B500、C700系用
znsync_cl_src.zip
PC側モジュールは共用です。
DMonkeyのソースコードが別途必要です。



使い方

1.機器の準備
 まず機器の準備をします。
 ZaurusとPCをUSB接続(ネットワーク)もしくはLANで接続します。

 PCからpingしてZaurusと疎通していることを確認してください。

2.Zaurus側でサーバー起動
 Zaurus側でznsyncを起動します。
 こんな画面が出ます。

最初は画面には文字はでていません

3.PC側でクライアント起動
 次にPC側でznsClient.exeを起動します。
 こんな画面が出ます。

 入力する内容は特に説明もいらないでしょう。
 OKを押すとNotesとZaurusの両方に接続します。

4.データ取得準備
 接続するとメインの画面がでますので、モードと日付を選択します。

 日付の範囲はカレンダーにのみ有効な設定です。

5.クライアントでデータ取得

 データ確認ボタンを押すとZaurusとNotesからデータを受け取って同期計算をはじめます。
 これだけではまだ書き込みを行わず、画面上に結果を表示するのみとなります。

6.サーバーへ書き込み

 送信ボタンを押すとそれぞれに対して書き込みを行います。
 送信前にデータをよく確認してください。
 大切なデータが消えてしまっても作者は保証できません。



各種設定の変更

Zaurus側の設定変更

変更した場合はアプリケーションを再起動してください。

PC側の設定変更

各モードのデフォルト値の変更

ここで設定した値はメイン画面のモードを選択した時のデフォルトの値となります。

Todoの設定変更

設定XMLをインポートすることで設定を変更できます。
詳しくはPC側の圧縮ファイルに同梱のReadme.html参照。

Calendarの設定変更

Todoと同様に設定を変更できます。


注意事項

1.カレンダーの同期は繰り返しの際のデータの持ち方がZaurusとNotesで大きく違います。
  Zaurusの場合は1データ。Notesの場合は子文書で複数データ。
  という持ち方になっているようで、同期の際にこの違いを吸収しきれません。
  従って、Zaurus→Notesの場合は繰り返し設定を無視して1データ。
  Notes→Zaurusの場合は繰り返し設定を無視して単一予定として1データを書込みます。

2.このソフトはLotusNotesのCOM機能にてデータの取得/書込を行っています。
  この機能がサポートされるのはNotes 5.0.2以降です。

3.Notesは簡単にDBを作れて、ゴリゴリカスタマイズできます。
  当然、タスクやカレンダーをカスタマイズしている場合もあるでしょう。
  そうするとznsyncパッケージの構成のままでは動作しません。
  DMonkeyのスクリプト機能でその違いを吸収できるようにしてみましたが、
  完全に吸収できるかわかりません。
  もし動作しなくても作者のせいではありませんのでご了承ください。

4.アドレス帳もサポートする予定ですが、
  メールについては現在サポートする予定はありません。
  (添付ファイルとか無理そうなので)

5.DMonkeyはVCL、GUI、SOCKETが使用できません。
  (C++Builder6で使おうとすると無理っぽいです)

6.ZaurusのカレンダーやTodoは購入してから1度も使用していないと
  データの準備ができていないのか、BOXのオープンに失敗してznsyncが異常終了するようです。
  このような現象の場合はznsyncを使用する前に一度Todoとカレンダーを起動してみてください。

7.NotesR6で「Notesが見つかりません」というエラーが出て使用できないことがあります。
  regsvr32でnlsxbe.dllを登録してみてください。

8.カレンダー同期の際の日付範囲指定はview使用時には指定できません。
  DBからの直接検索の場合のみ機能します。


開発日記

2006/12/17(最終)おまけ

Zaurus側にスケジュールを追加するとアラームがonになってしまうという現象が報告されました。
現象を確認し、calender.xmlを修正しました。

PC側モジュールを再公開しました。
しかし、変更点はcalender.xmlだけですので、PC側モジュールを入れなおす必要はありません。
変更点は以下のとおりです。

   <NotesItemName>@FILLER006:1</NotesItemName>
         ↓
   <NotesItemName>@FILLER006:0</NotesItemName>

   <NotesItemName>@FILLER008:0</NotesItemName>
         ↓
   <NotesItemName>@FILLER008:1</NotesItemName>

自分で変更できる方は上記変更をcalender.xmlをエディタで変更してください。
ソースコードも公開しました。
これで開発終了とさせていただきます。
ご意見くださった皆さんありがとうございました。



2006/11/20(最終)

8月をもって一身上の都合により職を変えました。
今度の会社ではNotesを使っていません。
これにより事実上znsyncができなくなりました。
よって本リリースをmmo作成最終版とさせていただきます。

ver0.3にてa300に対応しました。
その他、Notes側の削除機能を動作していなかった問題を修正しました。
テスト環境な無くなったため、不具合があったとしても今後対応できるかわかりません。
可能な限りの対応はしたいと思いますが、できない場合はご容赦ください。

プログラムソースをGPLとして公開します。
整理して作ったつもりですが、非常に読みにくいソースです。
ご覧になる時は参考程度と思ってください。
準備ができ次第公開します。

最後に、これまで意見をいただいた方々に感謝します。
ありがとうございました。



2006/05/28

ようやくA300用のxml入出力クラスができた。
カレンダー部分はアラートやらなんやらでワケわからんのでqteソースを使わせてもらった。
通勤電車の中C700でコーディングしている為、非常に進捗が遅い。

夏休み前にはリリースしたいと思う今日このごろ。



2006/03/04

どうも件名や内容に&が入っていると文字化けするらしい。
あります・・思い当たるフシが・・
文字区切りである文字を使っていたので、XMLのようにエンコードして送受信していたわけですが、
受け取り側でデコードするコードがすっぱり抜けてた。
そんなわけで修正してリリース。

そして、オクでSL-A300をげっつ!
開けてみてびっくり。
ちっさい!
10000円ちょっとだったけどこれで対応がやりやすくなったぞ。
SL-A300への対応は進めてまいるんだけどね・・本業の関係でなかなかいじれない。つД`)



2006/02/08

9:00以前のスケジュールデータが翌日になってしまう現象が報告された。
早速現象を確認。再現するじゃないか(´Д`;)
Zaurusのスケジュールは内部ではGMT時間で持っている。
日本はGMT+9:00なのでこの変換のあたりが激しくぁゃιぃ。
ありました。間違いが・・

早速修正して動作確認。
これってv0.1から同じコードだからv0.1の時も起きてたんだな・・・orz
修正完了で再公開だ。

SL-A300は4桁での入手は難しそうだなぁ・・
そんなに潤ってるわけでもないし。厳しいなあ(´・ω・`)
とりあえず想定でコード書いてみようかな。



2006/01/26

ダメだ・・・FTSearchはやはり全文検索用の関数だ。
細かい条件の指定は難しいようだ。
viewを使わず、DBから直接Searchをかければ@関数が使える。
この方法で対処するしか方法はなさそうだ。
とりあえずviewを使ったカレンダー同期では日付範囲を指定できないようにした。
これで対応していくしかないだろう。

これで1年越しでver0.2公開。
次はA300の対応だが・・・実機が無いのはテストしづらいな。
中古で数千円で売ってないだろうか。



2006/01/19

開発停止から1年。
ようやく再開できた。
問題の出ていた繰り返しの日付ずれは取得先項目を変更することで対応。
変更した先が日付配列で持っていたので少々悩んだが1番最初の値を取ることで対応可能だった。

だが、viewからの日付選択がどうしてもおかしい。
時刻/日付型とリスト項目になっているのが原因のようだが、解決策は見いだせない。



2005/01/03

カレンダーの同期に日付範囲を指定できるように。
時間が取れなくてようやっと作業開始。
大まかにはできあがり。
明日からまた忙しい毎日が..
なんとか1月中にはリリースしたい。

それにA300で使いたいとの要望が。
そもそもA300のカレンダーはXML形式なんでB500、C700系とは構造が根本的に違う。
入出力部分を別途作らないと対応できないわけだが..
これは何としても対応したいものだ。



2004/09/11

肌寒い正月休みの1月から作りはじめて9ヶ月。今はもう夏も終わろうという9月。
ようやく公開。
と思ったらリリース直前に細かいバグが...
全部つぶしきれただろうか。
一通り機能をチェックしたがテスト環境では問題ないようだ。

長かったがここで0.1としてリリースすることにした。


2004/08/29

なんとか形になってきた。
開発の開始は1月頃だっただろうか。
既に半年以上が経過している..

タスクの同期はほとんどの項目で1対1となっていて比較的簡単に同期できるようになった。
だが、カレンダーに入って大きな障壁が。
どうも繰り返しのデータの持ち方が大きく違うようで、吸収しきれない。

それに、考えてみるとNotesってのは自由にカスタマイズできちゃうから
初期インストール時DBの内容に合わせて作っていたら動作しない場合が多数でてくるだろう。

そんな訳でデータ取得、同期、データ書き込みの際にスクリプトを用いてデータを操作できるようにすることにした。
当初はVBScriptで実装しようと思っていたが、C++Builder6でのCOMの扱い辛さに断念。(ここが長かった)
ちょっとでも親和性のあるDMonkeyを使用することにした。

とりあえずタスクとカレンダーはなんとか同期できるようになったようだ。
まだ自由にカスタマイズはできないけど0.1としてリリースする準備をはじめた。


version 0.3公開 2006/11/20
version 0.2公開 2006/01/26
version 0.1公開 2004/09/11
ページ作成。公開はもうちょっと先 2004/08/29

mailto:mamao2@cside.com
ご用の方は必ず件名に「znsync」を入れてください。そうしないとspamフィルターによって自動削除されます。