ページビューの合計

2018年12月4日火曜日

IBM Notes #Traveler データベースのデフラグについて

Let's regularly defragment the Traveler server !!

みなさま、こんにちは!!
いよいよ今年もあと1ヶ月を切ってしまいました。
クリスマスやお正月が楽しみな反面、年末の繁忙期を乗り越えなければなりません。

さて本日はタイトルの通り、Travelerサーバーのデフラグについて書かせて頂きます。

まず弊社の環境ですが、社内にDominoサーバーがあり、DMZ上にTravelerサーバーがあるというごく単純な構成になっています。
Travelerサーバーは定期的に再起動を行っております。

さて今回の背景です。
数ヶ月前までは、社内で使用しているノーツクライアントにメールが着信するのが早いか、Travelerを経由してiPhoneに通知が出るのが早いかというほどでした。
ところが最近になりiPhoneへの通知が遅れたり、場合によっては通知がない(正しくは通知前にクライアント側で閲覧したため、通知されない?)という状況になってしまいました。

一番にTravelerサーバーの再起動やサーバーそのものの再起動を試してみたのですが、改善されませんでした。
そこで弊社のパートナー様へ情報提供を依頼したところ、以下記事のリンクを送っていただけたのです。

(参考) IBM Notes Traveler データベースのデフラグによるパフォーマンスの改善について

詳細はリンク先を見て頂きたいのですが、要は

「IBM Notes Traveler のインストールサイズが大きくなり、稼働時間が延びるにともない、IBM Notes Traveler の内部データベースのサイズが増加してシステムのパフォーマンスに影響を及ぼしうるケースが見られる」ようになるそうです。
この対策として、データベースを圧縮・最適化するデフラグコマンドを追加頂けたました。
またシステムを良好な状態に維持するため、1ヶ月に1回程度はこのコマンドを実行することが推奨されているとも記載されております。
恥ずかしながらこの情報は全く知らずに使い続けていたことが原因のようです。
ということで、早速Travelerサーバーのデフラグを行い、また今後のために30日に1回実行するように設定してみたいと思います。

手順もすべて先のURLに書かれているのですが、実に簡単です。


サーバーの notes.ini に以下の1行を追加するだけ・・・。

    NTS_DEFRAG_INTERVAL_DAYS=30
保存して、Travelerサーバーを再起動すると、前回のデフラグより30日が経過されている場合(弊社では1回も実行していないため、もちろん該当)、起動時にデフラグが実行されます。

デフラグの時間を計り忘れたのですが、1~2分程度ではなかったかと思います。
恐らく次回以降はこの時間も短縮されるのではないかと推測します。


なお手動で実行する場合は、Traveler タスクと HTTP タスクをシャットダウン

  tell traveler quit
       tell http quit


した上で、以下コマンドを実行します。

load traveler -defrag


デフラグが完了すると、自動でTravelerサーバーが起動し(httpタスクも含む)、完了です。


以上、本来ユーザーが知っておかなければいけない情報かと思いますので、掘り起こさせて頂きました。


2018年11月5日月曜日

IBM Domino Mobile Apps とメールの連携について

Since IBM Domino Mobile Apps which was released the other day said that mail is not supported, I tried to verify whether it works as expected from Traveler and iNotes.

みなさま、こんにちは!!
先日リリースされました IBM Domino Mobile Apps ベータ版なのですが、現在メールは利用できないと明記されております。
業務での運用ではメールとの連携は必須のため、Traveler及びiNotesからの動きを確認してみました。

まずはTravelerからです。
TravelerのメールはiPadのデフォルトメーラーに届き、下記のような文書リンクの含まれたメールからテストしてみます。


ノーツクライアントからですと、メールリンクのアイコンが表示されるのですが、Travelerでは上記のように表示されています。
また従来はWebブラウザで開いておりますので、設定によりリンクアイコンの右にはLinkの文字と文書URLのリンクが表示されております。

