投稿

2月, 2014の投稿を表示しています

文書リンクをurlリンクに変更してみる

イメージ
やっと暖かくなってきました。
それとともに花粉が飛散し始めているようです。家の中に持ち込まないように注意しましょう。

私も花粉症なので、注意しています。


ということで、今日もボタンをクリックしましょう。



では、本題です。
今日はノーツクライアントを利用していると、よく使う文書リンクについてです。
Web化(XPages化含む)するにあたって、既存の文書リンクをどうやってurlリンクへと変換させるかがポイントになってくるかと思います。

そんな時はこちらのサンプルを利用してみてください。
こちらは、"tstBody"というフィールドにある文書リンクの内容を解析して、urlリンクへと変換して"tstText"フィールドへと書き込むものです。

サンプルなので、文書を編集モードで開いた状態でないと使えません。
また、1文書に1つの文書リンクがあるという前提になっています(複数の文書リンクには対応していません)。
Sub Click( Source As Button ) Dim uiws As New NotesUIWorkspace Dim uidoc As NotesUIDocument Dim doc As NotesDocument Dim ritem As NotesRichTextItem Dim rnavi As NotesRichTextNavigator Dim rlink As NotesRichTextDoclink Dim srvName As NotesName Dim httpUrl As String Set uidoc = uiws.CurrentDocument Set doc = uidoc.Document Set ritem = doc.GetFirstItem( "tstBody" ) Set rnavi = ritem.CreateNavigator If rnavi.FindFirstElement( RTELEM_TYPE_DOCLINK ) = False Then Msgbox "リンクアイテムが見つかりませんでした。" …

XPages(JavaScript)での条件分岐

イメージ
こんにちは。気が付いたらもうすぐ2月も終わりです。一日一日が早いですね。
このままいくとあっという間に2014年が終わってしまうので、気を引き締めていきましょう。


本題に行く前にこちらをクリック!



さて、今日はXPagesというかJavaScriptについてです。
久しぶりな感じがしますね・・・
以前にLotusScriptでの条件分岐について書きましたが、今回はXPages(というよりはJavaScript)での条件分岐の方法を記述します。


早速、サンプルです。

計算結果フィールドコントロールを配置して、「値」に以下のコードを記述します。
var ret; switch ( @Month(@Today()) ) { case 1: ret="今日は一月です。";break; case 2: ret="今日は二月です。";break; case 3: ret="今日は三月です。";break; case 4: ret="今日は四月です。";break; case 5: ret="今日は五月です。";break; case 6: ret="今日は六月です。";break; case 7: ret="今日は七月です。";break; case 8: ret="今日は八月です。";break; case 9: ret="今日は九月です。";break; case 10: ret="今日は十月です。";break; case 11: ret="今日は十一月です。";break; case 12: ret="今日は十二月です。";break; default: ret="エラーです。";break; } ret; LotusScriptの場合は、Select Case文を使って条件分岐を実現しましたが、JavsScriptの場合は
switch文を使います。
case節を使って、条件に合った式を書くのは同じですが、…

コードのテンプレートも作ってみよう!

イメージ
こんにちは、今日(2014年2月19日)はテクてくロータス技術者夜会の日です。
とっとと仕事にケリをつけて、渋谷へ向かうようにしましょう!


では、いつものようにボタンをクリックして本題へと行きましょう。



さて、今日は前回の関連トピックです。
前回は、コメントのテンプレートを加工して自分用にしましょう。
ということでしたが、今回は「コード(LotusScript)もテンプレート化しよう!」ということです。

設定方法は以下の通り。
Domino Designerを起動する。 [ファイル][プリファレンス]メニューを実行する。[Domino Designer][LotusScript エディタ][コードのテンプレート]タブを開く。「コード要素」からテンプレートを作成したいコードの要素を選択する。「コードのテンプレート」欄にテンプレート化したコードを入力する。[適用]ボタンをクリックする。 とこれだけです。
コメントのテンプレート化とほぼ変わりませんね。
1点だけ違うのは、コメントのテンプレートの場合、デフォルトである程度用意されていましたが、コードについては何も用意されていないというところです。

そのため、どのように入力して良いのか、ちょっと悩むところですね。
ということで、サンプル画面を。
下図は、Sub関数のコードをテンプレート化したものです。


コード実行中にエラーが発生したら、ErrProcへ進んで、エラー内容をダイアログ表示するという事をテンプレート化してみました。

そして、実際にLotusScriptを作成したときの画面がこちらです。


確かに、テンプレートコードの内容が反映されているかと思います。
このように、コードのテンプレートの場合、実際に必要なコードを直接、入力することで実際のコードに反映されます。
実はコードテンプレートの中にコメントを入力することもできます。

関数の説明は関数の外ではなく、中に書きたいという場合は、コードテンプレートの中に書けば良いということですね。

これで毎回、同じようなコードを入力しなくて済みますね。
ちょっとしたことですが、製造コストの削減に役立つのではないでしょうか?


では、今日はこの辺で。






【PR】ノーツ/ドミノに関するお問い合わせは下記まで【PR】
単純なDBのカスタマイズから他アプリケーションとの連携までご要望にお応えします…

コメントのテンプレートを加工しよう!

イメージ
皆さん、こんにちは。今年の日本は雪が多く大変ですね(まるで他人事・・・)。
今週の水曜日(2014年2月19日)は、テクてくLotus技術者夜会がありますが、その日の天気予報も「曇りのち一時雪」と、雪の予報になっています。
なんとか降らない事を祈るばかりです。


では、本日の話題に行く前に、久しぶりのボタンクリックをしましょう。



IBM Connect 2014のうち、Domino Designerの便利な使い方について紹介していたセッションに参加したのですが、残念ながら当ブログでも紹介していたものが多かったのでした。紹介していた内容が世界にも通じている!という意味では嬉しいのですが、新しいことを知ることができなかった(あったのかもしれませんが、全部は理解できませんでした・・・)のは残念でした。

ということで、Domino Designerのプリファレンスを眺めていて、便利そうだな。という機能について追加で紹介を行います。


さて、それでは本題です。
今回はDomino Designerのうち、「コメントのテンプレート」について紹介します。

LotusScript を記述していると、多くのSub関数やFunction関数を作成することになるかと思います。
その時に、それらの関数の説明を入力しておくこともあるかと思います(書いておかないと、後々メンテナンスする時に大変なことになりますよね)。


Domino Designerは、関数を作成すると、先頭にその関数に関するコメントを自動で付加してくれます(下図)。しかし、コメントが英語になっている事や情報量が少ないという事から自分でその都度、修正しているという方も少なくないのではないでしょうか。

このコメントはテンプレートとしてDomino Designerの中に組み込まれているものです。
そして、この内容は変更することが可能なのです。

変更する方法は次の通りです。
[ファイル][プリファレンス]メニューを実行して、Domino Designerのプリファレンス画面を開きます。
その中で[Domino Designer][LotusScript エディタ][コメントのテンプレート]を開くと、コメントのテンプレートを設定する画面に切り替わります(下図)。

右側上部にある「コード要素」を選択すると、右側下部にそのコメントのテンプレ…

DominoでSSLを設定してみよう(2)サーバー認証

皆さん、おはようございます。本日は2014年2月13日(木)です。
私がインフルエンザにかかって、早くも5日目です。やっと熱が下がってきました。
手洗いやうがい、マスクをするなど予防はしていたのですが・・・(諸事情により、予防接種は行っていません)

感染するときは感染するということなのでしょうか。皆さんも十分に注意してください。
周りに咳き込んでいる方がいらっしゃったら、マスクをつけさせる、うがい、手洗いをさせるなども大事かもしれません。




さて、前回はDominoでSSLを設定してみよう!ということでDominoを認証局にするという資料をSlideShareにアップロードしてそれを紹介するということを行いました。

今回はその続きです。
Domino認証局で別のDominoサーバを認証しましょうという手順の資料です。

前回と同じく、SlideShareにアップロードしたので、興味がある方は参照してください。



サーバー認証 from Masahiko Miyo


この資料は、IBM Notes/Domino 9.0.1を利用して作成しています。
Notes/Dominoのバージョンによっては画面が多少違う可能性がありますので、ご了承ください。

DominoでSSLを設定してみよう(1)Domino認証局の作成

IBM Connect 2014も終わって一週間が過ぎました。

そろそろ、関係する話題を書くだろう・・・と期待している方もいらっしゃるかもしれませんが。

「敢えて」書きません(笑)
まぁ、まだ資料がまとまってないというだけなんですが。


ということで今日は別の話題です。


私がSurface Pro 2 を持っているという話は散々書いているので(Windows タブレットは便利ですよ!タブレットなのに、Notesクライアントが使えるなんて素晴らしすぎる!)ご存知かと思いますが、

そのSurface Pro 2でもIBM Notes Travelerを使えます。
と言っても、専用アプリケーションがあるわけではありません。
メトロUIにあるメールアプリを利用します。

その際、IBM TravelerサーバへはSSLでの接続が必須です。

DominoにSSLを設定するのはそんなに難しくはないのですが・・・
やはり手順をきちんと押さえておいた方が良いでしょう。と思い、画面付きの資料を作成しました。
今後、設定してみようかなぁという方がいれば、参考にしてください。


Domino認証局の作成 from Masahiko Miyo


この資料は、IBM Notes/Domino 9.0.1を利用して作成しています。
Notes/Dominoのバージョンによっては画面が多少違う可能性がありますので、ご了承ください。

今年も反省することばかり・・・

イメージ
皆様、こんにちは。
IBM Connect 2014が閉幕して、翌月曜日となりました。
衝撃度が高かったIBM Mail Nextについては、チームスタジオジャパンの加藤様が簡潔にまとめてくださっています。
今後、日本IBM殿からも発表があると思いますが、まずはこちらを読んでおくと良いでしょう。
IBM Mail Next


さて、今回の今回のIBM Connect 2014についての所感を書きます。
まず、反省点やアドバイスについては、基本的なところは昨年と変わりません。こちらをお読みください。旅を終えて

なので、今回は自身の反省点及び、追加で思ったことを書きます。

英会話力の上達
 昨年で十分わかっていたはずですが、「忙しい」を理由にサボってました。
 現地で恥をかくのは自分なので、今年こそは上達するように頑張ります。
 誰か、一緒に勉強しましょ♪(一人でやるのは寂しい)
 目標としては、一人でLaboに行って話が聞けるようになるということにしておきます。
 (セッションを持つとか、そんな非現実的なことは書きませんからね)

現地での行動はあらかじめ計画しておく
 セッションは4日間(BPは5日間)で、200以上あります。さらには、ShowcaseやLaboもあります。
 せっかく現地に行ったのに、セッションだけでは面白くありません。やはり、ShowcaseやLaboに行き、
 直接話をしてこそのイベントです。
 Agendaは毎年開催前(1月半ばごろ)には発表されるので、事前に本当に聴きたいセッションだけを選択して残りは会場内の散策に充てるべきでしょう。
 日本IBMの方と一緒に散策できるようであればベストですが、彼らもミッションを持っているはずなので参加者同士で行くようにしましょう。
 その時も、あらかじめ質問内容は決めておくことをお勧めします。

参加者コミュニティの形成
 前述したようにセッション数は膨大な数に上ります。これら全部を一人(もしくは一社)で掌握することは不可能です。
 参加者同士でコミュニティを作り、情報交換をすると、入手できる情報量がかなり増えると思います。
 さらには、日本に帰国後も「飲み友達」が増えるという特典が付いてきます(笑)

Windows PCも持っていこう
 スマホは必須ですが、+αとしてWindows PCの持参をお勧めします。iPadやAndroid タブレットでも良いのです…