Отправляет email-рассылки с помощью сервиса Sendsay

Бюллетень "Lotus Notes CodeStore"

  Все выпуски  

Step-by-step instructions for installing Notes 8.5.x for Mac


Рассылку ведет: Программист на Lotus NotesLotus CoderВыпуск No 296 от 2010-02-12
рассылка о программировании на Lotus Notes/Domino
Обсуждения на форумах, блогах. Примеры программного кода на LotusScript,@formula, Java

рассылка:выпускархивлентаблогсайт

Бюллетень "Lotus Notes CodeStore" Выпуск 13 от 21.04.2008

comp.soft.prog.lotuscodesrore

CodeStore. Примеры кодов

Еще примеры:
Больше кодов на сайтах:

Форумы.Свежи темы и обсуждения

Всем привет!
...
Интересные темы:
Список форумов:

Tips. Советы

This is a Redbook Wiki, not just a Redbook publication, so if you have something to add, you can. The Table of Contents is in place, along with some articles, but it looks like there are holes that need to be filled.

Read | Permalink
Andre Guirard says that, though Notes may lack a "reverse case" function, it shouldn't be hard to write some code to change case. To prove his point, he's posted a couple of functions in LotusScript.

Read | Permalink


STRUGGLING WITH EXPORTING NOTES DATA TO SPREADSHEETS? NO MORE!
Try IntelliPRINT, The world's leading Reporting, Dashboards, and Analysis solution for Notes & Domino

  • Don't spend unproductive time maintaining different versions of the same spreadsheet
  • Preserve data integrity and security in multi-user environments
  • Create reports in minutes INSIDE Notes
  • Get freedom from iterative report requests, deliver self-serve capabilities

Experience Reporting, Dashboards, and Analysis INSIDE Notes!

Try IntelliPRINT NOW!

Ghosts can haunt more than just the attic. This article from Ytria Labs discusses those "deleted" documents that reappear when you lease expect them and ways of getting rid of them permanently.

Read | Permalink
Keith Brooks found an SSI bug, the server didn't want to work with Firefox, that's apparently been around for a while. He's posted some information on the problem and the fix in case you've run into the problem.

Read | Permalink


NEW! LEARN NOTES AND DOMINO 8 AT YOUR PLACE AND PACE!
Try a free course at www.tlcc.com/dompower8

Sean Cull has been working on an XPages wiki product for OpenNtf and wanted to add Google Analytics. He's posted code and screen shots on how you can add Analytics to your templates.

Read | Permalink
Gregg Eldred's users were being denied access to their files after their mail was moved to a new hard drive. After some research he discovered what was locking the files. He's posted several links to help you out if you run into the same issue.

Read | Permalink
This is a list of articles, fixes, and more, on Lotus Sametime that have been posted recently. The list includes links to articles, Fix Central, and more.

Read | Permalink

I have a bit of code in a WebQueryOpen agent, which loops a field called "Members", which stores a list of Notes-style user names and prints to the browser their name in a formatted style. The code is very simply:

Set item = web.document.GetFirstItem("dspMembers") Forall v In web.document.GetFirstItem("Members").values Call item.AppendToTextList( "<li>"+GetUserDetails( Cstr(v), "Formal" ) +"</li>")
End Forall

No prizes for working out what those does. For each member listed in the document it adds a bullet point to the displayed list of members. How the name of the user is displayed is governed by a separate function.

This GetUserDetails() function is a bit like an extended @NameLookup for LotusScript. I keep it in my "CommonRoutines" Script Library and it's accessible from all my agents. It looks like this: 

Function GetUserDetails(username As String, detail As String) As String Dim uname As NotesName Dim userDoc As NotesDocument Dim userView as NotesView Set uname = New NotesName(username) If web.directory.IsOpen Then 'web.directory is "names.nsf" Set userView = web.directory.getView("($VIMPeople)") If Not userView Is Nothing Then Set userdoc = userView.GetDocumentByKey(uname.Abbreviated, True) If Not userdoc Is Nothing Then If detail = "Long" Then GetUserDetails = userdoc.Salutation(0) _ + " " + Left(userdoc.FirstName(0), 1) + " " + userdoc.Lastname(0) _ +", " + userdoc.CompanyName(0) + "<br />"+userdoc.OfficePhoneNumber(0) _ +"<br /><a href=""mailto:"+userdoc.MailAddress(0)+""">"+userdoc.MailAddress(0)+"</a>" Elseif Lcase(detail) = "formal" Then GetUserDetails = userdoc.Salutation(0) + " " + Left(userdoc.FirstName(0), 1) + " " + userdoc.Lastname(0) Elseif Lcase(detail) = "fullname" Then GetUserDetails = userdoc.Salutation(0) + " " + userdoc.FirstName(0) + " " + userdoc.Lastname(0) Else 'Unknown format. Must want field value? If userdoc.HasItem(detail) Then GetUserDetails = userdoc.GetItemValue(detail)(0) Else GetUserDetails = uname.Abbreviated End If End If Else GetUserDetails = uname.Abbreviated End If Else GetUserDetails = uname.Abbreviated End If Else GetUserDetails = uname.Abbreviated End If End Function

