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