Friday, 17 November 2017

Replay Webinar IBM JUMP Session: IBM Cloud Email Statistics


On November 15 there was a very interesting IBM Jump Session, IBM Cloud Email Statistics. JUMP stands for Join, Understand, Master and Participate.
The presentation, audio and video are now available on the IBM Support website.

Content
IBM Cloud Email Statistics is a SaaS offering, providing customers with a variety of data insights on the long term use of their IBM Cloud eMail services (IBM Verse, SCN) through an intuitive graphical dashboard.
In this session you will be introduced to the offering, how it is structured and works as well as the different types of Analytics and reports available.


IBM Enterprise Social Solutions Support wants to help you take full advantage of your products. Join IBM Enterprise Social Solutions Support for their Open Mic Webcast series as technical experts share their knowledge and answer your questions. These webcasts are designed to address specific topics and provide an in-depth and focused technical exchange in a convenient online webcast format. For more information about the IBM Open Mic webcasts, visit the IBM Collaboration Solutions Support Open Mics page.

More information: IBM JUMP Session - IBM Cloud Email Statistics 
See also: IBM Cloud Email Statistics - Access a variety of data insights on the long term use of your IBM Cloud eMail services

Wednesday, 15 November 2017

IBM Traveler 9.0.1.20 Available for Download on IBM Fix Central including Technote Support Feature Pack 10


Today IBM released IBM Traveler 9.0.1.20.
IBM Traveler 9.0.1.20 is a maintenance release that provides new features and APAR fixes for the IBM Traveler server.
IBM Traveler 9.0.1.20 does not include a database schema update. However, if upgrading from a version prior to 9.0.1.15 and running MS SQL Server, or if upgrading from a version prior to 9.0.1.16 and running DB2 Server, action may be required if you manually manage your database schema (this is not common).

Important: Due to some header file changes in Domino 9.0.1 FP10 customers who are upgrading their Traveler environment to Domino 9.0.1 FP10 should first upgrade Traveler to 9.0.1.20 or later to ensure maximum compatibility. Library differences were introduced in Domino 9.0.1 FP10. This only effects the Domino server that the Traveler environment runs on, Domino mail servers that do not host Traveler services can be at any supported level. IBM Traveler 9.0.1.20 and later releases are compatible with the Domino 9.0.1 FP10 Library changes.

For more information: IBM Traveler 9.0.1.20 Server Release Documentation
Download link IBM Fix Central: IBM Traveler 9.0.1.20

Quick Tip: Read Text File - Compare View Values - Send Email Using LotusScript


Today I was asked if it was possible using LotusScript to read a Text File, which was stored in a specific Folder on the system, subsequently perform a check, based on the Values in the Text File, or a Value in the Text File is present in a specific View in the NSF and finally place the found Values in a Folder in the NSF and send an email with the found Values in the Folder to a specific email address.
The above can be solved easily by using LotusScript.

Agent Read Text File
To solve the above question I first created an Agent to read the Text File using LotusScript, compare the Values of the Text File with te Values in the specific View in the NSF and finally place the found values in a Folder in the NSF.

%REM
Agent CheckValues In View with Values in Text File
%END REM
Option Public
Option Declare

Use "General" (= Name Script Library with the Email Function)
Dim session As NotesSession
Dim db As NotesDatabase
Dim dc As NotesDocumentCollection
Dim vc As NotesViewEntryCollection
Dim doc As NotesDocument
Dim vw As NotesView
Dim fc As NotesView
Dim filenum As Integer
Dim filename As String
Dim conStatus As Variant
Dim strLineValue As String
Dim checkId As Variant

Sub Initialize
Set session = New NotesSession
Set db = session.CurrentDatabase

filenum% = FreeFile()
filename$ = "C:\Temp\values.txt"
Open filename$ For Input As filenum%
Set vw = db.GetView("($ViewName)") 'Lookup View with the Values in the NSF

'empty Folder with previous found values
Set fc = db.GetView("FolderName")
Set vc = fc.AllEntries
Call vc.RemoveAllFromFolder("FolderName")

While Not EOF(filenum%) ' Read Text File until End of File
Line Input #filenum%, strLineValue$
Set doc = vw.GetFirstDocument
Do Until doc Is Nothing
checkId = doc.getitemvalue("FieldName") 'Programmatic Name Column Value in NSF View = the first sorted column in the View = Field to Compare with Values in Text File
If strLineValue = CStr(LCase$(checkId(0))) Then
MsgBox "Found Value: " & strLineValue & +" SomeFieldName: " + doc.SomeFieldName(0)
Call doc.PutInFolder("FolderName")
End If
Set doc = vw.Getnextdocument(doc)
Loop
Wend
Close filenum%

