スポンサーサイト

--年--月--日 --:--

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Lotus Notes Diagnostics Utility

2008年12月26日 23:55

以下のようなユーティリティが配布されているのを御存知でしょうか。

Lotus Notes Diagnostic utility (#4019151)

インストールすると以下のようなファイルについてKnowledgebase Searchをしてくれたり、重要な出力をまとめてくれたりします。

・ NSD
・ SEMDEBUG.TXT
・ ドミノのメモリダンプ


実はサポートでも同じようなツールを使用しているのですが、その中でも公開可能な機能を切り出したものでNSDなどを自分で見てみたい、と思っている方には非常に興味深いのではないかな、と思います。

基本的にはインストールしてからは、NSDやSEMDEBUG.TXTなどを右クリックして適当なメニューを選択すると動作するはずです。

サポートでも解析ツールなどを使う事に対する是非と言うのは議論があります。
個人的にはどうせマニュアルチェックもするのだから、始めの定型調査にはツールを使うべきだ、と思っているのですがやはり自分の目でNSDを解析しないと・・・と言う人も多いので、どちらがいいとは一概には言えないところです。。

LNDそのものは入れたことが無いのでスクリーンショットなどは出せないのですが、NSDからこんな事が分かるのか、と言う事を知ることが出来たり、出来るだけ自分で解析したい、と思っている人には強力なツールですので是非是非試してみてください。
スポンサーサイト

NotesPeek: 削除スタブを理解する

2008年12月26日 01:30

 昨日NotesPeekについて紹介したのは別に日本語用の設定が裏技だ!と思ったからではありません。。やっぱりNotes サポートの人間が書いているブログなので、サポートツールを紹介しているのが一番それらしい気がしたので手始めにNotesPeekについて取り上げてみようと思いました。

さて、NotesPeekでは削除スタブが見れる!と言う話を聞いてどきどきしながらNotesPeekを使ってみて、たいした情報が見れずにがっかりした人は多いのではないでしょうか。消したはずの文書の内容が見れるツールだったらすごいと思うのですが、実際に削除スタブには消した文書のフィールド値などの情報があるわけではないのでこのような目的では使えません。

さて、NotesPeek で削除スタブの一覧を見る場合には以下のように左側のペインから「Deletion Stub」を選択します。

NotesPeek: 削除スタブ

ここで削除スタブを選択すると以下のような情報が表示されます。
(クリックすると拡大します)

削除スタブの情報

NotesPeekが一部しか表示できないのではなくて、これが削除スタブの情報です。
削除スタブは複製間で削除情報を伝播するために使用されるものですので、いわば「削除のログ」のような情報だけを保持しているのです。

以下のような情報をここから確認します。

・ 文書のID (Note IDやUNID) 
・ 文書の最終更新日 (Sequence-time)
・ 文書の更新回数 (Sequence)

つまり最終更新日が分かるので、いつ削除されたかを正確に特定できる、と言うのが削除スタブをNotesPeek で確認する意味になるのです。
 この後さらに削除の詳細について追いかける場合にはデータベースの使用状況やログから地道に特定していく事になります。

 と言うわけでNotesPeekから確認できる削除スタブ情報もあまり過度な期待を抱かないようにしてください。。。

Notes Peek - 日本語用の設定にしましょう

2008年12月24日 23:15

Notes データベースの削除フラグや、プロフィール文書やその他のデータベースの情報などを出力するのに Notes Peek を使用したことがある人は私のようなサポートを仕事にしている人以外でも多いのではないでしょうか。

以下のサイトなどからダウンロードしてNotesのプログラムディレクトリにコピーしてください。
NotesPeek 1.53 tool for viewing Notes databases on Notes 6.x and higher (#4005686)

Notesクライアントで開きたい方はこちらから

使えばだいたい使い方が分かる事もあって適当に使っている方も多いのですが日本語のデータベース名などが化けて見苦しい事もあるので、フォントの設定くらいはきちんとやっておきましょう。

たいしたことない話なのであまりこの辺の話を書いているサイトがなかったので、ちょっと誰かの役に立つかもしれない、と思うので書いておきます。

起動したら、メニューから[View]-[Set Font]を起動してください。
日本語フォントにすることはすぐ気づくと思うのですが、下の文字セットも画面ショットにある通り「日本語」にすることを忘れないようにしてください。

NotesPeek: フォントの設定

次に、[View]-[Optoins] から以下のようにアイテムのStringsの表示設定を行います。
文字化けしているときなどは、Display as hexなどのほうが便利なときもあるのですが、「Convert From LMBCS」を入れておくのが日本語表示では便利なのではないかと思います。

NotesPeek: アイテムの表示設定

ここまで設定したら[View]-[Save Options As Default] を選択してください。

ここまで出来たらNotesPeekの初期設定は完了です。
NotesPeek を使って何か面白いものが見えるか・・・と言う話は次回以降に繰り越します。。。
(と言うかまだ詳細は考えていませんが・・・)






Fix pack / MR etc...

2008年12月23日 02:30

 昨日はCCHリリースの話もアナウンスしましたが、ここ最近はメンテナンスリリース(MR)の提供間隔が非常に長くなりました。
MRはまとまった形での修正提供として積極的に検討して頂けるお客様や、適用の計画やテスト、そのためのコストなども考えると簡単には適用の判断は出来ないお客様など色々な背景・事情があるのではないかと思います。  MRの間隔が長くなったのはこのようなお客様への配慮をしたものですが、ちょっと長文になるのですが、少しこの辺の経緯などを書いてみたいな、て思いました。

 はじめに、「最新のMRの適用」と言うとそれだけで嫌悪感を持たれるお客様も多いのですが、実際には以下のように運用に組み込む事によって安定稼動をしている事例もあり、逆に変更不能とか環境凍結を前提にしていると問題解決が難しくなるケースも多いので、何かしらMR 適用を行う基準や間隔について指針を持っていたほうがいいのではないかと思います。

Lotus Notes/Domino安定稼働のベスト・プラクティス

 MRの話をすると始めに思い出すのはR5時代のQMR ( Quarterly maintenance releases)を思い出す方は多いのではないでしょうか。これはその名の通り、3ヶ月毎にリリースする事を目的としていました。 修正がMRと言う形態で市場に出るのは早かったのですが、最新のMRを適用しようとしても3ヶ月に一度新しいものが出てしまうので実際は適用が間に合わず、逆にお客様には最新のMRが適用してもらえない状態が発生していました。

 これは出荷するにもテスト期間が十分でない、と言う議論が発生し、2001年頃には「Q」が除かれ、4ヶ月毎にリリースし、テスト期間も十分に確保するようにしよう、と言うことになりました。
 このあと、複数のコードストリームが市場に出回るようになると(例:R5.xと、R6.xと R6.5x)、4ヶ月毎、のような目標期間を設ける事は行われなくなり、最新のコードストリームは相対的に短い間隔で出荷し、古いコードストリームの出荷間隔は空けるようになりました。R5.0.12 から R5.0.13が出るのに13ヶ月ほどかかったのを覚えておられる方もいるのではないかと思います。

 このような中、6.5.x が出たあたりから、リリースされるHotfix 量が激増している事が製品品質上の懸念事項として大きくクローズアップされるようになりました。 MRのようなテストが行われていないHotfix を多くのお客様が適用している状態になると、製品品質上も望ましくないのではないか、と言う事が懸念材料になってきていました。 これを受けて、色々なアクションが取られたのですが、まずリリースされたHotfix を分析すると以下のような傾向がある事が分かってきました。

・ MRに対してほぼ 5%程度の割合の問題に対するHotfix がほとんどを占めている。
・ MR適用に追いつけなくなったお客様が古いMRに対するHotfix 要求をする割合が増加している

このような分析を受けて、Fix Pack と言う形式が採用されるようになりました。
MRのリリース頻度を下げて、報告の多い問題修正をまとめたMRより変更範囲を限定したものを提供したほうがよいのではないか、と言うことです。
 MRでは1000-1500の修正が含まれますが、FPでは20-50の修正だけにとどめてあり、適用時の修正リスクも抑え、MRより適用しやすくなっています。これは予防保守の観点でのメリットも高いので適用していただけるお客様も多く、それなりに受け入れられたのではないかと思います。

それに対し、なぜクライアントはHotfixもFPも提供されないのでしょうか?
私はクライアントサポートをしていることが多い身だったので、これは本当に苦しい対応になることが多かったのですがいくつか理由があります。

 よく「クライアントはインパクトや重要度が小さいから提供されない」と言う言い方をされるのを耳にしますが、これは正しい話ではありません。 たとえば、全クライアントでヒットする可能性のあるクライアントクラッシュ、などがあったらサーバーの問題以上に深刻と言えるのは言うまでも無いことですので。。
 一つは、累積Fix Packのような形態について、いくつかのお客様からヒアリング調査でのフィードバックとして「予防保守目的でFix Packを適用するか?」と言う問いに対し、ほとんどのお客様はサーバーに対しては積極的に検討したい、と言ったのですがクライアントについては「実際にヒットしていないのであれば特に実施したくない」と言う声が多かった事があったそうです。
 もう一つの理由はクライアントのHotfixはサーバーのHotfix よりも影響度やRegression のリスクが大きく、難しいのでサーバーほど簡単に出す事は出来ず、MRのようなQAテストを経たものを出来るだけ渡すようにしたい、と言う事があったからです。サーバーのほうが難しそうだと思われる方も多いかもしれませんが、様々なGUIや複雑なWindowメッセージなどが処理されるクライアントの方が複雑なのです。 ただ、この辺は昨今のCCHリリースなどでも表れております通り、どんどん変わっている部分です。

 現在に至るまでMR/FP/Hotfixなどは色々な経緯を経ていますが、現在の提供形態が最善のものではない、と言う事はサポートや開発でも常に議論されている事です。 そして、問題を出来る限り迅速に沈静化させる必要があるサポートシーンと、出来るだけ安定し、テストも十分に行われたものを管理可能な形で多くの人にリリースしたい、と言う開発視点の発想はどちらも重要なものですので、安易にどちらかへ偏る事も出来ません。 またそもそもHotfixや種々のFIXが必要ない製品を出して欲しい、と言う声もそれ以上にあるのではないかと思います。
 
この点については今後も改善に努めてまいりますので、今後共よろしくお願いいたします。


# ここで掲載された話の多くはこのBlogにも引用されているScott Vrushoのコメントを参考にさせて頂いています。興味のある方は御一読下さい。
 IBM: Update on maintenance schedule (Guest Blogger: Scott Vrusho)

8.0.2 CCH2 がリリースされました

2008年12月22日 02:58

 CCH1のリリースからこの間隔で出てくるとは思っていなかったのですが、CCH2がダウンロード可能になりました。

日本語:
Lotus Notes 8.0.2 クライアントの Cumulative Client Hotfix 2 (CCH2) について (#732242)
英語:
Lotus Notes Standard Client Cumulative Client Hotfix 2 (CCH2) for 8.0.2 (#7014746)


このページからダウンロード可能です。

一覧を見る限り、IFR1 との統合といくつかのクライアントクラッシュの問題が修正されたようです。
8.0.2をご利用になる方は一度ご検討ください。

ヘルプの日本語版ダウンロード可能になりました

2008年12月20日 14:16

 サポート内での懸念事項の一つとして、Notes/Domino の Infocenter 化などの情報のオンライン化が進んでいる割にオンラインで日本語のドキュメンテーションの入手が出来なくなっている、という事があったのですが、このたび 8.x のヘルプがダウンロード可能になったようなのでお知らせします。

Lotus Notes 8 (Basic版)
Lotus Domino 8 システム管理ヘルプ
Lotus Notes/Domino 8 デザイナーヘルプ
Lotus Notes/Domino 8.0.2 リリースノート
Lotus Notes/Domino 8.0.1 リリースノート
Lotus Notes/Domino 8.0 リリースノート

英語版になってしまいますが、Infocenter へのURLは以下の通りです。
英語のドキュメントでよい人はBookmarkなどに入れるのはここが便利かもしれません。

IBM Lotus Domino and Notes Information Center

各情報へのリンクは以下のサイトからアクセスできます。
最新版の確認などはこちらから探すほうが便利です。

Lotus Documentation

Notes Document Viewer

2008年12月19日 01:32

Notes の文書の問題を調査するとき文書のプロパティで1つ1つフィールドを見ていくのは根気がいる作業です。
 問い合わせなどでは、文書をテキストファイルに書き出したりして比較したりするような方法をとることが多いのですが、僕の場合以下のようなツールもよく使います。

Notes Document Viewer

データベースをダウンロードしたら興味のある文書をこのデータベースにコピーするだけで使うことが出来ます。
 フィールドの値がフラットに表示できるので、Ctrl-F で特定の値がどのフィールドに入っているのかを探したりするのにも使えます。

ブラウザプラグインの問題を調査する(IE7のプラグインなし起動)

2008年12月18日 00:32

DWAを使用しているとよく分からないところでハングアップする、と言うので色々調べてみたらブラウザプラグインの問題だった、と言うことが増えてきました。

ブラウザのツールバーとかを制限している会社でもデフォルトで入っているものも多いので、それだけで結構な数のプラグインが導入されています。 「1つ1つ無効にしていってください」と言ってもなかなか思うように調査も進まず、困ってしまう事が多く、プラグインが特定されないと再現性も得られないので非常に厄介な問題の一つです。

プラグインの問題切り分けについては後日また触れたいと思うのですが、このような問題調査のためにIE7から「アドオン無しのIE起動」が出来るようになりました。これは切り分けのFirst Stepとしてかなり有効なのではないかと思います。

スタートメニューから[すべてのプログラム]-[システムツール]-[Internet Plorer(アドオンなし)]を選択するとアドオン無しで起動します。

これが面倒な人は、スタートメニューから「iexplore.exe -extoff」 を指定しても実行できます。
是非利用してみてください。

DWA: Internet Explorer Toolbar のDOM インスペクタ機能を使う

2008年12月17日 00:50

WEBアプリの開発者で、DWA の設計に興味を持って、自力でFormsX.nsf を(Xの部分はバージョンによって違います)を開いて設計解析をしようとして挫折された方は多いのではないのでしょうか?

 僕自身調査時に設計を見ることはありますが、見ていて結構つらいな、て思うことも多いです。
で、問題毎にどこを調査の糸口にするか?ですが、やはり該当タグのID名やCSS用のクラス名などを調べることを調査のとっかかりにしたい、という方は多いのではないでしょうか。

今日紹介するには以下のツールです。名前のとおりInternet Explorerのプラグインなので、マイクロソフト社様から提供されているものです。このようなDOM インスペクタを使うと、表示された画面から構造解析を行うのでJSファイルなどが複数に分割されているサイトやJavaScriptなどを使ってダイナミックに表示しているページが多数ある場合にはかなり効率がよくなります。

Internet Explorer Developer Toolbar

ツールバーをインストールするとツールバーに矢印アイコンが現れるようになると思いますが、このツールバーアイコンをクリックして解析を行います。 (IE7で確認していますが、IE6.x などでアイコンが違ったらすみません。。)

実際僕が主に使う機能は二つだけで、「Elementの検索と表示」(DOM Inspector)と「選択部分のHTMLソースの表示」だけです。使い方も簡単なので、ここでも紹介してみます。
(スクリーンショットはサムネイル表示にしているので、クリックすると拡大します。)

1. エレメントの選択
 はじめに、興味のあるエレメントを選択する必要があります。
キーワード検索なども出来るのですが、ここではマウスでクリックしてエレメントを選択するために「Select Element By Click」を選択し、該当のエレメントをクリックしてください。
 このとき、コンテンツにカーソルが移動するとエレメントを移動するたびに青枠のようなものが表示されるのが分かると思います。
以下の画面ショットも参考にしてください。
エレメントの選択

2. エレメント情報の表示
 選択すれば、以下の画面ショットのようにエレメント情報が表示されるようになります。
赤太枠が選択されたコンテンツ、左下にある青太枠がDOMの構造情報、緑枠が選択エレメントの属性に関する情報です。属性は編集可能なので簡単なデバッグも出来ます。

詳細情報の表示

3. 選択HTMLソースの表示
 次にこの部分のHTMLソースを表示してみましょう。以下のように[View]-[Source]-[DOM (Element + Styles) ]を選択します。(エレメントは上のステップですでに選択済みであるとします。)

選択要素のHTMLソース表示


4. 表示されたHTMLソース
 ブラウザの機能でHTMLソースを見ると、CSSの情報とか見つけづらいですが、ここでは一緒に表示されるので便利です。
こんな感じ。
表示されたHTMLソース

DWA以外のコンテンツでも役に立つと思うので使ってみてください。
あと、ひとつだけ注意点ですが、どうもこのプラグインが原因でブラウザがハングアップするケースがあったので、開発用のマシン以外にはむやみに入れないほうがいいんじゃないかな、て思います。
(プラグインの問題についてもここ何回かかけて記事にしていこうと思っています。)


関連記事:
MS、無償のWeb制作者向けIEプラグイン「Internet Explorer Developer Toolbar」正式版公開

画像の貼り付け

2008年12月16日 00:30

ブロガーの方を中心に繰り返し紹介されているようですが、自分への備忘録も兼ねて。。
リッチテキストにクリップボード経由で画像ファイルを貼り付けることが多い方は以下のNotes.ini 設定をしておくと、画像サイズが小さく抑えられます。(6.5.4以降)

OptimizeImagePasteSize = 1

他の方の記事や記載も参考になると思うのでそちらも参考にしてみてください。

岩間さんの記事
Notes.iniのOptimizeImagePasteSize

村上さんの記事
リッチテキストにスクリーンショットを貼る(2)

IBM技術情報
IBM Lotus Notes/Domino 小ワザ集 第52回 - Japan

US 技術情報
Document becomes very large when pasting graphic into rich text field (#1136853)

調査/解析ツールの理想ってどんなでしょう?

2008年12月15日 00:15

今日はTips とか技術情報じゃなくてちょっと障害解析で思うことでも話してみようかな・・・と。

 IBM では昔Autonomic Computing の具現化の一つとして、 Project eLiza と言うのを推進していましたよね。自己修復機能って言うのでしょうか。障害情報を勝手に特定して勝手に直す、Software・・・
サポートにとっても理想の形態の一つです。 
 この手の話をすると、Serviceability とか First Problem Data Capture (FFDC)とか色々なキーワードが出てきますが、「実環境に負担をかけず、問題解析の上で十分な情報を解析するための情報を自動的に収集する」と言うような意味で様々な実装が考えられている事が多いように思えます。
 この点で今最も理想に近い実装を行っているものはどこなのでしょうか? 個人的にも参考にすべき見本としてHW/SWやベンダーを問わずそういう製品は勉強してみたいです。Tivoliなどの運用管理ツールも製品固有の問題解析まで行うと言うよりは一元管理を容易に実現する、と言う意味のほうが強いのではないかと思います。

 僕が考えるFFDC を実現する理想の解析ツールは「問題を再生できる」ログを取るものです。コアダンプやプロセスダンプ、NSDログはどれだけ詳しくとってもスナップショットでしかありません。
そのログがあれば、別の端末上でも問題を「再生」出来て、直したらその再生ツールで修正確認まで行える・・・そんなツールがあればサポート・お客様・開発の負担もどれだけ減るか分からないのに・・・てよく思います。 実際問題解析で一番厄介なのは再現性が無い複雑な問題を調査するときなので。。これは多くのソフトウェア・ハードウェア・ミドルウェア共通の悩みなのではないでしょうか?

 実は私が調査した件で昔、お客様側からOS側のインシデントもオープンされたために私もOS側と連携して調査をした事があるのですが、似たようなツールが提供されたことがありました。
 広く配布しているようなツールではないようなので名前や詳細は控えさせて頂きたいのですが、そのツールを導入して、アタッチした状態で問題を再現させると、別の端末ではその録画情報のようなものを使ってデバッグ出来るようなのです。(ただこの辺の再生技術までは確立していないようで、非常に多くのマニュアル作業を伴う再生作業になるようですが。)

 解析作業などは見れたわけではないので、実際にこのログが僕が前述した「理想の解析ツール」にどれだけ近づいたものなのかは分かりません。ただ、自分と同じような事を考えて本当に実現を考えている、と言う話は頼もしく思えました。リリースされる事があったら、お小遣いでその製品を買ってでもいいので勉強してみたいと思っています。

 お客様のITインフラも複雑になってきて、問題がいかに容易に解決するか、と言うのは製品の品質向上の上でも重要性が増してきています。このような技術がもっともっと台頭してくることを1エンジニアとして心から楽しみにしています。。。

8.0.1 のクライアントフェイルオーバー機能の拡張

2008年12月13日 00:10

 今日はこのTechnote から。
Failover functionality improvements introduced in Notes 8.0.1 (#1294948)

8.0.1 からクライアントのフェールオーバー機能が拡張されたのはご存知でしょうか。
Notesクライアントからのフェールオーバーはアイコンクリック時など主にデータベースを開くときに行われていました。

 しかし、8.0.1から以下のようなビュー操作のシナリオでもフェールオーバーが行えるようになっています。

・ ビューを開くとき
・ ビューをスクロールするとき
・ F9などでビューを更新するとき

このときにフェイルオーバーが実行されると、Notesクライアントはタブを閉じてDBを開きなおし、同じ操作を再度行えるようにします。
このため開いているビューでも以下のようなメッセージが頻繁に出ることがあります。

このデータベースがあるサーバーの応答がありません。別サーバーのレプリカに切り替えますか?
メモ: 別のレプリカに切り替わった後で、もう 1 度アクションを行う必要があります。



これがダイアログで表示されるため、少しエンドユーザー対応上好ましくない、と判断した場合には以下のNotes.ini パラメーターでこのダイアログを抑制することが出来ます。

HidePromptFailoverInc=1

Knowledge Collection: 文字化けについて

2008年12月12日 00:10

8.0.x での問い合わせもだいぶ増えてきました。
今回は最近発行されたばかりの以下のTechnote について少し経緯も交えて紹介しようと思います。

Knowledge Collection:Lotus Notes/Domino での既知の文字化け障害について

Knowledge Collectionは特定の機能やカテゴリに属する情報を網羅的に集めて、スタートポイントに出来るようなものを提供することを意図しています。(もちろんそのカテゴリのトピックすべての情報に対するリンクを提供することが目的ではありませんので、代表的な情報だけになります)

 しかし、障害情報のようなものを、Knowledge Collection として提供することはあまり考えていませんでした。「Knowledge Collection: サーバークラッシュ」のようなものを考えてもらえればわかるのではないかと思うのですが、次から次へと加えてもきりがないし、問題が起こることを未然に予測できるものばかりではないので、結局は個別の情報を適切にメンテナンスしていくことの方が重要ではないか、と思っているからです。

しかしながら、今回このような形で提供することになったのは、ある程度メールサーバーで発生する可能性が高い典型的な文字化けの問題はこのような形でまとまった文書で対策を考えることが有益なのではないかと考えたからです。

 色々な問題が挙げられていますが、この文書での最大のメッセージは、以下の2つにあります。

・ 8.0.2 FP1 (来年の1月くらいにはリリースされる予定です)と8.0.2 CCH1の組み合わせで修正されている問題の対応はすべて網羅できる
・ いくつかの推奨設定の提示


 製品障害ではいつもお客様にはご迷惑をおかけしていますが、少しでもこのような情報が管理者のお役に立てたらと思います。

Widgets を使ってみよう (Notes 8 Standard)

2008年12月11日 00:30

 以前のエントリで、スマートアイコンを使って文書を探す方法を紹介しました。
 こういう操作というのはノーツでは典型的だと思うのですが、このような処理をもっと自然に行えるようにする方法として、Lotus Notes 8.0.1 から実装された Widgets という機能があります。「あってもなくてもいい小物が増えただけ」と思って非表示にする方法ばかり考えている方もいるかもしれませんが、コーディング無しでこのような処理が実装できるようになるので一度使ってみるといいのではないかと思います。 今回はRecognizer のようなLive Textについては紹介しませんが、一度Widgetを使ってみてから広げた方がとっつきやすいのではないかと思います。

今回はテキストを選択して、選択テキストで特定のデータベースを検索するようなウィジットを作ることを想定していますので、好きなデータベースを用意してください。KnowledgeBase、Q&A DB、人事情報や商品情報、顧客情報など色々なケースが考えられるのではないかと思います。

1. ウィジットの有効化
 はじめに、ウィジットはデフォルトで無効になっているため、プリファレンスから有効にする必要があります。
 「ウィジット」から、「ウィジットツールバーおよびマイウィジットサイドバーパネルを表示」をチェックします。なお、Live Textを使用する際には「Live Text」の項から有効にしておく必要がありますが、今回は必要ありません。

ノーツプリファレンスでの設定


2. 検索用のビューを開く
サイドバーにウィジットが表示されたのを確認したら、今回検索に使用するデータベースのビューを開いてください。
 開いたら、ツールバーに表示された以下のアイコンをクリックしてください。
toolbar.jpg

3. ウィザードの開始
これでウィザードが始まります。
はじめに以下のように、「この Notes ビュー上の全文検索の実行」を選択します。

ウィザード (1)


次にコンポーネント名に適当な名前のアクションを指定し、コンポーネントに対する処理の選択で「アクションとしてワイヤリング」を選択してください。

ウィザード(2)


ウィザードの最後では、右クリックメニューで表示される名前として、「アクション名」、使用するコンテンツについては、「その他のコンテンツ」を選択して「テキスト選択」を選択すると選択テキストに対してアクションを実行できるようになります。
 そのあとに、コンポーネントプロパティに「全文照会」を指定してください。
表示する場所はどこでもいいのですが一番表示領域が広く確保できる「タブ」をここでは選択しましょう。

ウィザード (3)


ここまで言ったら終了です。ウィザードを終えてください。
これで右クリック時に、このデータベースを全文検索で探すアクションが表示されるようになります。



実は以下の岩間さんのブログの記事を読むだけで十分かもしれません。
今回の例に加えて、Google Gadget を入れる例も紹介されています。
Notes 8.0.1 新機能:Widgets/Live Textを試してみよう !

他にも以下のサイトの情報も参考になるのでぜひご一読ください。
IBM Lotus Notes 8.0.1 新機能技術概説
IBM Lotus Notes/Domino 8.0.xでの新機能と強化点: 第1回 概要
Knowledge Collection: Widgets and Live Text (#7011861)

注目サポート技術情報 12月分が発行されました!

2008年12月09日 23:02

 ロータスの技術情報に、「注目サポート技術情報」というのがあることをご存知でしょうか。
知らない方は一度以下の文書を見てみて下さい。

Lotus Notes/Domino 注目サポート技術情報 (2008年12月)


これは毎月サポート技術情報で参照頻度が高かったNotes/Domino の技術情報・障害情報や、セキュリティ情報など重要度の高かった情報などを障害情報・全般情報・お知らせ などに分けて紹介しているものです。 USでは Featured Documentsと言う名前で各製品毎に出ていたものを日本でも、Notes/Domino に対して提供しているものです。

毎日Technoteを上から順に読む、と言う事をされている方もなかなかいないと思いますし、RSS リーダーなども増えてきたとは言え、まだまだ利用されていない方も多いと思うので、何か自分たちに関係がある情報が無いかをまとめた情報として、検索結果ではなく、技術情報を定期的に参照していただく上で参考になるのではないか、と言う事を期待しています。

発行されたタイミングでは、Lotus サポートのトップページでは、「「Lotus Notes/Domino 注目サポート技術情報」の公開を始めました 」のように公開されると思いますので、見かけたら是非覗いて見てください。

DWA ログイン遅延の問題

2008年12月09日 00:40

先日以下の問題が発生してDWAのログインが遅れるお客様が複数報告されるようなことがありました。


DWA:ブラウザキャッシュ管理を有効にしていると DWA のログインに時間がかかる


Slow log-in time occurs when Browser Cache Management is enabled in DWA

MSのサイトの応答がなくなったり、遅延していたのが原因だったのですが、現在はかなり復旧しているようです。 今後もDWAのログインが遅れるような問題があった際に参考になるかもしれないと思って技術情報として公開することにしました。

 回避策はブラウザキャッシュ管理を無効にすることなのですが、DWAをご利用の方はぜひご一読ください。


その他のショートカット(あんまりないのですが・・・)

2008年12月08日 01:48

 ショートカットも思ったより好評で驚きました。。
というか前回の記事をよくよく読んでみたら二回に分けてやる、と書いていたのですがすっかり忘れていました。。。

前回出し惜しみしていたわけではないのであまり面白いものは出ない気がするのですががんばります。

カレンダービュー
・ Ctrl+PageUpやCtrl+PageDown で次の月や前の月に移動できます。
  (1月ビューの場合です。1日ビューや1週間ではビューに応じて移動します。)
・ Ctrl+Click で既存のカレンダーエントリの件名の編集ができます。
・ タイムスロット上(1日ビューなどで使ってください)Ctrl+Click を押すと新規エントリも作れます。

ビュー操作
・ 前文検索用の検索バーの表示
 僕はスマートアイコンを使って表示させることが多いのですが、Shift+Alt+S とかで表示させることもできます。


・・・とこれくらいだとさびしいのでもうひとつ。
またAlan氏のブログから。

Notes Links Part 3: Copy Selected As Table


表形式でコピーってそのままExcelに貼れるのです。
これはノーツの表データがエクセルにコピーできることを応用したものなのですが、知らないとなかなか思いつかないので便利です。

僕は飲み会の出欠状況のような情報を1つのフォルダにまとめて、そこのフォルダのメール一覧をまとめて表形式でコピーして、エクセル表に貼って出欠表を作ったりしました。氏名の抜き出ししたかっただけなので、エクスポートしたり手入力したりするよりもずっと効率よくできたのではないかと思います。
 このときは一緒にSubjectなどの不要な列もコピーされますが、加工しても列ごと削除してもよいのでExcelなら比較的簡単にできます。氏名の一覧を抜き出さなくていいのでとても効率よかったなあ・・・て思いました。


ちょっとは役に立ったでしょうか。。。


Notes ショートカット ? どのくらい使っていますか?

2008年12月05日 02:12

 昨日は少し軽めの話題にしたのですが、拍手も入ったり思ったより反応がよかったので今日も軽めの話題にしてみようかな・・・と思います。

 さて、Notes の使い方に慣れている人を見ると、決まってショートカットの使い方がスムーズですよね。(操作を教わるには不便だったりしますが。。。)
みなさんは普段Notesの操作でどのくらいショートカットを使うでしょうか? MS WORD でも使えるようなCtrl+B(太字)やCtrl+U (下線)のようなものや、Notesでも基本的なショートカットと思われる、Ctrl+O や、Ctrl+N等は誰でも使うのではないかと思いますが、意外とお気に入りのショートカットってあるのではないでしょうか。

 今日から2回ほどかけて僕がお気に入りのショートカットをいくつか紹介してみます。
Notes ヘルプにもショートカットの一覧はありますが、Alt キーを使用したメニューナビゲーションも広い意味ではショートカットと捉える事が出来るので、そこも踏まえたものを紹介しようと思います。
 こういうのはちょっと裏技っぽくて面白いですよね。
 

エディター利用時の編集操作
・ フォントを1つ大きくしたい: F2 キー
・ フォントを1つ小さくしたい: Shift+F2キー
・ 書式(色、装飾)のリセット: Ctrl + T
・ インデント : F8 キー
・ アウトデント: Shift + F8 キー

 他にも赤、青、緑のような色はよく使うので、Alt+T-C-R(赤、Red)とか、Alt+T-C-B(青、Blue)、Alt+T-C-G(緑、Green) のように覚えておくと便利です。

 他にも箇条書きにするために、テキストを選択して、Alt+T-l-l とかを使ったりします。
 これらのショートカットは、どれもメニューにある[文字(T)]-[色(C)]-[赤(R)]のようにAltキーでメニューナビゲーションをしているだけなのですが、文字のプロパティとかを起動するのが面倒なときは重宝します。

それと、校正やレビュー作業時にパーマネントペンを使う事が多いと思うのですが、Shift+Backspace を使うと選択テキストに太字で取り消し線を入れてくれるので便利です。

それと箇条書きにしたものや数字のリストなどは各行をCtrl+矢印キーでリストを上下する事が出来ます。
・ あああ
・ いいい
・ うううう

上のようなリストがあったときに、「いいい」を選択して、Ctrl+↑を押すと、
・ いいい
・ あああ
・ うううう
のようになります。これも案外便利ですよね。

それと、文字のプロパティは、Alt+Enter やCtrl+K で起動できますが、左寄せにしたいときなど、段落のプロパティ(左から2番目)にすばやくアクセスしたい場合があると思います。
 そのような場合は、Ctrl+J を使うのも便利です。右矢印や左矢印で選択後Enterを押すと、すぐにセンタリングにしたり出来ます。


ビューナビゲーション時
・ 選択した部分を展開する
 この操作ってビューを操作しているとき多いのではないでしょうか?
デスクトップPCであれば、テンキーの「*」を使えば展開できるのですが、ノートPCのようにテンキーを使えない場合は案外不便です。
 このような場合は、IME を ON にした状態でアスタリスクを入力し、スペースキーで半角に変換した後確定すると展開できます。
 ただ、僕はIMEの状態を気にするのが面倒なので、Alt+V-X-N と押して展開しています。

・ 未既読の変更
  Insertキーで出来ます。

・ 未読文書間の移動
  Tab で次の未読文書、Shift+Tab で前の未読文書
  同様にして、F3 で次の未読文書、Shift+F3 で前の未読文書


プロパティボックス
・ タブの移動: Ctrl + Pageup (またはCtrl+Pagedown で戻る)
・ プロパティボックスを閉じる: Esc または Alt+Enter

タブの移動は、Ctrl+EndキーとかCtrl+Homeとかも使えますね。

その他
・ Notesの通信処理を中断する: Ctrl + Break
・ Notesを終了する: Alt+F4 または Ctrl+Q
・ 新規メールを作成する: Ctrl+M
・ メールを送信する: Shift+Esc


1つだけ思うのはNotesのショートカットはもうちょっとカスタマイズできるようになるともっと便利になるのにな、て思います

 よくお問い合わせでも、「Alt+1でメールが送信されてしまうのは、Alt+半角/全角と操作が似ているために困るから無効にしたい」とか聞きますし、自分としても編集中に半角英数にしようとしてF10とF11を押し間違えると、スタイルが変わってしまうのですが、F11は無効にしたいな、て思うことがあります。 よくEscと押し間違えるので、F1でヘルプが起動するのも無効にしたいですし。

便利なショートカットあったら是非教えて下さい。

作成フォルダを活用する

2008年12月04日 00:16

 今日は昔Alan 氏のブログで見ていいな、て思った記事を紹介します。

Easily Create A New Document In Any Database

何となくアプリ開発的な話題が続いたので、もうちょっと広い範囲で楽しめるような話題にしようかな、て思ったので。

読者の方はどんなノーツDBを使っているでしょうか?
ディスカッション、コールトラッキング、文書管理、日報、業務報告、勤怠管理、etc・・・と色々なノーツデータベースに接しているのではないかと思います。
 そこで新規文書をフォームから作るときにどうしているでしょうか?
データベースを開いて、ビューを開いて、ビューのアクションから「新規文書作成」のようなアクションボタンを押して・・・と言う操作をしているのであれば、作成フォルダを使ってみて下さい。
(ビューの特定の文書を選択してから作らないといけない、とか作り方に制約がある場合には使えません。)

スマートアイコンを表示してみたときにこんなアイコン新規文書作成が表示されていないでしょうか?
 デフォルトではここからメールや連絡先が作れるようになっています。
これは[各種ブックマーク]-[作成]と言うフォルダに新規フォームを登録すればどのデータベースの新規文書も作る事が出来るようになります。

Alan氏のブログにスクリーンショット付きで詳細な手順が紹介されていますが、こんな感じで登録します。

・ 登録したいブランクフォームをビューアクションなどから呼び出して表示する
・ [各種ブックマーク]-[作成]フォルダをブックマークの画鋲アイコンなどを駆使して固定表示にしておく。
・ ブランクフォームをそのままドラッグ&ドロップ

ブランクフォームが表示されているタブを右クリックして「ブックマーク」として登録しても構いません。
また登録されたものが分かりにくかったら好きな名前に変えてしまいましょう。フォームの設計には影響しません。

このブログエントリでは、「作成」メニューから表示されるフォームであれば、DBを開かなくてもワークスペースアイコンをクリックしてもメニューに現れるし、ブックマークアイコンを右クリックしても作成メニューが出てくるのでデータベースを開かないで新規フォームが作れる事も紹介されています。

色々な方法で文書やフォームにアクセスできるのはノーツの魅力の1つかな、て思うのでもっともっと便利だと思う方法を研究してみて下さい!

Notes プロセスを終了する

2008年12月03日 02:06

 異常終了時とかにタスクマネージャーからNotesのプロセスを終了するのが面倒だなあ、とよく思っていたのですが、Windows でプロセスを殺すのってリソースキットとかを使わないといいものがなかったので、nsd -killとか他のツールに頼ったりとかしていました。

でも今日たまたま調べてたらWindows XPからはコマンドラインでプロセスを殺せる taskkill てのがあるみたいですね。 オプションも豊富で結構便利そうです。
 Notes プロセスの場合、コマンドラインからこんな感じで実行すると、Notesのプロセスを消せるみたいです。

実行例:
taskkill /F /FI "MODULES eq nnotes.dll"

フィルタ式を使ってまとめて消せるのがいいですね。
こういう指定の仕方なら3rd Party製品のプロセスも一緒に消す、とかできる気がします。

 ただ、以下の二つは明示的に消しておいた方がいいかもしれません。
TASKKILL /F /IM notes2w.exe (Notes 8.x Standard版のみ)
TASKKILL /F /IM notes.exe

コマンドラインヘルプを見ると、tasakkill では以下のようなフィルタ式が使えるそうです。
色々な方法が使えそうですね。

フィルタ名 有効な演算子 有効な値
----------- --------------- --------------
STATUS eq, ne RUNNING | NOT RESPONDING
IMAGENAME eq, ne イメージ名
PID eq, ne, gt, lt, ge, le PID 値
SESSION eq, ne, gt, lt, ge, le セッション番号です。
CPUTIME eq, ne, gt, lt, ge, le 次の形式の CPU 時間
hh:mm:ss
hh - 時間
mm - 分、ss - 秒
MEMUSAGE eq, ne, gt, lt, ge, le メモリ使用量 (KB)
USERNAME eq, ne [ドメイン\]ユーザー の形式の
ユーザー名です
MODULES eq, ne DLL 名
SERVICES eq, ne サービス名
WINDOWTITLE eq, ne ウィンドウのタイトル

スマートアイコン: フィールド値をキーにして文書を開く

2008年12月01日 22:25

 これも本来はNotesデータベース側で設計として組み込んであるのが望ましいのではないかと思う事もあるのですが、ある文書のフィールド値をキーにして別のビューから情報を参照したいこと、てありますよね。
 注文書にある顧客番号から顧客情報を参照したり、別のDBのID値を入れているフィールドを使って、入力元の情報を参照したり、色々使う場面はあると思います。これもユーザーによって頻繁に参照する情報は異なるのであまりマニアックなものは以下の例のように自分用のスマートアイコンにするといいのではないかと思います。


スマートアイコン式:
REM {ビュー検索のキーとして使用するフィールド名を指定してください。};
FIELD IDNumber := IDNumber ;
dst_server := "ServerName/Org";
dst_db := "apps\\test.nsf";
lookup_view := "($Lookup)";

@Command([FileOpenDatabase];dst_server:dst_db;lookup_view;IDNumber;1)+@Command([OpenDocument])


セットアップ手順
1. クライアントのメニューより、[ファイル]-[プリファレンス]-[ツールバーの設定]を選び、左側のペインから「カスタマイズ」を選択してください
  (Notes 8 Standard 版の場合、メニューから、[ファイル]-[プリファレンス]を選択し、ノーツプリファレンスの画面から[ツールバー]-[カスタマイズ]を選択します。)
2. [新規]-[ボタン]を選択します。
3. 「アイコンの変更」ボタンで、任意のアイコンに変更してください。
4. 以下の値をスマートアイコンに入れます。
  xxx の部分は分かりやすい説明に変えてください。

ボタンの表題文字: xxxの検索
ポップアップヘルプ文字: xxxの検索

式:(上に記載してある式をコピーしてください)
5. OKボタンを押してツールバーの設定を終了します。


やっていることは非常にNotes的な処理なので、スマートアイコンの式も簡単ですよね。
これでキーになるフィールドを開いているときに、スマートアイコンを押すと該当文書を自動的に検索して文書を開く事が出来ます。このくらいの作業たいした事無い、て思うかもしれませんが画面遷移が自動化されるとかなり効率よく文書を開く事が出来るようになります。

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

Listを使用して2つの集合を効率よく比較する

2008年12月01日 01:28

ある集合 list1 の要素がある別の集合blakklist1 の要素を含むかどうかをチェックするにはどうしているでしょうか。

list1 = {"aa", "bb", "cc", "dd", "ee"}
blacklist1 = {"bb", "cc"}

このような場合以下のようなコードを書くことが多いのではないでしょうか。

Sub Click(Source As Button)
Dim list1(4) As String
Dim blacklist1(1) As String

list1(0) = "aa"
list1(1) = "bb"
list1(2) = "cc"
list1(3) = "dd"
list1(4) = "ee"

blacklist1(0) = "bb"
blacklist1(1) = "cc"

Forall l In list1
Forall b In blacklist1
If (b = l) Then
Print "Hit! " & l
End If
' blacklist1 が重複の無い集合の場合、ここで抜ける事が出来ます
Exit Forall
End Forall
End Forall
End Sub

僕自身、このような処理は上のように書いていました。
別にこの方法で特に問題があるとは思っていなかったのですが、先日以下のTechnoteにあるサンプルを見てなるほど・・・と思ってしまいました。

Sample agent for updating existing folders in a database when they do not exist in the inherited template (#1086404)

ここではフォルダーのアップデートをする際にシステムフォルダだけアップデートをスキップするような処理を加えている訳ですが、上の例に当てはめると、以下のような二つの集合の比較になっている事が分かると思います。

list1: 全ビュー またはフォルダ
blacklist1: ignore_list (テンプレートに含まれているフォルダ名)

同じ処理をしているわけですが、Listを上手に使うことによって、Forallが入れ子構造になることを回避しています。上の例で言うと、blacklist1を配列ではなく、リストとして定義する事によって効率のよい比較を行っているのです。

まず、リストに関してはあまり使ったことが無い方も多いのではないかと思うので、リストとはどういうものかを手短に説明しておきます。Perlを知っている方なら、Perlの連想配列のような概念です、と言えば説明終了なのですが、要するに以下のように配列のインデックスを数字ではなく、文字列にしたものです。

Dim blacklist List As String
blacklist1("bb") = 1

今回は、実はこのリストの値である部分は使用しないので、右辺では1のようなダミーの値をセットしています。
 ここでIsElement関数を使って、その文字列が、blacklistの引数として有効であるか無いかを比較する事によって効率のよい比較を行っているのです。

変更後のコードを見てみて下さい。


Sub Click(Source As Button)
Dim list1(4) As String
Dim blacklist1 List As String

list1(0) = "aa"
list1(1) = "bb"
list1(2) = "cc"
list1(3) = "dd"
list1(4) = "ee"

' 右辺の1に特に意味はありません。
blacklist1("bb") = 1
blacklist1("cc") = 1

Forall l In list1
If Iselement(blacklist1(l)) Then
Print "Hit! " & l
End If
End Forall
End Sub


細かい話はおいておくとして、すっきりしたのが分かるのではないでしょうか。
このような比較は特に、blacklist1のサイズが大きくなればなるほど効率よくなるのではないかと思います。 僕自身、実は LotusScript のリストは、デザイナーヘルプにあるように、

emp_list("山田 太郎") = 123456

のような文字列をキーにしたデータ格納をしたいとき以外には、使用しないのでは?と思っていて、実際には使用したことはなかったのですが、このように二つの集合比較のような処理でも利用出来るとするともっと使えるチャンスはあったのではないかと思って反省しました。

 是非このような処理を使う機会が僕以上にある方は、僕に代わって利用してみて下さい。。。


最新記事


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。