Public Function GetEmailCreatedDate(doc As NotesDocument) As String ' returns a date the document/email should be considered created ' written by Mike Mortin 20080625 If doc.DeliveredDate(0) <> "" Then GetEmailCreatedDate = doc.DeliveredDate(0) Elseif doc.PostedDate(0) <> "" Then GetEmailCreatedDate = doc.PostedDate(0) Else GetEmailCreatedDate = doc.Created End If End Function
Public Function GetDocFromDb( db As NotesDatabase, viewName As String, key() As Variant, exact As Boolean ) As NotesDocument ' returns the first doc based on a search key ' written by Mike Mortin Dim view As NotesView ' get the view Set view = db.GetView(viewName) ' get the doc from the key Set GetDocFromDb = view.GetDocumentByKey(key, exact) End Function
Function GetCategoryDocsFromDb( db As NotesDatabase, viewName As String, category As String ) As NotesViewNavigator ' returns all docs from a given category ' written by Mike Mortin Dim view As NotesView ' get the view Set view = db.GetView(viewName) ' get the docs from the cateogry Set GetCategoryDocsFromDb = view.CreateViewNavFromCategory( category ) End Function
Function GetClusterServers(server As String, getAllServers As Boolean) As Variant Dim cluster As String Dim serverDoc As NotesDocument Dim serverName As NotesName Dim key(1 To 2) As Variant Dim navdoc As NotesViewEntry Dim nav As NotesViewNavigator ' define domain and name as per the default "Servers" view Set serverName = New NotesName(server) key(1) = serverName.Organization key(2) = serverName.Abbreviated Set serverDoc = GetDocFromDb(currentDb, "Servers", key, True) ' get a list of servers in the same cluster cluster = serverDoc.ClusterName(0) Set nav = GetCategoryDocsFromDb(currentDb, "Clusters", cluster) ' go through the category, add names to replica list Set navdoc = nav.GetFirstDocument() While Not navdoc Is Nothing Set serverDoc = navdoc.Document If serverDoc.ServerName(0) <> server Or getAllServers Then Set serverName = New NotesName(serverDoc.ServerName(0)) GetClusterServers = GetClusterServers & serverName.Abbreviated & "," End If Set navdoc = nav.GetNextDocument(navdoc) Wend ' tighten up the list GetClusterServers = Split(GetClusterServers, ",") GetClusterServers = Fulltrim(GetClusterServers) End Function
Function GetClusterServers(server As String, getAllServers As Boolean) As Variant Dim s as New NotesSession Dim cluster As String Dim serverDoc As NotesDocument Dim serverName As NotesName Dim key(1 To 2) As Variant Dim navdoc As NotesViewEntry Dim nav As NotesViewNavigator ' define domain and name as per the default "Servers" view Set serverName = New NotesName(server) key(1) = serverName.Organization key(2) = serverName.Abbreviated Set serverDoc = GetDocFromDb(s.CurrentDatabase, "Servers", key, True) ' get a list of servers in the same cluster cluster = serverDoc.ClusterName(0) Set nav = GetCategoryDocsFromDb(currentDb, "Clusters", cluster) ' go through the category, add names to replica list Set navdoc = nav.GetFirstDocument() While Not navdoc Is Nothing Set serverDoc = navdoc.Document If serverDoc.ServerName(0) <> server Or getAllServers Then Set serverName = New NotesName(serverDoc.ServerName(0)) GetClusterServers = GetClusterServers & serverName.Abbreviated & "," End If Set navdoc = nav.GetNextDocument(navdoc) Wend ' tighten up the list GetClusterServers = Split(GetClusterServers, ",") GetClusterServers = Fulltrim(GetClusterServers) End Function
Function IIf (condition As Variant, trueCondition As Variant, falseCondition As Variant) As Variant ' such a basic function for all other programming languages ... stands for "Immediate IF" ' written by Mike Mortin If condition Then If Isobject(TrueCondition) Then Set IIf = trueCondition Else IIf = trueCondition End If Else If Isobject(TrueCondition) Then Set IIf = falseCondition Else IIf = falseCondition End If End If End Function
Function GetEnterpriseNAB( default As String ) As NotesDatabase ' returns the NAB from the server the current Db is on ' written by Mike Mortin Dim s As New NotesSession Dim db As NotesDatabase Dim server As String Dim nname As NotesName ' set the default If default = "" Then default = "Admin01/Operations/CA" ' get our parent server to get the NAB Set db = s.CurrentDatabase Set nname = New NotesName(db.Server) server = nname.Common ' now, use default server if we are local If server = "" Then server = default ' finally, grab names.nsf from that server Set GetEnterpriseNAB = New NotesDatabase(server, "names.nsf") End Function
да и еще, можно поиграться с настройками репликации, т.е. выделить группу документов по определенному признаку и толкать их или вытягивать на/с сервер(а)
Дело в том, что мне нужна автоматическая репликация в пределах одного сервера. Т.е есть БД1, которая лежит на сервере, на этом же сервере лежат ее реплики в разных папках. Надо чтобы БД1 своим репликам отдавала документы, но не принимала ничего.
м.. вообщем возникла проблема такого плана. Был когда то ещё один сервер(типа для разработки). Потом надобность в нем отпала. Через админ процесс удалил его. На машине сделал снес его. После сноса , через какое то время пошли строки в логах
Цитата
Unable to replicate with server SERVER2/DOMAIN: Unable to find path to server. To trace this connection, use File - Preferences - User Preferences - Ports - Trace (Notes client) or Trace command (Domino server)
Записей в каталоге , мониторинге , и вообще где только можно о нем НЕТ. Заметил что безобразие в консольных логах прекращается каогда отключить Event monitor ( tell event quit). Но и без него жизнь трудна. Вообщем , помогите разобраться.
да и еще, можно поиграться с настройками репликации, т.е. выделить группу документов по определенному признаку и толкать их или вытягивать на/с сервер(а)
Дело в том, что мне нужна автоматическая репликация в пределах одного сервера. Т.е есть БД1, которая лежит на сервере, на этом же сервере лежат ее реплики в разных папках. Надо чтобы БД1 своим репликам отдавала документы, но не принимала ничего.
Решили сменить сервер на новый... Red Hat EL 5 дорогой, поэтому приобрели ASP Linux 5 (ну и по некоторым ещё причинам). Сейчас система работает на старом пк в связке lotus domino 6.0 - red hat 7.2 и к сожалениюне я её не создавал... Подскажите во первых что вернее сделать, каким образом легче (или лучше) произвести перенос (полный перенос баз и замена первого, либо второй сервер и дальнейший переход на него). Клиентских мест 30 штук, рабочих баз 7-8 и общий объём 30 Гб всей инфы. Также подскажите пожалуйста , какие дополнительные пакеты должны быти установлены перед установкой Lotus Domino 8.1 на ASP Linux Server 5 x64 (от Red Hat EL 5). Как я понял у всех праблема возникает с java при загрузке установки? Описание самой установки неоднократно на форумах читал, а опыта пока нет))) И если ставить пакеты java, то для 64х или x586... Не хотелось бы наставить кучу лишнего... А также настройки прозводить с Gnome и нужен ли KDE или это не принципиально?
Решили сменить сервер на новый... Red Hat EL 5 дорогой, поэтому приобрели ASP Linux 5 (ну и по некоторым ещё причинам). Сейчас система работает на старом пк в связке lotus domino 6.0 - red hat 7.2 и к сожалениюне я её не создавал... Подскажите во первых что вернее сделать, каким образом легче (или лучше) произвести перенос (полный перенос баз и замена первого, либо второй сервер и дальнейший переход на него). Клиентских мест 30 штук, рабочих баз 7-8 и общий объём 30 Гб всей инфы. Также подскажите пожалуйста , какие дополнительные пакеты должны быти установлены перед установкой Lotus Domino 8.1 на ASP Linux Server 5 x64 (от Red Hat EL 5). Как я понял у всех праблема возникает с java при загрузке установки? Описание самой установки неоднократно на форумах читал, а опыта пока нет))) И если ставить пакеты java, то для 64х или x586... Не хотелось бы наставить кучу лишнего... А также настройки прозводить с Gnome и нужен ли KDE или это не принципиально?
Подскажите пожалуйста как можно перетащить адресную книгу и желательно почту из lotus domino в outlook/outlook express средствами domino. я знаю стороннии утилиты для этого хотелось обойтись средствами домино.
Our clocks went back an hour this weekend from BST to GMT. As a result a funny bug cropped up in my code. What I can't work out is if the source of the bug lies with Notes or not. It's not behaviour I've seen before.
Imagine a "subscription" document which has an ExpiryDate field, which should need no explanation, and also a GracePeriod field, which stores the number of days after the expiry date on which it actually expires.
To work out whether the actual expiry date had passed I use the formula:
Yesterday (the 27th) I noticed that a document had expired a day early. Looking in to it I found that the change to the clocks had caused it.
For the document in question the formula being computed was:
@Adjust("25/10/2008 00:00:00"; 0; 0; 2; 0; 0; 0)
Now, I'd expect that to give me a date/time of "27/10/2008 00:00:00", but, in this case was giving me "26/10/2008 23:00:00". Hence it was indeed before @Today (the 27th) and so the formula returned true and the document expired a day early.
I can see what it's doing here. Two days is 48 hours and 48 hours after midnight this Saturday gone it was indeed only 11 PM on Monday, as the clocks went back an hour at some point in between. I just didn't expect @Adjust to be that clever. Has it always done that?
As a fix I found that ignoring the time component and only adjusting the date part stopped the extra hour being removed. The formula is now:
For the example used above this gives me "27/10/2008", as expected. You live and learn. I'll try and remember to always extract the date part only from now on, assuming the formula isn't time-dependent, which it isn't in this case.
Am I missing something here? Did you all know of this and I've just been lucky never to have seen this behaviour before?
If you need to create a large amount of dynamic JavaScript and you're not familiar with the use of @DBColumn and @DBLookup formulas, this tip is for you. Placing this code in your HTML Head Content section is a simple workaround for busy Lotus Notes Domino developers.
I have performed some research before posting this thread and it appears that a macro created in symphony can't be assigned to a 'button'.
A macro can indeed be created, saved, etc and a button can be created from various different objects... so logically the two can be integrated?
This may serve as annoyance to some users, however it is a common tool that is used throughout the education sector (by those studying IT at any age), as well as for many other applications throughout industry, and is an integrated function within Microsoft Office.
The idea lnked to below is requesting more screenshots as well as sample task-flows. I'd like to see the level of interest specifically in more screenshots, so I'm adding this as a separate topic. Thanks for your feedback.
Add the browse for file functionality in the certserv.ntf template for managing certificates. It's especially cumbersome when managing lots of certificates that you either have to paste from the clipboard or type explicitly the file's location when managing either third party certificates or the certificate itself.
This white paper provides step-by-instructions on how to integrate CA (formerly Netegrity) SiteMinder 6.0 with IBM Lotus Connections 2.0 to provide your users with the security of a single sign-on environment.
During startup and throughout the normal course of operation of a Domino Server, it is possible for any Directory Assistance replica within a domain to become unavailable for some period of time. New functionality implemented in Domino 7 will check for an available LDAP replica before initiating the failover process. This new functionality improves the efficiency of the failover algorithm and lowers overhead for the server.
A Lotus Notes mail file's Block Sender rule does not block some incoming Internet mail as expected. The blocked address appears in the Block Sender list as expected, and the block sender formula within the mail file's Calendar profile appears as expected.
After upgrading the Resource Reservations database from Lotus Domino 5 to an 8 release, those rooms and resources with owner restrictions that were created before the upgrade do not work properly.
You configure a SmartUpgrade kit document to upgrade Notes clients to 7.0.2 and use a SURunAs.exe (attached or stored on a network share). At the end of the upgrade, when a user clicks OK on the "Finished" dialog, the following error appears: "You have cancelled your update of Lotus Notes".
Users cannot currently search the contents of blog comments although if the Lotus Notes database is full-text indexed, they can use the Notes searching feature to search in blog entries. Since searching is currently not a feature in the Blog templates, are there plans to include this functionality?
Companies exploring cost-reduction strategies to become more energy efficient and to increase business agility have identified client virtualization as a strategic move to stay competitive in the market. This article highlights some of the virtualization technologies available in today's market for Linux® desktops. This article takes you through various virtualization technologies that utilize the IBM® open collaboration client solution, that add business value to your IT infrastructure, and that get you started on the desktops of the future, which leverage the power of Web 2.0 and cloud computing.
IBM® Lotus® Sametime® 8.0 expands real-time communication with telephony and audio-visual capabilities. It also offers a highly extensible platform based on the Eclipse plug-in framework. This article introduces the Lotus Sametime Telephony client toolkit, which you can use to develop new plug-in applications on top of Lotus Sametime Connect.
Have you wanted to port your infrastructure and business line applications to a Linux desktop environment, but been deterred by the need to access critical Microsoft Windows or legacy applications? Finding a way to support these critical business line applications is crucial when considering the move to Linux. This article highlights the various tools that let you access these applications from Linux desktops.
Learn the steps involved in migrating your environment to that of a Linux® client, including organizational planning and user segmentation. Based on customer experiences, this article offers a comprehensive guide to planning and executing your migration while minimizing disruption to your users.
Learn what's involved when introducing a Linux® client pilot in your organization, including planning for business and IT requirements, architecture decisions, risks, and understanding how IBM's open collaboration client is used to implement this desktop of the future, today.
When a Lotus Notes client hotfix is saved to a directory that contains double-byte characters in the path, such as デスクトップ (Desktop), and executed from that location, the install will fail while it is attempting to create a backup directory. The error "Failed to upgrade Notes. See the file UPGRADE.LOG for more information." will be observed.