当ブログに掲載しているサンプルは、すべて利用者の自己責任とします。
ただし、明らかな不具合がある場合、ご連絡いただければ、訂正記事を出します。
また、こちらのサンプルは、別のサイト等への公開、転載は一切禁止しています。
どうしてもと言う場合は、筆者にあらかじめご連絡ください。
記事そのもののリンクについてはご自由に行っていただいてよいです。
xxのようなサンプルを作って欲しいとかxxxの作り方を教えて欲しいというお問い合わせには応じていません。
このようなお問い合わせは、株式会社エフまでご一報ください。

2020年2月13日木曜日

InitiallyModifiedについて

皆さん、こんにちは。

今日もヘルプに載っていない機能についての話です。
ですが、あまりにも簡単で、なおかつ、ヒント自体はヘルプに出ているので 、日本語のみの投稿とします。

今回は、NotesDocumentクラスのInitiallyModifiedプロパティです。

まずはいつものようにコードアシスタントを確認してみます。
コードアシスタントに表示される
このようにNotesDocumentクラスのプロパティとして候補に表示されるのがわかります。
さて、ではヘルプを確認してみましょう。
NotesDocumentクラスのプロパティ一覧

見事なまでにないのがわかりますね・・・

しかし、今回はここであきらめずに検索してみました。
ヘルプの検索結果
おや?検索結果が出てきましたね。
JavaScriptクラスのメンバーとして検索されました。
これによると、
『読み取り専用。文書が最初に変更された日付/時刻。』とのことです。

ここで勘の鋭い方はNotesDocumentクラスのLastModifiedプロパティを思い出すのではないでしょうか?
はい、InitiallyModifiedはこのプロパティと対になっているものです。

では、具体的にどういったものかについて説明します。
InitiallyModifiedは文書のプロパティのうち、「更新日(初回)」を取得するものです。
対して、 LastModifiedは文書のプロパティのうち、「更新日(現在のファイル)」を取得するものです。
どのプロパティを取得する?

本当にそうなのかを確認するために、以下のようなサンプルを作成してみました。
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
    
    Set db   = session.CurrentDatabase
    Set docs = db.UnprocessedDocuments
    Set doc  = docs.GetFirstDocument
    
    Msgbox _
    "InitiallyModified: " & Cstr(doc.InitiallyModified) & Chr$(10) & _
    "LastModified     : " & Cstr(doc.LastModified), _
    0 + 64, "InitiallyModified"
    
    Exit Sub
    
ErrProc:
    Msgbox _
    "エラー行数:" & Cstr(Erl) & Chr$(10) & _
    "エラー番号:" & Cstr(Err) & Chr$(10) & _
    "エラー内容:" & Error, 0 + 16, "InitiallyModifiedとLastModified"
    
    Exit Sub
End Sub


これはビューアクションです。
ビューで選択した最初の文書のプロパティを取得して画面に表示するものです。

結果はこちら。
実行結果

どうでしょう?説明の通りになっていますね。
実はこのInitiallyModifiedは「@Modified」関数で代用できるそうです。なので、使わなくても何とかなるでしょう。ただ、ソースコードに統一性を持たせたいのであれば、こちらを使ったほうがいいかもしれません。

詳しくは、
[Notes/Domino] 設計の更新日時を取得する方法
を読むと良いでしょう。


ちなみに、このプロパティはDomino 8.5から実装されたものになります。
どうりでJavaScriptのヘルプに載っているんですね…




それでは今日はこの辺で…






Notes/Dominoで困ったことがあれば、弊社にお問い合わせください。
HCL Masterの私が承ります!
お問い合わせはこちらから→Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

2020年2月10日月曜日

CancelSendOnMissingKeyについて

皆さん、こんにちは。

ここのところ、英語で記事を書きました。
こちらは、HCL Grand Masterの加藤さまからの課題ということで書いてみました。
ただ書くだけなら、過去の記事を英訳するだけでも良かったのですが、それではHCL Masterとしては(私自身を含めて)、誰も納得しないでしょう。
ですので、新しいことを調べた結果について書き上げました。

あえて日本語にしなかったのには理由があります。
実は、HCLへの苦情のつもりで書きました。私のブログは基本的にヘルプに書いてあることを元にしてあります。
ヘルプを読んでもわからない、わかりにくいだろうというところを補足するつもりで書いてきたのです。サンプルなんかもそうです。
ヘルプの補足なのです。