Call sendEmail(doc)

End Sub

Function Send Email
Next, based on the found Values in the Folder I created a LotusScript function, placed in a Script Library General, to send an Email with the found values to registered persons in a Field NotificationMembers on a Profile Form in the NSF.

Function sendEmail(doc As NotesDocument) As Boolean
Dim s As NotesSession
Dim db As NotesDatabase
Dim vdoc As NotesDocument
Dim pdoc As NotesDocument
Dim rtitem As NotesRichTextItem
Dim i As Integer
Dim view As NotesView

Set s = New NotesSession
Set db = s.CurrentDatabase
Set view = db.GetView("FolderName")
Set doc = New NotesDocument(db)
Set pdoc = db.Getprofiledocument("ProfileForm")
Dim datetim As New NotesDateTime( Now() )
i=0
'- prepare mail
doc.Form = "Memo"
Set vdoc = view.GetFirstDocument

If vdoc Is Nothing Then
Exit Function
Else

While Not(vdoc Is Nothing)

'- Set recipient
doc.Principal = "SomeName"
doc.~$AltPrincipal = "SomeName"
doc.From = "SomeName"
doc.SendTo = pdoc.NotificationMembers
doc.Subject = "Found Values in Text File on" + " " + CStr(Now())

Set rtitem = New NotesRichTextItem( doc, "Body" )
Call rtitem.AddNewline(1)
Call rtitem.AppendText(vdoc.FieldName(0)) 'Programmatic Name First Column in Folder
i = i + 1
Set vdoc = view.GetNextDocument(vdoc)
Wend
'- send mail
Call doc.Send(False)
End If
End Function

A nice and easy solution to read a Text File, compare the Values in the Text Field with the Values in a View, place the found Values in a Folder and Send an EMail to specific users.

Tuesday, 14 November 2017

Update Readers and Authors Fields Using LotusScript - Adding New Values


During the past months I have worked a lot with LotusScript. One of the questions I came accross was how to add a value to a Readers or Authors field in the UI document using LotusScript. First a little background information. In daily practice, I make extensive use of Userroles in the Access Control List which are assigned to specific User Groups in the Access Control List. Based on these Userroles document access is granted based on these Userroles in the Authors and Readers Fields in the specific document.
Basic idea is to grant Edit or Read Access to specific User Groups depending on where the document is located within a certain workflow. More on that in one of the next blog posts.
In this specific case there was a value missing whereby certain groups of users were unable to read the documents.
In the example below my solution, in which the Readers Field including the new Value is stored back to the UI document using LotusScript.
Note: In the example below I get the values (uidoc.Document.GetItemValue) of two fields, Username and OrganizationalUnit, from the selected UI document in a View and add these values to a Readers Field.
The LotusScript Agent with the following code I use on selected documents in a Notes view to update the Readers (or Authors) fields.


Sub Initialize
Dim ws As New NotesUIWorkspace
Dim uidoc As NotesUIDocument
Dim fieldValue As Variant
Dim fieldValue2 As Variant

' check if document is selected
If Not ws.CurrentDocument Is Nothing Then

' document is selected
Set uidoc = ws.CurrentDocument' init
End If

fieldValue = uidoc.Document.GetItemValue("FIELDNAME1")
fieldValue2 = uidoc.Document.GetItemValue("FIELDNAME2")
Dim item As NotesItem
Dim readersList(4) As String
readersList(0) = "[USERROLE]"
readersList(1) = fieldValue(0) '@UserName
readersList(2) = "[USERROLE]"
readersList(3) = "[" & fieldValue2(0) & "Reader]" 'OrganizationalUnit Reader(s)
readersList(4) = "[USERROLE]"
readersList(4) = "[NEWUSERROLE]" ' New Value

'readers
If uidoc.Document.HasItem("Readers") Then
Set item = uidoc.Document.GetFirstItem("Readers")
Call item.Remove
End If
Set item = New NotesItem(uidoc.Document, "Readers", readersList, READERS)

' save document
Call uidoc.Document.Save(True, True)

End Sub

A quick and easy solution using LotusScript.

Monday, 13 November 2017

A Brief Reprieve - IBM Champion Nomination Period Extended