The idea is that, given a name like Jake Howlett/ROCKALL it uses the address book to return a name in the form Mr J Howlett, Rockall Design ltd, Nottingham. Or you can just use it to get a field's value by name. If for any reason it can't find the user document or work out what to return it just returns the user name in abbreviated form.

It all works well, but, after not very long I noticed the WQO agent which used it was taking longer and longer to run. The slowness of the WQO was directly proportional to the number of Members. Most of you can probably see why. If not, then the title of this page should give you a clue.

The problem with my code is, of course, that I'm repeatedly calling the getView() method. Consider this from Julian's list of preformance tips:

If you need to use a reference to a view multiple times in your code, get the view only once and share the reference (either using a global or static variable, or by passing a NotesView object as a parameter in functions/subs/methods). Accessing views using getView is a very expensive operation

It turned out that each call to web.directory.getView("($VIMPeople)") was taking 0.3s. For 100 members that means it takes way, way too long to open. Remember no web page should take longer than 7s to open!

So, taking Julian's advice I turned the user view in the directory in to a global variable as part of the WebSession class. Agents that were taking 20 seconds or more to load are now taking less than one!

I had no idea this was such bad practice. More than ten years with Notes and I'm still learning the basics...

Click here to post a response

Еще советы:
Смотри советы на сайтах:

Блоги. Что обсуждают и пишут

Author: Philip Storry
Tags: fixup compact domino server cluster clustering
Idea:
When a server that is a member of a cluster performs consistency checks on a database, or compacts a database, it should automatically mark the database as Out of Service in the Cluster Database Directory for the duration of the operation.
 
(In the case of compact, it will only happen during copy-style compacts.)
 
This will allow users opening the database to fail over to another cluster member.  It also means that compact won't be terminated by users opening the database halfway through the operation.
 
Ideally this behaviour would be automatic, but could be overridden with a command line option on fixup/compact if needed.
 
If a database is already marked as Out of Service, then fixup/compact should not mark it as available at the end of the operation.
It may also be a good idea to control this behaviour with an INI  variable - MarkOutOfServiceDuringMaintenance={On|Off} - in case an Administrator wants to override this behaviour.
 

Author: Miel Miel
Tags: casino on line
Idea:
We'd like to provide reusable XPage controls to build apps for smartphones. As a starting point we've done a very simple mobile app for OpenNTF: http://m.openntf.org Here is a quick demo on an Android phone: Since it's hard to really see ...
Еще записи:
Интересные блоги специалистов:

Статьи и Документация

This document shows the step-by-step install of Notes 8.5 on the Macintosh platform.
How does the Lotus Notes TraveCompanion provide decrypted email?
Web Doc, published: Wed, 10 Feb 2010

Welcome to the IBM® Redbooks® wiki on using Best Practices for Domino 8.5 Web Application Development. IBM Lotus® and IBM Redbooks publications have partnered together to create this wiki content that explains best practices and approaches for developing Web applications using Domino 8.5.1.

In Lotus Notes, what does the option, "$SignatureStatus=2," indicate in the Document Properties of a received signed memo?
For your Lotus Notes 8.0.1 client, you have enabled the Client Single Logon function. After you change your password in the Notes client, you are not prompted to change the operating system password. Therefore, the two passwords are no longer synchronized
This posting captures known omissions and inaccuracies in the Alloy documentation available at http://publib.boulder.ibm.com/infocenter/domhelp/v8r0/index.jsp.
There are several ways to run an agent in Lotus iNotes. Results of an agent can be put into a NotesVar: {{{
Также почитатай:
Найти документацию можно на сайтах:

В избранное