当たり前ですが、このURLをタップするとブラウザが起動し、XPagesで作成したページが表示されます。

それではリンクアイコンをタップしてみます。
すると一瞬IBM Domino Mobile Appsで開くというメッセージが表示され(画面ショット撮れませんでした・・・)、パスワード入力画面が表示されました。
もちろん先日記載しましたが、弊社ではIDVaultを設定していないため、iPadに登録したIDファイルに対するパスワードを求められるものになります。


パスワードを入力すると、無事 IBM Domino Mobile Apps で対象文書を開くことができました。


もちろん上部のアクションボタン(ワークフローを含む)も問題なく動いてくれます。
期待した通り、満足な結果が得られました。

アプリのタブを閉じ、Homeタブを表示したところ、


Recent Applications の画面が表示されるのですが、こちらに今回開いたアプリケーションは追加されませんでした。
個人的にはこちらに追加されるものと期待していたのですが、考えようによってはメールからしか開くことのないアプリケーションがこちらに並ばない仕様も考えられたものかもしれません。

上部左の「メール」に戻ろうとすると、少し気になる画面が表示されました。


恐らく先のメールリンクをタップした際に、アイコンのgifファイルを開き、同時にIBM Domino Mobile Appsが開かれたような動きになっているようです。
できればこの画面は表示されないよう改善頂きたいところです。

こちらも左上の「完了」をタップしますと、もともと想定していたメール画面に戻ります。


つづいてiNotesです。


iNotesの画面はリンクアイコンのみが表示されており、こちらをタップするとこのように

"Domino Apps"で開きますか?

というダイアログが表示されます。
「開く」をタップしますと、左記のTravelerと同じようにアプリが開きます。


ということで、メール機能を持たずともTraveler や iNotesを利用することで、問題なく業務が行えることがわかるかと思います。

先にも書きましたが、少しチューニングが必要な部分は感じますが、ベータ版というところを考えると、製品版では一部は改良されたものがリリースされるのではと期待しております。


簡単ではありますが、ほぼ期待通りの結果が得られましたことを報告致します。

2018年11月1日木曜日

IBM Domino Mobile Apps ベータ版を使ってみました。

Finally released IBM Domino Mobile Apps beta version.
Since IDVault has not been set up, I write the setup procedure using the ID file.

みなさま、こんにちは!!
先週はMizkan様にお世話になり、その余熱も覚めやらぬ昨日、ついにリリースされました。

IBM Domino Mobile Apps ベータ版

アプリの導入や詳細については、こちらのブログをご覧ください。

アプリのインストールまではほんの数分でした。すぐにiPadに以下のようなアイコンが現れてくれます。


アプリを起動するとDominoサーバーの設定画面が表示されます。
・・・申し訳ありません、画面ショット撮り忘れました・・・

※※※本ブログを読んで頂いたN様より「クライアント構成」画面ショットを頂戴致しましたので、添付致します。
N様、ありがとうございます!!



パソコンでセットアップしたことがある方でしたら見たことのある「Dominoサーバー名」と「ユーザー名」を入力し、次に進めます。
弊社ではIDVaultを設定していないため、この時にIDファイルを求められます。

IDファイルのアップロード方法は至って簡単で、iPadをiTunesに接続して、デバイス画面を開くと、「ファイル共有」というメニューがありますので、こちらをクリックします。


すると右側にファイル共有の設定が表示され、App欄に「Domino Apps」があることがわかります。



さらに右側に「Domino Appsの書類」という欄があり、こちらにIDファイルをドラッグ&ドロップします。


最後に下にある「同期」ボタンをクリックするだけで転送完了です。


それでは再度 IBM Domino Mobile Apps を起動します。
パスワードを求められますので、入力すると無事アプリを起動することができました。

ちなみに弊社Dominoサーバーのバージョンは9.0.1ですが、問題なく接続することが可能です。

左上のハンバーガーメニューから「オープン・アプリケーション」をタップすると、パソコンのノーツクライアントと同様、アプリケーションを開くことができます。


