ページビューの合計

2017年11月27日月曜日

@MailSendについて

みなさま、こんにちは!!
先週はノーツコンソーシアムの拡大理事会が開催され、昨年に続き参加させて頂いて参りました。
参加者がいくつかのグループに分かれ、かなり濃い内容の議論が交わされることができました。
基本的に多くの方のNotes/Dominoに対する意見が一致しており、今後に期待を膨らませている状況であることが明確に理解できるいい機会となりました。

今回を踏まえ、来年の研究会の発表が待ち遠しい限りです。

さて今回は先般のLookupに続き、私がNotesに魅せられた@関数のひとつ、【@MailSend】について記述致します。
Lookup同様、既にご存知の方にとっては当たり前のことかと思いますが、個人的にはユーザー企業がアプリケーションを構築する上で重要な機能のひとつと感じておりますので、改めて取り上げさせて頂きます。

前回同様、ヘルプ文書を見てみます。
今回は「検索」で【MailSend】としてみましょう。
バージョンにより多少異なるかと思いますが、以下のような結果が表示されます。


注意すべきは単に【MailSend】と言っても、大きく二種類ある点に注意していただく必要があります。

ひとつは【@MailSend(式言語)】。もうひとつは【MailSend @コマンド(式言語)】です。
後者は以下の通り、「文書が読み込みモードか編集モードで開いているか、ビューで選択されていなければなりません。文書には文書の受信者を指定する [宛先] フィールドが含まれていなければなりません。」とあります。
つまりフォームが開かれるあるいは、ビューで選択されており、[宛先]となるフィールドが存在していなければ思うように動かないということになります。


ということで、【@MailSend(式言語)】についてもう少し詳しくみてみましょう。

ヘルプ文書にもありますが、【@MailSend(式言語)】については2通りの使い方があります


最初の使い方ですが、該当文書内に[sendTo]というフィールドがあれば、パラメーターを必要とせず、[sendTo]で指定されたユーザー宛にメール送信されることになります。

パラメーターを使用した場合の構文は下記となります。

@MailSend(  sendTo  ;  copyTo  ;  blindCopyTo  ;  subject  ;  remark  ;  bodyFields  ; [  flags  ] ) 

sendTo 、copyTo、blindCopyToの3項目については、いわゆるメールの宛先、cc、bccを指定するパラメーターになります。
それぞれ文字列または文字列リストが設定可能であり、[sendTo]のみ必須となります。

subjectはメールの件名となります。ブランク("")でも可能ですが、可能なかぎりわかり易い件名となるようにすべきです。文字列はもちろん、フォーム内のフィールドやフィールドを含む文字列も設定可能です。

続いてremarkです。こちらも任意項目ですが、メール本文の先頭に置く文字列になります。

次にbodyFieldsですが、こちらがメール本文の内容となります。
分を改行したい場合は、【+@NewLine+】で接続します。

最後にflagsです。
詳細はヘルプ文書を見て頂きたいのですが、ひとつ重要なflagとして、[INCLUDEDOCLINK]が挙げられるかと思います。

これは選択された文書への文書リンクをメール本文に追加してくれます。
つまりワークフローのようなメールを送信させるためには必須のflagsになります。

さて、それでは実際に弊社で使用している勤怠関連ワークフローで使用している例をみてみましょう。

フォームの[申請]ボタンに設定したアクションにて、以下の式を実行させております。


@Command([FileSave]);
@MailSend(sendTo;"";"";Name +"からの届出";"";Name +"からの届出通知が届きました。"+@NewLine+"こちらをご確認の上、承認の場合は「承認」ボタンのクリックをお願い致します。 ⇒ ";[INCLUDEDOCLINK] );
@Command([FileCloseWindow])

フォーム内に[sendTo]、[Name]というフィールドがあり、それぞれ[承認者]と[申請者]が設定されております。
上の式では、まず文書を保存し、[sendTo]を宛先とし、件名には「[Name]からの届出」と表示されます。
本文には

[Name]からの届出通知が届きました。
こちらをご確認の上、承認の場合は「承認」ボタンのクリックをお願い致します。 ⇒

と改行を含んだ文字列がセットされ、最後の「⇒」の後ろに、文書リンクが追加される形となります。

実際に承認者に届いたメールは下記のようになります。


もちろん文書リンクをクリックすることで、申請文書が開き、承認等を実施することが可能となります。

以上、基本的な@関数ではありますが、それほど手間ひまかからずに簡単なワークフローができるという優れた関数です。

まだまだ私の知らない関数や使ってことのない関数が大量に存在するNotesの素晴らしさ、高機能さを感じつつ、今回の投稿とさせて頂きます。


2017年11月20日月曜日

Lookup式について

みなさま、こんにちは!!
先週はノーツコンソーシアムノーツ・しこく・フェスタとイベント盛りだくさんな一週間でした。
ここでは詳細には触れませんが、改めて私・・・もちろん弊社・・・が、皆様に支えていただいているんだと実感した次第です。
このような思いをぜひ、他のNotesユーザー様に味わって頂く機会を作ることができればと感じております。

さて今回は私がNotesを使い始めて、最初に使いたいと思ったLookup関数について記載致します。

さてLookupといえば、Excelを思い浮かべる方も多いかと思いますので、まずはExcelのヘルプ文書になります。


よく使うのは、マスターシートをVLOOKUPで参照するようなものではないでしょうか。

もろちんNotesでも同じような機能が簡単に利用できます。
それではNotesのヘルプを見てみましょう。


Notesでは@関数である @DbLookup が該当します。

詳細はヘルプ文書を見ていただくとして、具体的な例としてヘルプにもある以下コードをみてみましょう。

@DbLookup("":"NoCache";"Sales":"Customers.nsf";"ContactList";contactName;"Comments")

まず "":"NoCache" の部分ですが、コロンの前がclassになります。
Notesデータベースを指定する場合、"Notes"もしくは""と記載します。
続いて"NoCache"ですが、詳しくはヘルプに記載されていますが、ビューの最新情報を取得したい場合などに指定する引数となります。
私は基本的に"NoCache"を指定します。

続いて "Sales":"Customers.nsf" です。
前半がサーバー名、後半がアプリケーション名になります。
アプリケーションがサーバーのData内サブフォルダにある場合は、フォルダ名¥アプリケーション名となります。例えばメールファイルですと、"mail¥Customers.nsf" となります。

次の "ContactList" です。
こちら検索する対象のビュー名となります。
この例ですと、Custmers.nsf内のContactListというビューからデータを検索することになります。

次の contactName です。
こちらは呼び出そうとしているフォーム内に存在するkeyとなるフィールド名になります。
先の検索対象ビューの最初の列を検索し、一致した行を検索対象のレコードとして選択することになります。

最後の "Comments" です。
こちらは先のkeyにより特定されたレコードの取得する値の入った列のフィールド名を指定します。
例えば以下のようなビューですと、戻り値はComments列の「テスト」や「参考」、「コメント」になります。


なおフィールド名以外に、列番号でも同じ結果が得られます。
先の例ですと、"Comments"のかわりに"4"と指定することが可能です。
個人的には列番号を使っています。

なお例の式には[keywords]が省略されていますが、こちらもヘルプをご覧ください。

以上となります。
フォーム内[lookupComments]に先の式を設定し、keyである contactName にセットされる値によって得られるデータは、下記のようになります。


以上でDbLookupについての説明は終りますが、もうひとつNotesには近い関数があります。
@DbColumn という関数になります。


こちらは@DbLookupと違い、[key]がありません。そのため戻り値としては対象の列の値となります。

私がよく利用する例としては、フォーム内に設置したダイアログリストの選択するリストとして、同一アプリケーション内のビューから一覧を取得するというものがあります。

下記例ですと、同一アプリケーション内のカテゴライズされたビュー[byCategory1]の1列目をリストとして表示させることが可能です。

@DbColumn("":"NoCache";"";"byCategory1";1)

これにより、利用ユーザーがカテゴリを選択で選べます。また文字の揺らぎ(大文字小文字の違いや、全半角の違い)による別項目となることを減らすことも可能です。また新しい値を可としておくと、こちらが保存されたタイミングで"NoCache"の効果により、次にダイアログリストを開くと、新規の項目もリストに追加された状態で利用可能となります。



以上、ご存知の方には全く必要のない記事ではありますが、個人的にこのNotesにはまり込む最初の要素になりますので、取り上げさせて頂きました。

2017年11月16日木曜日

お礼!! ノーツコンソーシアムオープンセミナー

みなさま、こんにちは!!

