Hallo Zusammen,
wir würden gerne innerhalb einer Notes DB / Anwendung etwas einführen, das man als Historie sehen kann. Und zwar geht es im konkreten Fall um Hardware. Wer hatte welche Hardware, wann zugewiesen... Also ab welchem Datum.
Da Notes nicht relational ist, hatte ich folgende Überlegung, die ich einfach mal versucht habe umzusetzen... Und zwar dafür ein neues Form zu nehmen, welches Ref die DocUniqueID erhält.
Für jede Änderung wird ein neues Dokument angelegt, mit der ID als Referenz.
Dazu habe ich ins PostSave folgenden Code gebaut:
Sub Postsave(Source As Notesuidocument)
Dim DocUnID As NotesItem
Dim person As NotesItem
Dim Datum As NotesDateTime
Dim v As NotesView
Dim s As New NotesSession
Dim doc As NotesDocument
Dim db As NotesDatabase
Dim doc2 As NotesDocument
Dim composed1, composed2 As String
composed1 = Source.FieldGetText("DocUnID")
composed2 = Source.FieldGetText("person")
Set db = s.CurrentDatabase
Set v = db.GetView("nHist_Hardware")
Set doc = v.GetFirstDocument
Set Datum = doc.GetItemValue("HistHW_Datum")
Set doc2 = New NotesDocument(db)
While Not (doc Is Nothing)
If composed1 = doc.GetItemValue("HistHW_DocUnID") And Not Today() = Datum.DateOnly Then
Call doc2.AppendItemValue("HistHW_DocUnID", composed1)
Call doc2.AppendItemValue("HistHW_Name", composed2)
Call doc2.AppendItemValue("HistHW_Datum", Today())
End If
Wend
End Sub
Das Programm hängt sich allerdings, immer wieder hier auf:
Set Datum = doc.GetItemValue("HistHW_Datum")
Die Meldung ist Type Mismatch.
Nur verstehe ich den Grund nicht, mal abgesehehn davon, der Code vermutlich auch noch weiter fehlerhaft ist... Das Feld was abgefragt wird, ist ein Datumsfeld... Und Datum ist auch als NotesDateTime deklariert...
Hat da jemand eine Idee?
Das ist ein Punkt, da komme ich nicht weiter.
Falls jemand weitere Fehler sieht, bitte
NICHT nennen.
Ein Satz wie, da sind weitere Fehler drin ist ok, aber bennent diese mal nicht.
Ich will das schon selber rauskriegen. Im Zweifel kann ich ja dann noch mal fragen.
Nur will ich versuchen meine Entwicklerfähigkeiten aufzubessern.
Nur bei dieser Datumssache da komme ich nicht dahinter...
Viele Grüße,
Thomas