こんな感じですね。サーバーを選択して、開きたいアプリケーションを選びます。


あとは自由に使っていただければいいのですが、かなり使えるというのがわかると思います。
ぜひ何のカスタマイズもせずにそのまま使ってみてください。

なおIDファイルを使っている証拠として、下記は弊社のSFAの画面になります。
担当者欄には [@Name([CN];@Username)] が式として入っているのですが、正しく私の名前が入っていることが分かります。


恐らくたくさんの方から情報発信されてくるものと思いますので、皆様もさわりながらお試しください。

少し余談になるのですが、弊社のアプリデザインは以前にも書きましたが、下記デザインを採用しております。
こちらを利用しますと、ビューの行幅などもiPadで違和感なく利用することができますので、ほぼカスタマイズなしで運用できそうです。



ぜひ参考になさってください!!

※注意事項
本記事なのですが、メモ等を取らずにセットアップしてしまったため、記憶の範囲での記事になります。誤り等ございましたら、ご指摘頂ければ修正させて頂きます。

2018年10月27日土曜日

#ノーツコンソーシアム ( #notescons ) #ユーザー情報交換会 に参加させて頂きました。

I report on the User Information Exchange Meeting of the Notes Consortium held yesterday.
This time, Mizkan gave us a venue, it was a fulfilling day in the fact that the first half is an application boast meeting and the second half is a tour of Mizkan Museum.

みなさま、こんにちは!!
今回は10月26日(金)にMizkan様本社およびミツカンミュージアムにて開催されました「ノーツコンソーシアム ユーザー情報交換会」に参加させて頂きましたので、そのレポートとさせて頂きます。

まずユーザー情報交換会の位置付けなのですが、ノーツコンソーシアム参加企業の中で、ユーザー企業同士の交流と情報共有を行う目的で年3回開催されており、今年で5年目。つまり15回目の開催だそうです。
運営や管理など全てをユーザー企業にて実施しております。
基本的にはユーザー企業以外の参加は認められていないのですが、時には今回のようにIBM様やパートナー企業様にも参加頂き、ユーザー企業の悩みの相談にのっていただくような開催もあります。

今回はMizkan様のご協力により、会場としてMizkan様本社をお貸し頂きました。
参加企業は12社。

テーマは、「ノーツアプリ自慢大会」です。

●13:15 Mizkan様本社集合
●13:30 ユーザー情報交換会(ノーツアプリ自慢大会)
●16:00 ミツカンミュージアム見学
●18:00 懇親会


本社会議室をお借りし、まずは受付。
なんとお酢のドリンクを準備して頂けておりました。


さっぱりしておいしかったです。ごちそうさまでした!!

さてアプリ自慢大会ですが、便宜上50音順でスタート。

●D社様
Cachattoを採用した経緯とインフラ図を中心に説明頂きました。
やはりモバイル対応は必須ですね。

●T社様
ポータルの改修が印象的でした。緊急速報をメールDBに受信し、受信次第ポータルトップに表示するという素晴らしい案はマネさせて頂く価値がありますね。
ユーザー管理関連のアプリケーションの工夫も参考になりました。

●N社様
「ひとり業務改善」というto do管理アプリケーションを構築され、RDBを介してBIで分析されるという事例でした。たまたま弊社と同じBIであり、弊社はcsv経由でノーツ連携しているため、RDB接続も試してみる価値を感じました。

●N社様
e-メールの添付ファイルを自動でzip暗号化されるという興味深いものでした。弊社ではユーザー任せになっており、来年にConnectionsのFilesでの運用も考慮していたのですが、比較する必要がありそうです。

●N社様(・・・N社様が多いですねw)
大量にあるアプリをXPagesにてWEB化推進中だそうです。
LDAP連携や、IBMiとのリアルタイム連携、エラーログの自動取得など、弊社でもやりたいことを実現済のため、機会あればもうひとつ深堀させて頂きたいと感じました。