早速ですが、昨日、ノーツコンソーシアム オープンセミナーに参加せて頂きました。
月曜にも書きましたが、大阪研究会への報告も兼ねて、ブログ記事を書かせて頂きます。

今回のテーマは、

『ノーツでモバイルファースト』
 =モバイルなくして働き方改革はない!!=

ということで、各セッションでそのテーマに沿った発表がございました。
もちろんアプリケーションそのもののWEB化だけでなく、IoTやAIの要素もあり、いずれも興味深い内容ばかりでした。

私が参加させて頂いたセッションは、


  1. XPages開発でここまで出来る!モダンアプリの開発事例一挙見せ
  2. 必ず活用頂けます!LIVENESSソリューションのご紹介
  3. IBM Notes/Domino Roadmapとアプリケーションの活用
  4. 「XPages DAY」XPagesのさらなる効果的な活用方法について
  5. ノーツコンソーシアム-ザ・ノーツ研究会、新インフラ研究会 活動報告
  6. IBM Watsonによるコラボレーションの進化と既存Notesデータの活用
  7. 懇親会
それぞれ印象深かったのは、

1. ケートリック様の技術要素をここまで紹介していいのか!!?
2. ポータル、ポートレットのみでWEB化してしまおう!
3. 来年以降のロードマップ及びクラウド製品のリリースについて
4. アイデアソン形式で、XPagesに関して議論に参加でき、たくさんの皆様の意見、アイデアに触れることができた。⇒Jamへ提出?
5. ザ・ノーツ研はリモート参加しておりますので、ある程度理解していたのですが、新インフラ研は今後のクラウド展開も含め、知っておくべき内容が山積み! ただ・・・リモートからだと厳しいか
6. panagenda Application Insightの具体的な画面に触れることができたのは収穫

資料が公開されるかはわかりませんが、参加しなければ得られなかったものが多数あり、あらためて神戸から出てきた甲斐があったと実感した次第です。

もちろん懇親会でも、皆様の熱いNotes愛を感じ、弊社が継続してNotesを使い続けていくこと、さらにNotesを軸にあらゆる仕組みを組み合わせていくことは間違いなかったと安心することができました。

この「ブログ見てます」と言って頂ける方とも数名お会いすることができ、さらに精進しなければとも感じました。


二次会の場でとある方に気付かされたのですが、このNotesに関わるコミュニティが他のシステム関連コミュニティと大きく違う点があります!!

私もいくつかのユーザー会等に参加していますが、

1製品を中心に、メーカー・パートナー・ユーザーが一同に介す

るものは、他にないのではとの事です。


引き続き、このコミュニティを大切に育てていくことに少しでも関わることができればと考えております。


さて本日夕方には高松です。
Notesな皆様との接点をさらに太くして、帰りたいと思います。


本当に昨日はお世話になり、ありがとうございました!!

2017年11月13日月曜日

告知!!

