Domino 9 und frühere Versionen > ND7: Entwicklung
Liste mit Datum speichern
Hatschi:
Guten Morgen,
ich habe ein Dokument das versendet wird. Jedesmal wenn es versendet wird, soll der Zeitpunkt vermerkt werden. Die Sendetermine sollen in einem Mehrfachfeld Datum/Zeitwert abgespeichert werden.
Mit folgendem Code bekomme ich das nicht hin, weil er beim zweiten Aufruf die Fehlermeldung "NotesItem cannot be set to an array of mixed data types" bringt.
Sub SendeterminMerken (Doc As notesdocument)
Dim jetzt As NotesDateTime
Dim item As notesitem
Dim termine As Variant
Set jetzt =New notesdatetime("")
Call jetzt.setnow ()
If doc.HasItem("WVGesendetAm") Then
'ein weiteres Sendedatum an die Liste anhängen
termine=doc.WVGesendetAm
Redim Preserve termine (Ubound(termine) +1) As Variant
Set termine(Ubound(termine))=jetzt
Call doc.Replaceitemvalue( "WVGesendetAm", termine)
Else
'Das Item gab es noch nicht, deshalb anlegen
Redim Termine (0) As notesdatetime
Set Termine(0)=jetzt
Set item=New notesitem(doc, "WVGesendetAm", termine)
End If
End Sub
Einen Screenshot aus dem Debugger habe ich beigefügt. Dort sieht man das beim zweiten Aufruf die Inhalte des Arrays nicht vom gleichen Typ sind. Das Array scheint sich nicht daran zu stören, das Item schon. Hat jemand eine Idee wie man das lösen kann, ohne das Sendedatum in Text zu wandeln?
Vielen Dank,
Bernd
ascabg:
Hallo,
Versuchs doch mal mit jetzt.localtime.
Du kannst nicht dein "gesamtes" Objekt vom Type "NotesDateTime" als Array-Item einfuegen.
Andreas
DerAndre:
Such auch mal nach History.
Hatschi:
Hallo Andreas,
wenn ich localtime verwende, dann ist es ja kein Notesdatetime mehr, sondern ein String. Dann könnte ich auch mit Appendtotextlist arbeiten. Ich wollte die Liste aber als Notesdatetime für spätere Verwendung führen.
--- Zitat ---Du kannst nicht dein "gesamtes" Objekt vom Type "NotesDateTime" als Array-Item einfuegen.
--- Ende Zitat ---
Die Hilfe zu Replaceitemvalue habe ich aber so verstanden, dass man auch ein Array of Date zuweisen kann. Und das meine ich in dem Variant Termine zusammengebaut zu haben.
Bernd
ascabg:
--- Zitat ---Die Hilfe zu Replaceitemvalue habe ich aber so verstanden, dass man auch ein Array of Date zuweisen kann. Und das meine ich in dem Variant Termine zusammengebaut zu haben.
--- Ende Zitat ---
Nein, kannst Du nicht.
Und ein "Objekt" der Klasse "NotesDateTime" beinhaltet ja nun nicht nur Datums- und Zeitwerte, sondern auch (siehe Dein Screenshot) Werte vom Type Variant, Integer.
Desweiteren hast Willst Du in diesem Fall ja nicht einen "eindimensionalen" Array (hierauf bezieht sich die Hilfe) in das Feld schreiben, sondern einen mindestens "zweidimensionalen" Array.
Andreas
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln