当ブログに掲載しているサンプルは、すべて利用者の自己責任という形でお願いします。
ただし、明らかな不具合がある場合、ご連絡いただければ、訂正記事を出します。
また、こちらのサンプルは、別のサイト等への公開、転載は一切禁止しています。
どうしてもと言う場合は、筆者にあらかじめご連絡ください。
記事そのもののリンクについてはご自由に行っていただいてよいです。

テクてく Lotus 技術者 Slack に参加しよう!

2010年8月31日火曜日

メールの回収

皆さん、IBM Lotus Notes Movieを見ましたか?
ちょっと微妙なムービーですが、Lotus Notesでできることを端的に教えてくれるという点では、面白いですよ。

さてさて、では今日もクリックしましょう。
にほんブログ村 IT技術ブログへ


今日は、Lotus Notes Movieの第1話で取り上げられているメールの回収について書いてみたい。
と言っても、設定もそんなに難しくないし、今更な感じも否めないが、そこは付き合って欲しい。

まずは、メール回収の設定から。
1.ドミノディレクトリにサーバ設定文書を作成する(すでに作成してある場合は、作成済みの文書を開く)。
2.[ルータ/SMTP]タブの[送信済みメールの回収]タブを開く。
3.「送信済みメールの回収」の項目を"有効"にする(デフォルトが有効になっているので、変更しなくても良いだろう)。

※ルータタスクを再起動の必要はなさそうです。

たった、これだけです。簡単ですね。



では、次にクライアント側の方を見ていきましょう。
ポイントとしては、
・「送信済み」「すべての文書」ビューからのみ実行可能
・メールの回収は、1度に1通しか行う事ができない
ということです。
つまり、「送信済みのメール文書を開いても実行出来ない」のです。
メールの中身を見て、「あ!これは間違えて送った奴だから取り消さないと!」と言うときでも一度ビューに戻る必要があるのです。ちょっと面倒ですね。

この[送信済みメールの回収]をクリックすると、下図のようなダイアログが表示されます。

今回は、全員からメールを回収してみますので、全員にチェックを付けます。
また、2つあるオプションも両方チェックを入れてみます。

なお、色々なパターンを検証するために、受信者の状態は次のようにしてあります。

受信者名

文書の状態
Test Ichirou 未読
Test Jirou ゴミ箱行き後、未読として戻す
Test Saburou 既読
Test Yoshimi メール削除
Test Gorou 既読後、未読に戻す
Test Mutsuko ゴミ箱行き
Test Nanami ゴミ箱行き後、既読として戻す

上記の設定画面で、[OK]をクリックすると、メールの回収が行われたことを示すダイアログが表示されます。(下図)















この時、サーバ画面では、下図のように表示されています。


全員のメールがrecallされた後に、結果を送信者(メールの回収実行者)に送っていることが分かります。
結果は下図の通りです。

先ほどの表のようにまとめた結果がこちらです。
受信者名
文書の状態
結果
備考
Test Ichirou 未読 回収済み メールは未読です
Test Jirou ゴミ箱行き後、未読として戻す 回収済み メールは未読です
Test Saburou 既読 未回収 回収を許可されていません
Test Yoshimi メール削除 未回収 メールが受信者によって削除されました
Test Gorou 既読後、未読に戻す 回収済み メールは未読です
Test Mutsuko ゴミ箱行き 回収済み メールが受信者によって削除されました
Test Nanami ゴミ箱行き後、既読として戻す 未回収 回収を許可されていません

文書を読んでしまったユーザのメールが回収できなかったのは、サーバ設定文書の設定によるものです。
また、ゴミ箱に移動している場合について回収されているのというのもポイントです。

ちなみに、サーバ設定文書の設定を変えることにより、既読文書でも回収をすることができます。


是非、試してみてください。



【PR】ノーツ/ドミノに関するお問い合わせは下記まで【PR】
単純なDBのカスタマイズから他アプリケーションとの連携までご要望にお応えします
Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

2010年8月30日月曜日

テクてくLotus 技術夜会に参加してきました Part2

気がついたら8月も終わりです。なんでしょう・・・

まずは、ボタンをポチッと
にほんブログ村 IT技術ブログへ


さて、先週の金曜日、渋谷マークシティにある日本IBM殿にて、「テクてくLotus 技術夜会 ザ・アドミン編」が開催されました。
当然?、筆者も参加してきました。管理者ガイドはすでに購入済みですので、管理者ガイド目当てではありません。もらいましたけど(2冊もいらないよなぁ。どうしよ。でも、あげないですよ)。