みなさま、こんにちは!!
週末に子供の野球チームに付き合っていたのですが、さすがに土曜半日、日曜終日動き回ると結構な筋肉痛です。
何年かぶりに親指にマメもできてました。
それよりも、練習中に右目にゴミかムシかが入ったようで、汚れた手で触ってしまい、昨日はお岩さん状態に(泣
少しマシにはなったのですが、普段でも開いてるか開いてないか分からない目が、さらに開いてないように見えてしまいます(汗
水曜までに治るといいのですが・・・。


さて関西の皆様、先週のIBM Notes/Domino Day 2017(大阪)に参加されましたでしょうか。

もちろん私は参加させて頂きました。
まだ名古屋・福岡が控えておりますので、内容については控えさせて頂きますが、率直なところ期待以上の発表であったと感じております。
もちろん個人的な価値観ですが、過大評価をしている訳ではなく、そのように感じたというのが本音です。

ぜひ名古屋・福岡近辺の方で、まだ申し込まれていないようでしたら、まだ間に合うかと思いますので、ぜひご都合を調整ください。
決して後悔するような内容ではないはずです。


さて!
今週15日はノーツコンソーシアムオープンセミナー 2017も控えております。
恐らく?
こちらもまだ参加は間に合うかと思いますので、ぜひご都合調整ください。

もちろん私も参加です。
昨年は1コマ頂き、弊社の取るに足らない事例を発表させて頂きましたが、今年は参加者として楽しませていただくつもりです。

参加セッションも同一時間に複数参加したいと思うほどであったのですが、なんとかそれぞれひとつに絞り、申し込みを完了しております。
ただ・・・
10時にスタートして、各45分のセッションなのですが、16:45まで7個のセッションに申し込んでしまいました。
そう、お昼を食べにいく時間がない(汗

ただその時間も惜しいと感じましたので、カ○リーメイト類を持ち込んで、休憩時間に済ませるつもりです。


懇親会も楽しみなのですが、今回はなんと!!
宿泊なんです。
翌日に本業の打ち合わせを行うことになっており、最後までゆっくりさせて頂くことができます!


さらに!!

16日午後の飛行機で高松へ。

そう、ノーツ・しこく・フェスタです。

去年は私費で往復フェリー泊という0泊3日の弾丸ツアー(一説には梅ツアーとも・・・)だったのですが、非常に内容が濃いものでしたので、今回はオープンセミナーの延長ということで許可を頂きました。

但し帰りは土曜 1:00のフェリーなんですが(汗

こちらもまだまだ募集中のようですので、四国のNotesなみなさまだけでなく、近隣、もちろん遠方からもご参加ください!!


それではまずは15日、皆様にお会いできることを楽しみに致しております!!

2017年11月6日月曜日

余談!・・・データベースアイコンについて

みなさま、こんにちは。
IBM Notes/Domino Day 2017は申し込まれましたか?
もちろん私は今週の大阪会場に参加致します。
 11月9日(木曜日) 大阪
 11月16日(木曜日) 名古屋
 11月29日(水曜日) 福岡

Notes/Dominoの最新情報が気になりますよね。
ぜひご都合できるようでしたら、お近くの会場にご参加ください!!


さて今回は少し方向性が違うのですが、データベースアイコンについて記載してみたいと思います。
個人的には皆様がどのようなアイコンを使っているのか、とても興味があるもので
して。

さて早速ですが、現在のアイコン変更の画面です。
以下はメールテンプレートのものになります。


上半分が現在使用されているアイコンになります。
下半分は、Notes 8.5.2より前のバージョンで使用されるものとなります。
つまり8.5.2のバージョンアップにより、アイコンとして使用できる幅が広がったと言えるでしょう。

それでは現在使用できるイメージファイルについて確認しましょう。

先の画面の「置換」ボタンをクリックした画面です。
以下のように、GIF・JPEG・ビットマップ・PNGが選択可能です。
基本的に弊社ではインターネット上や、Officeのオンライン画像など、著作権フリーのものをサイズ変更したり、トリミングしたりして使ってます。


次にサイズです。
サイズは32x32ピクセル以内でなければなりません。
それ以上に大きい画像を取り込もうとすると、以下のようなアラートが表示されてしまいます。


それでは逆に小さかったらどうでしょう。

以下のような分かりやすい画像のサイズを16x16ピクセルにしてみます。


置換すると、下記のような表示になりました。


少し分かりにくいかと思いますが、画像が粗くなったのがお分かり頂けるかと思います。
つまり32x32ピクセル以下の画像は、拡大して32x32ピクセルのアイコンとして使用されるのです。


それではせっかくですので、8.5.2より前のバージョンの画面を見てみましょう。

「アイコンエディタを開く」をクリックします。


知る人には懐かしい画面ですよね。
32x32ピクセル上に16色+無色でデザインしていくというものです。

かなり表現として限定されるのですが、それでも皆様素晴らしいアイコンを開発されていたと記憶しております。

ちなみに絵心のない私は、ペイントで32x32ピクセル内に画像ファイルを貼り、それをコピーしてこの画面に「貼り付け」て使用していました。


さて以上でアイコンの作り方(設定の方法)は完了ですが、皆様はどのようなアイコンをご使用ですか?

弊社では時代の変化を含め、下記のようなアイコンがあります。

まずは8.5.2以前の古いものから・・・



続いて8.5.3時代には・・・



直近ですと・・・



実に多種多様なパターンがあります。
裏返すと統一感がない・・・。

ぜひ皆様のご自慢!? のデータベースアイコンを教えてください!!


今回は息抜きのような話題になってしまいましたが、アイコンひとつにしてもユーザーにとってはかなり重要な要素です。
手を抜かずに設定すべきと強く感じますし、また現状の不十分さに反省しております。