The period for the nominations for IBM Champion has been extended until 30 November! This is great news. The extension offers everyone the opportunity to submit their nominations for which the original deadline was too short. For me, this means that I can submit two more nominations for which I had no time left. Just great! Thanks for this opportunity. Read the blog post by Libby Ingrassia for more information.
See also my previous blog post, Become an IBM Champion - My Thoughts And Considerations and My IBM Champion Nominations for IBM Collaboration Solutions - Only a Few Days Left!

So take this opportunity to nominate an influencer of IBM Social Business now. Nominations for the 2018 IBM Champion program will be accepted through November 30! Say thank you, like I did, and Nominate an IBM Champion! If you need information about someone you want to nominate then take a look at his or her LinkedIn profile. Concerning the nomination form, just fill in what you know and submit the form!


The IBM Champion program recognizes innovative thought leaders in the technical community -- and rewards these contributors by amplifying their voice and increasing their sphere of influence. An IBM Champion is an IT professional, business leader, developer, or educator who influences and mentors others to help them make best use of IBM software, solutions, and services.

If you think that you would like to be nominated as IBM Champion please contact me. Let me know what you contributed to the community last year and I will fill out a nomination form.

Nominate an IBM Champion : IBM Champion Program
Nomination Form IBM Champion : Nominate an IBM Champion
More information about the IBM Champion Program: IBM developerWorks - Champions

Sunday, 12 November 2017

Replay Webinar IBM JUMP Session: IBM Domino Applications on Cloud


On November 8 there was a very interesting IBM Jump Session, IBM Domino Applications on Cloud. JUMP stands for Join, Understand, Master and Participate.
The presentation, audio and video are now available on the IBM Support website.

Content
IBM Domino Applications on Cloud is a subscription service that offers IBM hosted solution for Domino Apps over IBM Bluemix Cloud. The service offers a structured and planned migration process, avoiding business disruptions.
In this session you will be introduced to the offering, how it is structured and works including the pre-requisites, configurations and start-up options.

Thursday, 9 November 2017

My IBM Champion Nominations for IBM Collaboration Solutions - Only a Few Days Left!


This week is the final week to nominate, among others, an IBM Champion for IBM Collaboration Solutions (ICS). In this blog post I will not give a complete summary of my IBM Champion nominations but only of those who have made, in my opinion, a 'significant contribution' to the community during the past year.
As I mentioned in my previous blog post, Become an IBM Champion - My Thoughts And Considerations, it was not as easy as the last few years.

This year I looked and interpreted the terms to become an IBM Champion slightly different than over the past few years. I mainly reviewed the contributions to the community this year from the point of quality and not only on quantity or visibility. Significant contributions can, in my humble opinion, consist of a relatively small amount of 'visible' contributions which, however, exceeds the rest based on quality. Partly based on this new look and interpretation I nominated this year as a new ICS Champion Cameron Gregor for his high quality contributions to the community like the Swiper Official Version 2 Release and the BuildXPages Deployment Automation Tools – v1.0.0 among his other great blog posts and contributions. There were several high quality contributions this year within the ICS community. As a final example I nominated John Jardin for his outstanding Istio blog series on Beelding Code in addition to his other contributions to the IBM Notes Domino and XPages community. So, in my opinion, if I am as objective as possible looking back on the past year, the following people were this years greatest influencers regarding IBM Social Business - Collaboration Solutions.


My IBM Champion Nominations for IBM Collaboration Solutions (ICS).

Oliver Busse Paul Withers Frank van der Linden
Matteo Bisi John Jardin Cameron Gregor

Hopefully this blog post gives some inspiration to submit a IBM Champion nomination if you have not already done so. Why, because they deserve it!
So take the opportunity to nominate an influencer of IBM Social Business now. Nominations for the 2018 IBM Champion program will be accepted through November 13th.
Say thank you, like I did, and Nominate an IBM Champion!
If you need information about someone you want to nominate then take a look at his or her LinkedIn profile. Concerning the nomination form, just fill in what you know and submit the form!


The IBM Champion program recognizes innovative thought leaders in the technical community -- and rewards these contributors by amplifying their voice and increasing their sphere of influence. An IBM Champion is an IT professional, business leader, developer, or educator who influences and mentors others to help them make best use of IBM software, solutions, and services.

If you think that you would like to be nominated as IBM Champion please contact me. Let me know what you contributed to the community last year and I will fill out a nomination form.

Nominate an IBM Champion : IBM Champion Program
Nomination Form IBM Champion : Nominate an IBM Champion
More information about the IBM Champion Program: IBM developerWorks - Champions