Das Notes Forum
Domino 9 und frühere Versionen => ND8: Administration & Userprobleme => Thema gestartet von: Michael Patzak am 06.09.11 - 21:45:45
-
Moin,
als "stiller" Mitleser muss ich doch auch mal ein Frage stellen.
Ich nutze privat den Notes Client seit 5.0 und zur Zeit Notes 8.5.2 unter Ubtuntu 10.04 LTS. Der Hintergrund ist, dass ich die Datenbank Private Office
von INTRAWARE seit 1999 einsetze und auch entsprechend nutze, also meine ganzen Adressen incl. der dazugehörigen Vorgänge sind dort abgelegt.
Mittlerweile umfassen meine DB ca. 2,0 GB (Mail, Private Office und meine Notizen (Journal Schablone)). Schick ist es auch mit den Aufgaben zu arbeiten.
Seit meinem Umstieg von Windows zu Linux funktioniert allerdings der Agent "Aufgabe aktualisieren|Update Tasks" nicht mehr.
Was ich bislang versucht habe:
http://atnotes.de/index.php/topic,46766.0.html
http://atnotes.de/index.php/topic,51557.msg331493.html#msg331493
http://atnotes.de/index.php/topic,51557.0.html
Dann eine neue leere DB erstellt mit der Schablone "StdR85Mail/de"
Neuen Agenten erstellt names Test
In die leere DB eine Aufgabe eingetragen
Am nächsten Tag aus der Kalenderansicht Menü Aktionen Test ausgewählt und siehe da ..... es funzt.
Jetzt die Frage ... was kann ich noch tun, damit der o.g. Agent funktioniert oder muss ich jetzt von meiner Original Mail DB alles in die neue Mail DB kopieren?
Kennt vielleicht einer dazu eine Lösung? Vielen Dank im voraus. ???
mfg
Michael
-
In keiner Version der Mailschablone seit der ersten Notes-Version gibt es Agents, die vom OS abhängig wären (ausser dass es vor Version 8 keine Clients für andere OS als Windows gegeben hat, dafür liefen aber die Agents auf dem 3er Server vor allen unter OS/2 oder Netware).
Da muss also irgend etwas anderes faul sein - am OS liegt es nicht und nicht an der Schablonenversion.
Abgesehen davon kannst Du über Deine 5er Mail-DB die 8er-Schablone auch drüberbügeln (aber Achtung - das ist auf einem pure Client eine etwas eigene Sache und sollte nicht mit Schablone wechseln oder aktualisieren gemacht werden!). Es ist nicht erforderlich, dass Du hier irgendetwas kopierst (das wird sogar kontraproduktiv sein).
Bernhard
-
Moin,
was steht denn im Serverlog ? Oder läuft alles rein lokal ?
Funktioniert denn bei Dir der Agent in der Standardschablone ?
CU,
Axel
-
Moin,
erstmal vielen Dank.
@koehlerbv Die Schablone ist bereits ne 8er
@wildVirus Ja, es läuft alles rein lokal
Kurioserweise werden die Aufgaben verschoben, wenn diese geöffnet und wieder gespeichert werden. ???
mfg
Michael
-
Das ist überhaupt nicht kurios, da im Speichern-Code für *ein* (das) Dokument genau das ausgeführt wird, was der Agent sonst für alle ToDos nächtens macht.
Bernhard
-
Moin,
nochmals vielen Dank.
@Bernhard .........das ist auf einem pure Client eine etwas eigene Sache und sollte nicht mit Schablone wechseln oder aktualisieren gemacht werden!).
Was würdest Du dann empfehlen?
mfg
Michael
-
Hallo Michael,
auf dem Domino wäre es der Convert-Task, der laufen müsste, um Mail-DBs zu heben. Auf dem Client ist es das Program nconvert.exe - aber "nur" unter Windows. Wie der Programmaufruf unter Deinem speziellen Linux lautet, entzieht sich meinem Wissensbereich als Notes-Programmierer.
Wie der Convert-Task tut und was für Parameter es brauchst, findest Du in der Admin-Doku-NSF, die Dir als Standalone-User aber vermutlich nicht nur Verfügung steht. Die Doku habe ich aber gerade gestern hier
http://atnotes.de/index.php/topic,52530.0.html
in Post #3 verlinkt - IBM Lotus stellt die auch im Net zur Verfügung.
HTH,
Bernhard
-
Moin,
jetzt ist es gelöst:
Mal eben auf einem Test PC einen "nackten" Client installiert (Gleiches Betriebssystem, gleiche Notes Version) unbd die Agenten verglichen. Es fehlte folgender Code:
Bei Declaration:
Dim itemDates As notesitem
Dim dtInstance As NotesDateTime
Sub Initialize
Dim session As New NotesSession
Dim db As notesdatabase
Dim viewTodo As NotesView
Dim note As NotesDocument
Dim dtToday As NotesDateTime
Dim viewEntries As NotesViewEntryCollection
Dim viewEntry As NotesViewEntry
Dim vTodo As Variant
' Initialize variables
Set db = session.currentdatabase
Set viewTodo = db.GetView("Tasks")
If (viewTodo Is Nothing) Then Exit Sub
' Enumerate the todo entries
Set viewEntries = viewTodo.AllEntries()
Set viewEntry = viewEntries.GetFirstEntry()
While Not(viewEntry Is Nothing)
If (viewEntry.IsDocument()) Then
Set note = viewEntry.Document
If (CanProcessNote(note)) Then
If (NOTEUserIsCreator(note)) Then
Set vTodo = New NotesCSEventOwnerDocument(2)
Else
Set vTodo = New NotesCSEventParticipantDocument(2)
End If
' See if this is a repeating entry
If (note.HasItem("OrgRepeat")) Then Call InitTodoObject(vTodo, note)
Call vTodo.Init(note)
Call vTodo.SetDueState()
Call vTodo.SetCalendarDateTime()
If Not(note.GetItemValue("DueState")(0)=10) And Not(note.GetItemValue("DueState")(0)=9) Then
Call vTodo.SetViewIcon()
End If
Call note.replaceitemvalue("tmpMod", "1")
Call vTodo.MarkTempItems()
If (note.HasItem("OrgRepeat")) Then
vTodo.RepeatModify = REPEAT_CURRENT
Call vTodo.CreateRepeatExceptions(REPEAT_CURRENT)
End If
Call note.save(True, True, True)
End If
End If
Set viewEntry = viewEntries.GetNextEntry(viewEntry)
Wend
End Sub
Function CanProcessNote(note As NotesDocument) As Integer
CanProcessNote = False
' make sure this is a to do item
If (Strcomp(note.GetItemValue("Form")(0), "Task") <> 0) Then Exit Function
' make sure this is not completed
If (note.hasitem("AssignState")) Then
If (note.GetItemValue("AssignState")(0) > 8) Then Exit Function
End If
' make sure we are not processing a repeat parent
If (note.HasItem("OrgRepeat") And Not(note.IsResponse)) Then Exit Function
' make sure we are not processing a draft
If (note.GetItemValue("TaskType")(0)="2") And Not(note.hasItem("PostedDate")) Then Exit Function
'make sure we are not processing a message
If (note.GetItemValue("$CSFlags")(0)="m") Then Exit Function
' make sure we are not processing a repaired instance or message
If (note.GetItemValue("$CSFlags")(0)="x") Then Exit Function
CanProcessNote = True
End Function
Sub InitTodoObject(vTodo As Variant, note As notesdocument)
Dim itemDates As notesitem
Dim dtInstance As NotesDateTime
' seed the calendar instance with the first date in the list
Set itemDates = note.GetFirstItem(vTodo.StartItemName)
Call TIMEGetNotesFromLS(itemDates.Values(0), dtInstance)
Set vTodo.CalendarInstance = dtInstance
End Sub
Jetzt noch den Auslöser von Menü "Aktionen" auf täglich und siehe da ..... funzt.
Nochmals vielen Dank für Eure Antworten.
mfg
Michael ;D