●弊社
先日のNotes/Domino Day Autumnの基調講演にて触れておりましたが、単純なアプリなのですが、法的な報告義務のある取引を記録するアプリケーションを紹介させて頂きました。

●M社様
2012年より全面WEB化(XPages)されたという、かなり進んだ会社様です。
従来は拠点ごとに管理していた記録をノーツ化することで情報共有が進んだという素晴らしい事例でした。
さらにノーツのみでBIチックなグラフ機能を構築されたとの事で、動画デモを準備頂けていたのですが・・・残念ながらこちらはうまく動かず。
・・・ぜひまたの機会に見せてくださいね。非常に興味あります!!
今後はIEに最適化してしまったコンテンツをマルチブラウザ化されるそうで、こちらも興味あります。

さて長くなりましたが、いくつかキーワードがありました。
【WEB化】【モバイル対応】【各種連携】【自動化】

まだまだ情報収集する必要はありますが、各社にとってV10は後押ししてくれるのではないかと強く感じた1日でした。

終了後はミツカンミュージアムを見学させて頂きました。
入ってビックリ!!
お酢の奥深さとミツカン様の歴史、またプロジェクションマッピングや動画コンテンツなど。とても90分では足りないほどの内容でした。
ぜひお近くに行かれることがございましたら、一度見学されることをオススメします!!
せっかくなので、写真を数枚。




終了後は懇親会も準備頂きました。
各社のお悩みや工夫をそれぞれやり取りできました。

