Das Notes Forum
Domino 9 und frühere Versionen => Administration & Userprobleme => Thema gestartet von: Hardy am 06.02.03 - 12:00:52
-
Hallo,
hat jemand eine Möglichkeit auf Halde, wei man die Notes-Versionen der einzelnen User rausfinden kann ?
Der User soll aber nicht mit irgendwelchen Buttons usw. belästigt werden.
Folgendes Script habe ich probiert aber vielleicht gibt es ja was besseres.
Wird nur einmal ausgeführt und läuft in eine Mail-IN-DB.
Die Auswertung ist doch eher mühselig.
Queryopen im Inbox Ordner
Sub Queryopen(Source As Notesuiview, Continue As Variant)
Dim s As New notessession
Dim db As notesdatabase
Set db = s.currentdatabase
Dim x As Integer
x = s.getenvironmentvalue("Checked")
If x <> 1 Then
Call s.setenvironmentvar("Checked", 1)
Dim doc As notesdocument
Set doc = db.createdocument
doc.Subject = "My notes Version"
doc.form = "Memo"
doc.sendto = "Mail_In_DB"
Dim rtitem As notesrichtextitem
Set rtitem = New NotesRichTextItem(doc, "Body")
Call rtitem.appendtext(s.commonusername)
Call rtitem.addnewline(1)
Call rtitem.appendtext(s.notesversion)
doc.send(True)
End If
End Sub
Bye
Hardy
-
da ich LotusScript nicht kann, sag ich zu dem Script lieber nichts *g*
Aber 2 Hinweise hab ich schon:
Meiner Meinung nach gehört sowas nicht in irgendein Event in der $Inbox, da ja neue Ordner das Design übernehmen. In deinem Fall kannst Du dich also auf viele Mails freuen!
Zum zweiten: in jedem Mail gibts ein Feld: $Mailer => da steht die genaue Notes Version drinnen - vielleicht hilft dir das?
-
Hi,
1. Aus der Notes Hilfe: @Version falls eine Script-Lösung zu umfagreich ist.
2. Es gibt hierzu einen Artikel in THE VIEW (Ausgabe November/December 1998 - Volume 4, Issue 6) in dem durch setzen des .ini-Parameters die Version mitgeloggt wird und im Anschluß ein Agent die Infos ausliest.
ini-Parameter:
LOG_SESSIONS=1
und
LOG=LOG.NSF, 1, 0, 7, 20000
besorgen die Einträge.
Den Agenten poste ich hier nicht, Burke LaShell muß ja auch von was leben... ;)
Funktionierte jedenfalls unter R4.x
Gruß
sloe
-
Danke,
bringt mich aber auch nicht so richtig weiter.
Wie löst Ihr das denn mit den Notebooks, die lokal arbeiten und nicht aus dem Server Names lesen können.
By the way:
Im BCC Admin gibt es den ClientKonfigurator der die Versionen erkennen soll !
Hardy
-
....setzen des .ini-Parameters die Version mitgeloggt wird und im Anschluß ein Agent die Infos ausliest.
ini-Parameter:
LOG_SESSIONS=1
Stimmt nicht wirklich - die mitgeloggte Client-Version ist für alle R5-Clients die selbe Build-Number. D.h. es bringt dir gar nichts
-
Vielleicht hilf Dir das weiter. Jedoch der GetEntry für die ACL muss noch abgefangen werden, wenn jemand auf einen fremden Kalender zugreift und dessen PostOpen auslöst, jedoch keine Zugriffsrechte auf die ACL hat.
Weiter musst Du das Script beim "Update Tasks"-Agent Check checken nach hartcodiertem Servereinträgen. Sonst funktioniert's ned.
Sub Postopen(Source As Notesuidatabase)
Dim session As New NotesSession
Dim db As NotesDatabase
Dim acl As NotesACL
Dim entry As NotesACLEntry
Dim registration As New NotesRegistration
Dim currentagent As NotesAgent
Dim doc As NotesDocument
Dim agentenabled As Variant
Dim isadmin As Variant
Dim retmailserver1 As String
Dim retmailserver2 As String
Dim filename As String
Dim username1 As String
Dim username2 As String
Dim currentserver As String
Dim agentserver As String
Dim lastversion As String
Dim actualversion As String
Set db = session.CurrentDatabase
'***** "Update Tasks"-Agent Check *****
filename = db.FileName
username1 = LeftSub(filename,".")
username2 = db.Title
currentserver = db.Server
If currentserver = "" Then
'Database is on Local - No action here
Else
Set acl = db.ACL
Set entry = acl.GetEntry( currentserver )
registration.RegistrationServer = currentserver
On Error Resume Next
isadmin = entry.IsAdminServer
Call registration.GetUserInfo( username1, retmailserver1)
'Call registration.GetUserInfo( username2, retmailserver2)
If (isadmin) Or (currentserver=retmailserver1) Or (currentserver=retmailserver2) Then
'Database is on User's main mail server (which is NORMALLY also the Administration Server) - Go forward
'Get the right agent
Forall agent In db.Agents
If ( agent.Name = "Update Tasks|Update Tasks" ) Then
Set currentagent = agent
Exit Forall
End If
End Forall
'Get the current status (server/enabled)
agentserver = currentagent.ServerName
agentenabled = currentagent.IsEnabled
'Change status if necessary
If currentserver <> agentserver Then
currentagent.ServerName = currentserver
Call currentagent.Save
End If
If agentenabled = False Then
currentagent.IsEnabled = True
Call currentagent.Save
End If
End If
End If
'***** Notes-Versionen Check *****
lastversion = session.GetEnvironmentString("Version")
actualversion = TrimString(session.NotesVersion)
If lastversion = actualversion Then
'Keine Versionsänderung - keine Mail notwendig
Else
'Versionänderung - email an "Mail Version Report" absetzen / Notes.INI-Eintrag aktualisieren
Set doc = New NotesDocument(db)
doc.Form = "Memo"
doc.Subject = actualversion
doc.VersionNumber = LeftSub(actualversion,"|")
doc.VersionDate = RightSub(actualversion,"|")
doc.SendTo = "Mail Version Report"
Call doc.Send(False)
Call session.SetEnvironmentVar("Version",actualversion)
End If
End Sub
-
Die NOtesversion rausfinden geht normalerweise so...
"This form action script gets the release of Notes currently running and puts it in the variable version. For example, if the script runs on a workstation with Notes Release 4, the NotesVersion property returns "Notes Release 4." If the script runs on a server with Notes Release 4.1, the NotesVersion property returns "Notes Release 4.1."
Dim session As New NotesSession
Dim version As String
version = session.NotesVersion"
Hab n.n. kapiert, was das ganze drumherum nun bedeutet....leider nicht die große Zeit, das durchzulesen
Wenn es also noch die ODS der db sein soll:
Gehs doch über das Mailfile an..wer ein R5 Mailfile lesen kann, kann natürlich nicht einen R1-4 Client verwenden...
http://eknori.dyndns.org/knowledge/kbnv11.nsf/34ccb724696466a48525667500536b5e/e1ded352b6eb8f30852569fa006ecb0a?OpenDocument&Highlight=0,ODS
http://eknori.dyndns.org/knowledge/kbnv11.nsf/34ccb724696466a48525667500536b5e/c2132dc3be8e62678525678b005b0b55?OpenDocument&Highlight=0,ODS