なので、日本語で書いても、HCLには届かないだろうということで英語で書いたのです。

それでも、私のブログの読者の大半は日本の技術者さまであろうということなので、日本語でも情報提供をしないといけないかな?と思い、前回の記事(Research results about CancelSendOnMissingKey)を日本語化したものをここに書きます。
英語が堪能な方にとっては、同じことの繰り返しになりますので、この記事はスルーしていただいてかまいません。

では、始めましょう・・・


コードアシスタントには出てくるけど、ヘルプの記述がないものがいくつかあります。今日はその中の一つであるNotesSessionクラスのCancelSendOnMissingKeyプロパティについて調べた結果を書いていきます。

1.構文

コードアシスタントを使うことでメソッドやプロパティの構文が表示されます。
コードアシスタントによる構文の確認
これによると、このプロパティの構文は次のようになりそうです。
データ型Boolean
取得する場合flag = notesDocument.CancelSendOnMissingKey
設定する場合notesDocument.CancelSendOnMissingKey = flag
有効な値True or False


2.デフォルト値

これはプロパティなので、デフォルト値があるはずです。
データ型は構文のところで説明したとおり、Boolean型ですから、デフォルト値はTrue もしくはFalseのどちらかになります。
また、NotesDocumentクラスのプロパティなので、Notes文書についても考慮する必要があります。
新規文書の場合と既存文書の場合です。
*厳密に言えば、既存文書の場合、色々なパターンが存在しますが、ここでは単にすでに作成してある文書とだけにしておきます。
それぞれのデフォルト値はどうなっているのかについて調べてみましょう。
次のようなコードを作成しました。
Sub Click( Source As Button )
  On Error GoTo ErrProc
  
  Dim session    As New NotesSession
  Dim dbCurrent  As     NotesDatabase
  Dim vwMailSend As     NotesView
  Dim docNew     As     NotesDocument
  Dim docExist   As     NotesDocument
  
  Set dbCurrent  = session.CurrentDatabase
  Set vwMailSend = dbCurrent.GetView( "your view name" )
  
  Set docNew = dbCurrent.CreateDocument
  MsgBox docNew.CancelSendOnMissingKey, 0 + 64, "Default value for new document"
  
  Set docExist = vwMailSend.GetFirstDocument()
  MsgBox docExist.CancelSendOnMissingKey, 0 + 64, "Default value for existing document"
  
  Exit Sub
  
ErrProc:
  MsgBox _
  "Error Line:    " & CStr(Erl) & Chr$(10) & _
  "Error Number : " & CStr(Err) & Chr$(10) & _
  "Error Content: " & Error, _
  0 + 16, "Mail send test"
  
  Exit Sub
End Sub


これを実行した結果は次の通りです。
新規文書の場合
既存文書の場合
どうやら、デフォルト値は常にFalseのようです。

3.サンプル