ちなみにお店にはこのように書かれておりました(笑


最後になりましたが、ノーツコンソーシアム事務局様、担当理事様、そして日本IBM様、ご参加の皆様、本当にありがとうございました。
特に今回の会場をご提供頂きましたMizkan様につきましては、至れり尽くせりのご対応、心より感謝致します!!

非常に勉強になり、またやりたい事、やるべきことが大量にできてしまいました!!
はやく今のBI作業を片付けて、とっかかりたいです。

また何か実現できましたら、こちらに書かせて頂きますね。

2018年10月11日木曜日

#ずっとノーツ #dominoforever

Finally announced IBM Notes / Domino V 10!
Notes Domino Day Autumn Tokyo has been very exciting!
Although it is extremely powerful, could I also help you?

みなさま、こんにちは!!
昨日、ついに発表されましたね、IBM Notes/Domino V10 !!

スタートは電飾をふんだんに取り入れたドラムパフォーマンス!
"Domino"と"V10"の文字が踊ります😍

その後、Notes /Domino V10 新機能とデモンストレーションを経て、私ごときで恐縮なのですが、基調講演のユーザー座談会へ、他2社のユーザー様と共に登壇させて頂きました。


内容についてはV10の新機能に対する期待と、導入後の姿などを話したつもりなのですが、少しでもお伝え出来たら幸いです。

以降、Notes/Domino V10へのアップグレードに向けての説明で基調講演を終えました。

1時間の長い休憩時間があったのですが、これは20台のiPadが用意されており、IBM Domino Mobile Apps(iPad版ノーツクライアント)のデモが行われ、多くの方がその機能に驚かれたのではと感じました。

その後は2トラックに別れ、ひとつはIBM様によるNotesの新機能、Dominoの新機能説明。
私はもう片方の「ノーツコンソーシアム ザ・ノーツ研によるV10ベータ評価報告」と「IBMチャンピオンによる 開発者が語る 最新Dominoアプリケーション事例」へ参加しました。

チャンピオンセッションは一部動画が公開されておりますので、ご覧ください。



終了後、有志の方によるV10歓迎パーティが開催され、非常に熱い時間を過ごさせていただくことが出来ました。

本ブログではなかなかお伝えしきれないと思いますので、ぜひソーシャルメディアにて以下ハッシュタグを検索して見てください。

#ずっとノーツ
#dominoforever

さて来週16日には大阪でもIBM Domino Day Autumnが開催されます。
この日は1トラックで、今回参加出来ませんでしたIBM社員様のセッションを聞くことが出来ます!!

終了後はこちらも有志で歓迎パーティが計画されております。
当日、数名看板を持ってお待ちしておりますので、お声掛けください。

皆様と一緒にお祝いできる日を楽しみにしております。

※東京の協賛社様よりプレゼントをお預かりしておりますので、当日何らかのイベントでお持ち帰り頂けるよう準備を進ます。

2018年9月26日水曜日

新規文書作成手順のいろいろ

This time I will write a little about Notes's new document preparation though it is now.

みなさま、こんにちは!!
Domino10のカウントダウンが進み、ついに2週間となりました。
筆者もワクワクしながらその日を待っているのですが、きっと皆様も同じことでしょう!!

改めていくつか告知です。

IBM Notes/Domino Day 2018 Autumn Tokyo
Domino V10 歓迎パーティー @Tokyo
【10月16日大阪、10月19日名古屋】IBM Notes/Domino Day 2018 Autumn
Domino V10 歓迎パーティー @Osaka

また現在日程調整中ですが、先日初めて東京以外で開催されました【新任担当者向けワークショップ】ですが、大阪でも11月に開催できるよう準備中です。決定までもう暫くお待ちください!!

さてそんな中ですので、本来はベータ版の新機能等を紹介すべきかとは思いますが、弊社のアプリで少し気になっていた点がありましたので、記事にしてみました。

内容としては、新規文書作成コマンドについてです。
・・・すいません、今さらなんて言わないでください(汗

ちなみに弊社ではユーザー側がわかり易いようにとの視点から、アクションバーのボタンのみを使用しております。

こんな感じですね。


複数フォームがある場合は、以下のようにサブアクションとしています。


まず今回制御したかったのが、作成メニュー内のコマンドになります。

例としてわかりやすいように[メインフォーム|main]と[返答フォーム|reply]というふたつのフォームを持つアプリケーションを準備しました。

一覧ビューにはアクションバーに[新規作成]ボタンを配置し、[メインフォーム]だけを作成できるような設定を行います。


もちろんユーザーが見る画面では、「新規作成」ボタンがひとつあるだけで、違和感はないと思われるのですが、


フォームをデフォルト設定のままで作ってしまうと、[作成]メニューに含まれてしまいます。
今回の例ですと、以下のように[メインフォーム]と[返答フォーム]が表示されてしまい、いきなり[返答フォーム]を作成できるようなメニューになっています。


実際クリックすると、以下のように親文書が選択されていない警告が表示されますので、アプリケーションそのものに影響はないのですが、そのようなメニューを存在させたままにしておくことは避けるべきです。


このようなことを回避するために、フォームのプロパティにあります[メニューに含む]のチェックを外しておきます。


これだけで先のメニューから[返答フォーム]を消すことができます。


もちろん[メインフォーム]にも同じ設定を行うことで、[作成]メニューから新規フォームの作成はできなくなります。
たとえばアクションバーの新規作成ボタンに、composeだけでなく、別の式を実行させようとする場合などでは有効な方法になります。


ごく簡単な設定ではありますが、アプリケーションを正しく利用させる(予期せぬユーザーの作業を避ける)ためにも重要な設定になります。

参考までに、LotusScriptでの処理を行いたい場合は、御代チャンピオンのブログ

文書の作成

をご覧ください。

また別アプリケーションの文書を新規で作成することも可能です。
こちらも御代チャンプの

別のデータベースに文書を作成する

が参考になります。

なお保存時に処理を行わせたい場合もあるかと思います。
例えばフィールドの値をnotes.iniに書き込むなど。

保存の場合は、アクションバーには出てこないのですが、ノーツクライアント特有の[esc]キーによりウィンドウを閉じる操作が行われ、文書を保存することができてしまいます。
そのために[esc]キーでのウィンドウクローズを制御する必要があります。

こちらも御代チャンプのブログに記述されております。

ESCで文書をクローズさせない

いやー、御代様ありがとうございます・・・なんて、自分の手間を省くような記事になってしまいましたが、ちょっとした工夫で何をするか分からないユーザーの制御を行い、データベースを正しい状態で蓄積させるのも設計者の責任ですので、ぜひ細かなことでも手を抜かずに設定してください。

それではまずは10月10日、東京でお会いしましょう!!


2018年8月30日木曜日

【告知】 9月からはノーツ関連イベントが続々!!

For this time, I have compiled Notes-related events that are scheduled to be held soon. Not only listening, but also many participatory events are scheduled so please expect !!

みなさま、こんにちは!!
早いもので8月も今日を含め、あと2日を残すのみになりました。
お子様にとっては一番憂鬱な時期になるのでしょうか。
とは言っても、運動会(体育祭)や音楽会(文化祭)と子供たちにとってもイベントが続くシーズン到来ですね。

さてイベントといえば、ノーツ界隈もかなり賑わいを見せております。
私もいくつか参加を予定しているのですが、あまりに多くあるようですので、一度整理しておこうかと記事に致しました。

2018/09/04(火)・05(水) XPagesワークショップ 2018 名古屋会場
2018/09/06(木)or07(金) IBM Notes/Domino とIBM Watson, IoT 連携ハンズオン
2018/09/06(木) Notes/Domino Solution 2018(東京)
2018/09/07(金) Notes/Domino Solution 2018(大阪)
2018/09/13(木) 九州地区研究会 第3回 & 新任担当者向けワークショップ
2018/09/20(木) チームも成果も変わる!「グループウェア活用術」 × 「取り組み方」セミナー
2018/09/21(金) Domino ログを利用した Notes メール利用状況の見える化セミナー
2018/09/21(金) ノーツコンソーシアム主催 IBM Notes/Domino V10 Beta 2 体験会(大阪)
2018/09/21(金) 2018年 大阪地区研究会 第3回
2018/09/21(金) テクてくLotus技術者夜会
2018/09/26(水) ノーツコンソーシアム主催 IBM Notes/Domino V10 Beta 2 体験会(東京)
2018/09/28(金) ノーツコンソーシアム主催 IBM Notes/Domino V10 Beta 2 体験会(名古屋)
2018/10/10(水) The World Premiere of Domino V10
2018/10/23(火) 新任担当者向けワークショップ 東京秋開催(10月23・24日)

いや~、たくさんありますね。
見ていただければわかると思いますが、特にハンズオン等、参加者が手を動かせる機会が目立つことがわかると思います。このあたりもノーツの活性化の現われではないかと喜んでおります。

実はこれ以外にも公開されていないイベントもまだまだたくさんあるのですが、本日時点では控えさせて頂きます。
特に大阪での新任担当者向けワークショップ開催については、なんとか実現すべく、関係者一同準備を進めておりますので、ご期待ください!!

ちなみに私は、現時点で以下の参加がほぼ決定しています。

2018/09/07(金) Notes/Domino Solution 2018(大阪)
2018/09/21(金) Domino ログを利用した Notes メール利用状況の見える化セミナー
2018/09/21(金) ノーツコンソーシアム主催 IBM Notes/Domino V10 Beta 2 体験会(大阪)
2018/09/21(金) 2018年 大阪地区研究会 第3回
2018/09/21(金) テクてくLotus技術者夜会(大阪PV)
2018/10/10(水) The World Premiere of Domino V10

以下に参加したいのですが、どうしてもスケジュールが・・・(泣
2018/09/06(木)or07(金) IBM Notes/Domino とIBM Watson, IoT 連携ハンズオン

ぜひ皆様とお会いできることを楽しみにしております。

さて最後にもうひとつ告知です。
既にご存知の方も多いかと思いますが、IBM様では自然災害の防止や自然災害への対応、回復に関する問題を解決しようという「Call for Code Global Initiative」を発表しております。
詳しくはサイトを見て頂くとして、実際に先週の台風で未だ被害の全容がつかめていない弊社としても非常に気になる内容であり、今後の活動におおいに期待しております。

2018年8月20日月曜日

#Notes 文書からファイルサーバーの特定ファイルを開く

This time I will get the value of the field in the NotesForm and set up to open the PDF file stored in the file server that matches that value.

みなさま、こんにちは!!
さて最近は別の作業でなかなかブログを書くことができず、申し訳ありません。
当ブログも2016年7月の開設から2年が経過しました。
振り返ると、今回の記事がちょうど100本目になります。
・・・まだまだですね(汗

今回は以前から実現したいと思いつつ、実際の切り替えが年度末である必要があり、のんびりしていたのですが、気付くと今年も半分過ぎようとしており、あわてて手がけた内容になります。

まず最終目的としては、Notesの文書内にあるフィールド(今回は「受注NO」というフィールド)の値を取得して、ファイルサーバーにある"受注NO".pdfを開きたいというものになります。
現在運用しているアプリケーションでは、リッチテキストフィールドに"受注NO".pdfを添付ファイルとして扱っています。
画面としては、下記のようなものになります。


ふたつ添付ファイルがありますが、今回は右側の「受領書」欄のみを対象とします。

もちろんこの状態でも問題ないのですが、Notesのアプリケーションサイズを抑えたいのもひとつなのですが、いちいち添付ファイルを貼り付ける手間を省きたいという点が一番の目的になります。

なお少し余談になりますが、スキャンした伝票の名前を"受注NO".pdfに変更する過程については、伝票のバーコードを複合機でスキャンする際に処理させており、自動で所定のフォルダ内に保存するという処理で完結しております。

まずは受領書欄にボタンを追加し、ファイル名を指定してpdfを開くことができるか、ためしてみます。


ボタンには直接ファイルパスを指定して以下の式を設定しました(テストデータとして、受注NO、"49396550"というものを指定しています)。
※半角¥マークはバックスラッシュに変換されますので、意図的に全角で記載しております。
※弊社ではファイルサーバーをクライアントのXドライブにマッピングしておりますので、このような式になりますが、直接サーバーを指定する場合は、"¥¥¥サーバー名¥¥ファイルパス"で指定してください。
※"¥"は""でエスケープする必要がありますので、ご注意ください。
・・・恥ずかしながら、今回も私はつまづいておりました(大汗



@Command([Execute];"X:¥¥globalscan¥¥test¥¥49396550.pdf")



それではNotesクライアントからPDFが起動できるか、確認してみましょう。


!!

しばらく確認して気付きました。
デザイナーをインストールしている端末を作り直したため、AdobeReaderがインストールされてませんでした(汗

ということで、インストールして無事指定したPDFが開くことを確認しております。

このままではすべての文書から同じPDFを読み込んでしまいますので、フォーム内の"受注NO"を取得して、それぞれ特定のPDFファイルを開くことができるように変更します。

それでは先ほど設定したボタンの式を、以下に書き換えます。


NO:=juno;
@Command([Execute];"X:¥¥globalscan¥¥test¥¥"+NO+".pdf)"


フォームの受注NOフィールドである"juno"を変数"NO"に取得して、呼び出すファイルパスに組み込んだだけのものになります。


それではテストとして、先ほどの文書をコピーして、受注NOを49396550からダミーである"12345678"に変更してみます。


あわせてファイルサーバー側にもダミーのPDFを準備して、ファイル名を"12345678.pdf"にしておきます。


それではボタンを押して、正しく指定したPDFファイルが開くか確認します。


少しわかりにくいかと思いますが、AdobeReaderが起動し、"12345678.pdf"が開いたことが確認できました。


@関数のみで解決する、実に簡単な改善ではありますが、実務担当者の負担は大きく下がることになるようです。

引き続き、ユーザー視点での思いつきや閃きがあれば、記事にさせて頂きます。

2018年7月30日月曜日

#Notes #Form を個人ごとに切り替えたい

This time I try to change the Form to be displayed for each user by using Subform and notes.ini.

みなさま、こんにちは!!
神戸は日曜早朝に逆走台風が真上を通過して行きました。
幸いにも治水対策がそれなりに施されているため、先日以上に大きな影響はありませんでしたが、被害を受けられた皆様の1日も早く日常生活に戻ることができますようお祈り申し上げます。

さて今回はWEBではよくある画面表示を個人ごとに切り替えるという機能をNotesのFormでできるか試してみましたので、報告致します。
あらかじめお断りなのですが、もっと簡単に組み込むことができるような気がするのですが、まずは私なりのやり方としてご承知ください。

そもそもWEBではCSSを利用することでテーマカラーの変更は簡単に行うことが可能です。
残念ながらNotes Formにはそのような機能が実装されておりません。
・・・もちろんXPagesなら適用できるのですが・・・

ということで、今回はサブフォームと環境設定文書の組み合わせで挑戦しようと思います。

それでは早速、サブフォームAを作成します。
今回は以下のような表を作成してみました。


続いてサブフォームBです。
わかりやすいように、表のセルの色を変更してあります。


続いてフォームを作成します。

フォームにサブフォームを埋め込むのですが、その際に「式の定義によりサブフォームを挿入」にチェックし、[OK]します。


※このオプションを選択すると、サブフォームそのものは選べなくなります。

以下のように、<サブフォームの計算結果>がフォームに貼り付きました。


それではサブフォームを表示させる式を記述します。
今回はnotes.iniにフォームの設定を行いますが、初期時にはnotes.iniにパラメーターがありませんので、その場合はサブフォームAを呼び出すように設定します。

以下の式を設定してみました。

SUBF:=@Environment("TEST_SUB");  
@If(SUBF="";"subA";SUBF)                

notes.iniに「TEST_SUB」という環境変数がない場合は、サブフォームAを。それ以外は環境変数の値で設定されたサブフォームを呼び出すというものです。


続いてビューに環境変数を切り替えるアクションボタンを作ります。
今回はアクションボタンとして「テーマカラー変更」とし、サブアクションとして「青」「赤」を選べるように設定します。


式ですが、"青"・・・サブフォームBを設定

@SetEnvironment("TEST_SUB"; "subB")  

"赤"・・・サブフォームAを設定

@SetEnvironment("TEST_SUB"; "subA")  


まずはnotes.iniに正しく書かれるか、試してみます。

初期時はもちろんnotes.iniには [TEST_SUB]は存在していません。

まずはその状態で新規作成を開いてみます。
最初に設定したように、notes.iniに[TEST_SUB]が存在しない場合は、サブフォームAを表示させておりますので、以下のようにサブフォームAが表示されました。


それではビューに戻り、「青」(サブフォームB)をクリックしてみます。
まずはnotes.iniを確認してみますと、最下行に以下設定が登録されておりました。


正しく"subB"が設定されたことが確認できました。

この状態でフォームを新規作成で開くと、以下の画面が表示されました。


正しくサブフォームBが呼び出されました。

念のためビューに戻り、「赤」(サブフォームA)に戻し、notes.iniを確認してみます。


notes.iniは正しく"subA"に変更されました。

フォームを開くと、当然サブフォームAが呼び出されます。


以上、甚だ簡単ではありますが、例えばこの機能を用いることで、多言語対応のアプリケーションに発展させることができます。

例)
 サブフォームA・・・英語
 サブフォームB・・・日本語
 サブフォームC・・・フランス語
  ・・・

初期ビューに[Language]というアクションボタンを配置し、サブアクションで各言語を並べることで、利用者のnotes.iniに言語設定が行われることになります。
次回以降、利用者は常に自分の言語でフォームが利用できるというものです。

これだけの機能が@関数だけで実現できるというNotesの素晴らしさ。
今後、Domino10や11でNotesフォームやビューがCSS対応されることに期待です!!