今回は前回のザ・デベロッパー編に比べると少なかったようですが、それでも60名弱の方が集まったようです。

管理者向けの夜会ということで、Lotus Dominoサーバの基礎知識について講演がありました。
参加者の皆さんは真剣に話を聞いていました。

この時の資料は、テクてくLotus技術者夜会:ザ・アドミン編_10-08-27からダウンロードできますので、参加できなかったという方も一度目を通しておくと良いでしょう。



なお、この夜会で、今年のLotus Day(って言って良いのかな?)の開催日程が発表されました。
名称は「Lotus Knows EXPO 2010」で、10/21(東京)、10/26(大阪)での開催とのことです。
詳しくはLotus Knows EXPO 2010を参照してください。


【PR】ノーツ/ドミノに関するお問い合わせは下記まで【PR】
単純なDBのカスタマイズから他アプリケーションとの連携までご要望にお応えします
Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

2010年8月26日木曜日

ビューで選択した文書の内容を本文に貼り付ける

なんと前回の投稿から1ヶ月以上経過していた・・・
吃驚仰天。

書かなかった理由は色々ありますが、あえて触れません。

とにかく、本文を読む前にこちらのボタンをクリックしましょう。
にほんブログ村 IT技術ブログへ


さてさて・・・
ドミノ懇談室にビューから選択(複数可)した文書リンクを、新規メール本文に貼付けたいという投稿があったので、ちょっと検証してみた。

複数の文書ということなので、@コマンドではおそらくできないであろう。
ということでLotus Scriptで書くことにしてみた。

1.複数文書を取得して、
2.新規文書の本文に
3.取得した文書のリンクとフィールド内容を添付する
ということが要件なので、
↓こんなサンプルかな?
Sub Click(Source As Button)
 On Error Goto ErrProc
 
 Dim session As New NotesSession
 Dim db As NotesDatabase
 Dim docs As NotesDocumentCollection
 Dim doc As NotesDocument
 
 Dim mdoc As NotesDocument
 Dim mbody As NotesRichTextItem
 
 'DBと文書の取得
 Set db = session.CurrentDatabase
 Set docs = db.UnprocessedDocuments
 
 '新規文書の作成
 Set mdoc = db.CreateDocument
 mdoc.Form = "MainTopic"
 mdoc.Subject = "選択した文書のリンクとフィールド内容を貼り付ける"
 Set mbody = New NotesRichTextItem( mdoc, "Body" )
 
 '取得した文書のデータを貼り付ける
 Set doc = docs.GetFirstDocument
 Do While Not ( doc Is Nothing )
  Call mbody.AppendDocLink( doc, "" )
  Call mbody.AddTab( 1 )
  Call mbody.AppendText( doc.Subject(0) & "," )
  Call mbody.AppendText( doc.Categories(0) )
  Call mbody.AddNewline( 1 )
  
  Set doc = docs.GetNextDocument( doc )
 Loop
 
 Call mdoc.Save( True, True, True )
 Exit Sub
ErrProc:
 Msgbox Cstr(Err) & Chr$(10) & Error & Chr$(10) & Cstr(Erl)
 Exit Sub
End Sub

ちなみにサンプルなので、見てくれ等は何も考慮していない。
また、文書リンクを貼り付けると言うことはリッチテキストを扱うことになるので
必然的にバックグラウンドでの処理となる。



ちなみにLotus Notes/Domino 8.0以降であれば、「CopySelectedAsTableコマンド」が利用できるので、もっと簡単にできる。
↓こんな感じ。
----------------------------------------------
@Command([CopySelectedAsTable]);
@Command([Compose];"MainTopic");
@Command([EditGotoField];"Body");
@Command([EditPaste])
----------------------------------------------
こちらであれば、選択したデータが表形式でコピーされるので見た目もそれなりに綺麗になる。
ただし、ビューに必要な情報が表示されていることが前提である。


記事の投稿者はノーツのバージョンが6.5.xということでこの方法は採用できないのが残念だ。
こういうちょっとしたことも便利になっていることがあるので、バージョンアップというのは常に検討して欲しい。


【PR】ノーツ/ドミノに関するお問い合わせは下記まで【PR】
単純なDBのカスタマイズから他アプリケーションとの連携までご要望にお応えします
Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