では、この値をTrueに変更したら何が起きるのでしょうか?
プロパティの名前から、メール送信に関するものではないかと推測しています。
そこで、以下のようなサンプルを作ってみました。
Sub subMailSendTest
  On Error GoTo ErrProc
  
  Dim session    As New NotesSession
  Dim dbCurrent  As     NotesDatabase
  Dim vwMailSend As     NotesView
  Dim docNew     As     NotesDocument
  
  Set dbCurrent  = session.CurrentDatabase
  Set vwMailSend = dbCurrent.GetView( "vwMailSend" )
  
  Set docNew = dbCurrent.CreateDocument
  
  Call docNew.ReplaceItemValue( "Form", "Memo" )
  Call docNew.ReplaceItemValue( "Subject", "Created by LotusScript " + CStr(Now) )
  Call docNew.ReplaceItemValue( "SendTo", "Masahiko Miyo/EFFECT-FORCE )
  
  docNew.CancelSendOnMissingKey = True
  
  Call docNew.Send( False )
  
  Exit Sub
  
ErrProc:
  MsgBox _
  "Error Line:    " & CStr(Erl) & Chr$(10) & _
  "Error Number : " & CStr(Err) & Chr$(10) & _
  "Error Content: " & Error, _
  0 + 16, "Mail send test"
  
  Exit Sub
End Sub


実行してみたら、こんなエラーが出ました。
エラーが発生…
どうやら、メールを送信できないようにするようです。

ちなみに、この後、プロパティをTrueにしてからNotes文書を保存するというサンプルを作成・実行してみましたが、正常に保存できました。


4.使い方

上のサンプルで見たように、Trueにしておくと、メール送信が失敗します。
これを利用して、画面の入力チェックやビジネスロジックのチェックに使うと良いのではないでしょうか?
ただ、エラー番号が4000という一般的なエラー番号になっているので、その他のエラーとの切り分けがしづらいところです。
できれば、他のエラー番号を割り当ててほしいですね。


5.まとめ

サンプルではメール送信時のエラー判定用として使えそうだという話をしましたが、プロパティの名前からすると、正しい使い方とは言えなさそうです。
どなたか、この機能について知っていたら、是非教えてください。


それでは今日はこの辺で…









Notes/Dominoで困ったことがあれば、弊社にお問い合わせください。
HCL Masterの私が承ります!
お問い合わせはこちらから→Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

Research results about CancelSendOnMissingKey

When I write LotusScript in Domino Designer, there are some methods and properties that appear in Code Assistant but don't have help document.
I will write about research results one of them, that the CancelSendOnMissingKey property of the NotesSession class, in this time.

** In addition, this property is a function added in Version 10.


1.Syntax

As shown below to display to the syntax for methods and property by use Code Assistant.
code assistant
According to this, the property syntax is below.   
Data typeBoolean
To getflag = notesDocument.CancelSendOnMissingKey
To setnotesDocument.CancelSendOnMissingKey = flag
Legal ValuesTrue or False


2.Default value

Since this is a property, it has default value.
As described in the syntax, this property data type is boolean that the default value is true or false.
Also, this is a property of NotesDocument class, then that must be also considered by about Notes document.
It is the case of new and exist one.
Let's examine about default value both new and exist one.
I created the sample code below.

Sub Click( Source As Button )
  On Error GoTo ErrProc
  
  Dim session    As New NotesSession
  Dim dbCurrent  As     NotesDatabase
  Dim vwMailSend As     NotesView
  Dim docNew     As     NotesDocument
  Dim docExist   As     NotesDocument
  
  Set dbCurrent  = session.CurrentDatabase
  Set vwMailSend = dbCurrent.GetView( "your view name" )
  
  Set docNew = dbCurrent.CreateDocument
  MsgBox docNew.CancelSendOnMissingKey, 0 + 64, "Default value for new document"
  
  Set docExist = vwMailSend.GetFirstDocument()
  MsgBox docExist.CancelSendOnMissingKey, 0 + 64, "Default value for existing document"
  
  Exit Sub
  
ErrProc:
  MsgBox _
  "Error Line:    " & CStr(Erl) & Chr$(10) & _
  "Error Number : " & CStr(Err) & Chr$(10) & _
  "Error Content: " & Error, _
  0 + 16, "Mail send test"
  
  Exit Sub
End Sub


The result of doing is below.
result of new document
result of exist document
Apparently, the default values always may be False.

3.Sample code

What will happen if it will be changed this value to True?
I guess from the property name that it is related to sending email.
So, I created sample code below.
Sub subMailSendTest
  On Error GoTo ErrProc
  
  Dim session    As New NotesSession
  Dim dbCurrent  As     NotesDatabase
  Dim vwMailSend As     NotesView
  Dim docNew     As     NotesDocument
  
  Set dbCurrent  = session.CurrentDatabase
  Set vwMailSend = dbCurrent.GetView( "vwMailSend" )
  
  Set docNew = dbCurrent.CreateDocument
  
  Call docNew.ReplaceItemValue( "Form", "Memo" )
  Call docNew.ReplaceItemValue( "Subject", "Created by LotusScript " + CStr(Now) )
  Call docNew.ReplaceItemValue( "SendTo", "Masahiko Miyo/EFFECT-FORCE )
  
  docNew.CancelSendOnMissingKey = True
  
  Call docNew.Send( False )
  
  Exit Sub
  
ErrProc:
  MsgBox _
  "Error Line:    " & CStr(Erl) & Chr$(10) & _
  "Error Number : " & CStr(Err) & Chr$(10) & _
  "Error Content: " & Error, _
  0 + 16, "Mail send test"
  
  Exit Sub
End Sub


When I ran it, it is displayed the following error.
Error occured

Apparently, that prevents me from sending mail.

incidentally, after that I created the other sample code.
The code is change to property to True and save the Notes document.
When I ran it, it was saved successfully.


4.How to use this property

As checked above, if set True to property to fail sending an email.
It is better idea to use this property for input check on screen or business logic check.
But Error number is 4000 of general error number, it is not easier to distinguish it from other errors.
I want to that is should to assign another error number.


5.Conclusion

In the sample code I mentioned that it could be used for error distinguish it when sending email.
But maybe it is not correct how to use.
Please teach me if anyone knows about this function.






That’s all. Thank you for reading.




Notes/Dominoで困ったことがあれば、弊社にお問い合わせください。
HCL Masterの私が承ります!
お問い合わせはこちらから→Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

2020年2月6日木曜日

About "Profiling agents and Web services"

** This blog is my first English text. I'm sorry if there is a mistake in the translation.

I was reading Help on Domino Designer and found unfamiliar features.
That is "Profiling agents and Web services". It seems like a feature introduced in version 7.0, but I never knew it.
As a result of reading the document, I became interested in this feature, so I will write about the results of various investigations.

1.Overview

The profiling agents feature reports on the following when an agent is written in LotusScript.
* The method of the Domino object used
* How many times was called
* Performance (execution time)

The following figure is an actual screenshot of profile results.

profile results

In this way, it is described separately for each object class and method.
The table is sorted in descending order of execution time, making it easier to understand where bottlenecks are in your programs.

you would be better to read help document this URL.
* but this site owner is IBM, you won't know when it will disappear.
Profiling agents and Web services

if you want to Japanese information, you would be better to read this site.
Lotus Domino 7エージェントプロファイル機能のご紹介



2.How to check profiling agents by agent’s property.

I will describe how to actually settings and check.

At first, the case of the agent.
(1) Open the agent written by LotusScript in Domino Designer.
(2) Open the agent properties.
(3) Check "Profile this agent" in Options.
Agent property
(4) Save the agent.
(5) Next, execute agent.
  * There is no problem with manual or scheduled execute.
  * The Notes application can be on the Domino server or on the Notes client.
(6) Right-click the agent in the agent view.
(7) Click '"View Profile Results" menu.

It is displayed the agent profiling results with this.
Profile results is saved as profile document in the Notes application. For that reason, only last exection results is saved. if you want to keep a record every time, save screen shots or copy and paste to Word documents.


3.How to check profiling agents by LotusScript.

The profile results can also be confirmed using LotusScript.
According to the help documentation, it is written to use GetPerformanceDocument of NotesAgent class.
Specifically:
using NotesAgent.GetPerformanceDocument, get profile document.
and, using NotesUIWorkspace.EditDocument, it displays on the screen.



4.About Extension feature

Actually, this feature enhanced in version 8.5.
It has been added method GetProfilerResults StartProfiler and StopProfiler into NotesSession class.
It can be profiling LotusScript code other than agents using these functions. you wrote the code directly script library or form, but isn't it working so slowly and not working as expected? It will be effective when used in such cases.
This profile document is saved as normal document in the Notes applications, not as a profile document.
For that reason, you can confirm the difference for every execute.


5.Sample code

I created sample code.
please refer to this code and execution results below.
There are 2 samples.
One is how to check agent's profile documents, the other one is about enhanced feature in version 8.5.

Sub Click(Source As Button)
  On Error Goto ErrProc
  
  Dim session As New NotesSession
  Dim db      As     NotesDatabase
  Dim agent   As     NotesAgent
  Dim doc     As     NotesDocument
  Dim uiws    As New NotesUIWorkspace
  
  Set db    = session.CurrentDatabase
  Set agent = db.GetAgent( "agtAgentAnalysisTest" )
  Call agent.Run()
  
  'Acquisition of profile result document and screen display
  Set doc = agent.GetPerformanceDocument()
  Call uiws.EditDocument( False, doc )
  
  Exit Sub
  
ErrProc:
  Msgbox _
  "Error Line: "     & Cstr(Erl) & Chr$(10) & _
  "Error Number: "   & Cstr(Err) & Chr$(10) & _
  "Error Contents: " & Error, _
  0 + 16, "Agent Profile Test"
  
  Exit Sub
End Sub


Sub Click(Source As Button)
  On Error Goto ErrProc
  
  Dim session    As New NotesSession
  Dim dbProfile  As     NotesDatabase
  Dim docProfile As     NotesDocument
  Dim db         As     NotesDatabase
  Dim doc        As     NotesDocument
  
  Set dbProfile  = session.GetDatabase( "ServerName", "Notes Application Path", False )
  Set docProfile = dbProfile.CreateDocument()
  Call session.GetProfilerResults( docProfile, "Program Profile Result" )
  Call session.StartProfiler()
  
  '--- Code to be profiled---
  Set db      = session.CurrentDatabase
  Set doc     = db.CreateDocument
  
  Call doc.ReplaceItemValue( "Form", "fmMainTopic" )
  Call doc.ReplaceItemValue( "Subject", " Document created by agent " + Cstr(Now) )
  Call doc.Save( True, True, True )
  '--- Code to be profiled---
  
  Call session.StopProfiler()
  Call docProfile.Save( True, True, True )
  
  Exit Sub
  
ErrProc:
  Msgbox _
  "Error Line: "     & Cstr(Erl) & Chr$(10) & _
  "Error Number: "   & Cstr(Err) & Chr$(10) & _
  "Error Contents: " & Error, _
  0 + 16, "Program Profile Test"
  
  Exit Sub
End Sub




6.Conclusion

Very few people around me knew about this feature.
Why?
I think it is because of the help documents and Domino Designer features.
Because the LotusScript mentioned above is not linked between Domino Desiger and help documents.
NotesSession.GetProfilerResults NotesSession. StartProfiler and NotesSession.StopProfiler appear in contents assistant, but they don't have a help document.

NotesSession class code assistant

NotesSession class help documentation
Conversely, NotesAgent.GetPerformanceDocument has a help documents, but don't appear in assistant contents.

GetPerformaceDocument method help documentation

NotesAgent class content assistant

This makes it difficult to use them correctly.
I hope that HCL will fix the documentation and modify Domino Designer.




That's all. thank you for reading.









Notes/Dominoで困ったことがあれば、弊社にお問い合わせください。
HCL Masterの私が承ります!
お問い合わせはこちらから→Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

2020年1月24日金曜日

フレームに表示する内容を動的に変更してみる

こんにちは。2020年もHCL Masterになってしまいました。
昨年(2019年)はコミュニティ活動はほぼできてなかったというのに・・・

なので、今年は少しブログにも力を入れようかと思います(思うだけならいいかな?)。
1月ももう1週間で終わろうという時期ですが、2020年初ブログといきます。

今日は、フレームセットのちょっとしたテクニックです。
フレームセットを使ったNotesアプリケーションを普段から開発している方にはわかりきった話かと思いますが、あまり紹介されていないようなのであえて書きます(自分自身の備忘録でもあります)。


通常、フレームセットはフレームを区切って、それぞれのフレームに何を表示させるのかを選択します。
よくあるフレームセットはこんな感じでしょうか。
フレームセットのサンプル

左側にアウトライン用のフレーム、右上がビュー表示用のフレーム、右下はプレビュー用のフレームです。
それぞれのフレームに何を表示するかはプロパティ画面で設定します。
下図は、「(一般用アウトラインページ)」というページを表示させるように設定したものです。
「種類」では"名前付き設計要素"、"ページ"を選択して、
「値」は黄色のフォルダアイコンをクリックして、設計要素を選択しています。
フレームのプロパティ

しかし、ここでよくプロパティを注目してみると・・・
「値」を設定する箇所に「@」というアイコンがあります。
ここをクリックしてみましょう。
名前付き要素の式の編集

なにやら新しいダイアログが表示されました。
「名前付き要素の種類についての式」には"Page"、「名前付き要素の名前についての式」には"pgOutlineGeneral"と書かれています。
※英語になっているのは別名を設定しているためです

はい。ここは、フレームに表示したい内容を式で記述できるのです。
となれば、ここに条件式を記述することでフレームに表示する内容を動的に変更できるのではないでしょうか?

やってみましょう。
式を修正

内容はこのようなものです。
[Admin]ロールを付与されている場合とそうでない場合とで表示するページを変更しています。
@If(@IsMember("[Admin]";@UserRoles);"pgOutlineAdmin";"pgOutlineGeneral")

これでフレームセットを保存して、Notesアプリケーションをフレームセットから開いてみます。
[Admin]ロール保有時
 こちらは、[Admin]ロールを付与されているユーザーが開いた場合です。

一般ユーザーが開いた場合
続いて[Admin]ロールが付与されていないユーザーが開いた場合です。
一目瞭然ですね。左側のフレームの部分が異なっています。

これを応用すると、
設定文書を作成しておき、その値によって表示させるフレームを変更したりすることができます。
環境設定文書の値によって、表示するフレームを変更している

これは、弊社のNotesアプリケーションの画面ですが、環境設定文書の値によってフレームに表示する内容を変更しています(色違いのページを表示するようにしています…実際にはもう少し複雑なことをしています)。

また、クライアントのタイプによって表示するフレームそのものを変更するなんてこともできるでしょう。
そう、HCL Nomadで使う場合にも応用できる技になっています。

そうすれば、すでにあるフレームセットはそのまま使えて、Nomad用に新しくフレームセットを作成すれば、PCで見たときはきれいだけどモバイルだと・・・のように悩む必要もありません。

Notes/Dominoはいろいろな場面で使われることを想定して実装されてきたものです。
既存の機能を使いこなせば、10年以上前に作成されたアプリケーションでもきれいに生まれ変わらせることはできるでしょう。

さぁ、あなたもチャレンジ!




というところで今日はこの辺で・・・





Notes/Dominoで困ったことがあれば、弊社にお問い合わせください。
HCL Masterの私が承ります!
お問い合わせはこちらから→Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

2019年11月17日日曜日

対称クラスタの設定と動作確認

皆さん、こんにちは。Dominoしてますか?
現在、HCL Domino V11のベータ版が公開されていて、それを使い倒しているのではないでしょうか?
かくいう私も・・・
すみません。あまり触れていません。というのも、V10の新機能をすべてきちんと使いこなせていないからです。
V10がわかってないのに、V11なんてわかるだろうか?いや、わかるはずもなかろう!

ということで、V10の新機能のうち、積み残していたものを評価してみました。
ブログ記事にそのまま載せるには少々わかりにくいだろうということで、SlideShareに資料を載せましたので、こちらでも紹介します。


今回、評価したのは「Symmetric cluster」です。日本語訳にすると「対称クラスタ」。・・・ですが、実は日本語の正式名称はありません。ドキュメント(ヘルプ)が日本語化されてないのです。
なので、英語のまま「Symmetric cluster」でもいいですし、カタカナ読みした「シンメトリカルクラスタ」でもいいですし、日本語訳した「対称クラスタ」でもいいでしょう。
いずれも同じことを意味するものなので覚えておきましょう。


資料はこちらから参照できます。




資料の最後でも触れていますが、いくつか未確認の項目があります。
これらを評価した方は是非、結果を教えてください。


それでは今日はこの辺で・・・






Notes/Dominoで困ったことがあれば、弊社にお問い合わせください。
HCL Masterの私が承ります!
お問い合わせはこちらから→Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ

2019年10月7日月曜日

NDS2019へご参加いただき、ありがとうございました

皆さん、こんにちは。
なんと、10月になりました。何もしてない(ことはないけど・・・)のに、今年も残り3ヶ月を切ったとは驚きです。

さて、9月半ばから3週間にわたり、全国5カ所で開催したNDS2019が終わりました。
弊社もシルバースポンサーということで参加いたしました。

弊社のセッションは15分と短めでしたので、なかなか伝えきることが出来ずに申し訳ありませんでした。
約束通り、スライドを公開いたしますので、少しでも気になった方はご覧いただければ幸いです。





そこで、NDS2019のフォローアップセミナーということでケートリック様と合同でWebセミナーを開催することにいたしました。
セミナーの概要とお申し込みは以下のサイトから出来ます。
NDS2019フォローアップ合同セミナー

NDS2019では語りきれなかったことをたっぷりと話しますので、是非お申し込みください!



また、私はIBM Champion改め、HCL Masterとしても参加いたしました。
HCL Masterの日本人チームでHCL Nomad用のアプリを作成、コンテストへ応募しました!という内容のものです。
スライドを公開しますので、こちらも参照していただければ幸いです。







それでは今日はこの辺で・・・





Notes/Dominoで困ったことがあれば、弊社にお問い合わせください。
HCL Masterの私が承ります!
お問い合わせはこちらから→Lotus Notes/Domino カスタマイズとセキュリティ強化 - 株式会社エフ