Domino 9 und frühere Versionen > ND8: Entwicklung
Klasse (Werte) in Dokument speichern
(1/1)
Schnubbel:
Hallo liebe Gemeinde,
ich habe folgendes Problem:
Ich habe bisher noch nie mit Klassen gearbeitet. Ich versuche mir diese aber gerade näher zu bringen. Ich habe eine Klasse names Link erstellt.
--- Code: ---Class Link
Public Gesamt As String
Public url As String
Public Dokument As String
Public Datenbank As String
Sub New()
Gesamt=""
url=""
Dokument =""
Datenbank =""
End Sub
End Class
--- Ende Code ---
Ich habe dann ein Array von dieser Klasse erstellt und fülle es mit Werten.
--- Code: ---Dim Linkliste () As Link
...
Redim Linkliste (Linkcounter)
...
Set linkliste(linkcounter) = New Link
linkliste(linkcounter).gesamt = Komplettlink
linkliste(linkcounter).url = linkstring
linkliste(linkcounter).Dokument = doc.UniversalID
linkliste(linkcounter).datenbank = doc.ParentDatabase.ReplicaID
--- Ende Code ---
Bis hierhin funktioniert auch alles wie erwartet. Nun möchte ich gerne dieses Array in einem Notesdokument speichern.
--- Code: ---Dim notesA As NotesItem
Dim Tempdoc As NotesDocument
Set tempdoc = localdb.CreateDocument
Set notesA= New NotesItem( TempDoc, "Links", linkliste)
tempdoc.form ="AlleLinks"
Call tempdoc.Save(1,1)
--- Ende Code ---
Das Dokument wird angelegt, aber "Links" ist leer. Ich habe bisher auf diese Weise immer normale -eindimensionale- Arrays gespeichert.
Was mache ich falsch? Oder kann man "Klassen-Arrays" -so-gar nicht speichern und muss ich alles in "normale" eindimensionale Arrays packen? Oder wie macht ihr das? ;)
Danke im Voraus
Thorsten
ascabg:
hallo,
Geht nicht.
Und was willst Du eigentlich erreichen?
Andreas
Schnubbel:
Hi,
also wie ich schon geschrieben hab, wollte ich erstmal dem Thema Klassen näher kommen.
Auf der anderen Seite würde ich gerne alle Links einer Webpräsenz in einem Dokument speichern, um diese später zu testen, ob sie noch funktionieren bzw. auf 404 Seiten verlinken. Aber das (das speichern) werde ich dann wohl jetzt mit Arrays machen müssen.
Mitch:
Heyho,
"Klassen" (in deinem Beispiel allerdings "Objekte") kannst du nicht in einem Dokument speichern.
Arrays kannst du auch nicht einfach in ein Item stecken, das funktioniert nur mit Text-Arrays oder eben Zahlen-Arrays. Einen Array mit Dokumenten zum Beispiel kannst du ja auch nicht einfach in ein Item schreiben.
Du könntest deine Klasse um eine "toString"-Funktion erweitern, die dir den Inhalt aller Properties in einem einzigen String, z.B. mit Trennzeichen getrennt, zurückliefert. Die Rückgabe dieser Funktion packst du dann anstatt des Objektes in deinen Array und kannst diesen dann auch in ein Item stopfen.
Dann schreibst du dir noch eine weitere Methode in deiner Klasse: "initFromString" (oder so), der du als Parameter eben den trennzeichengetrennten String übergibst und alle Properties mit den entsprechenden Werten füllst. Und schwupps hast du wieder ein Link-Objekt mit dem du weiter arbeiten kannst.
Gruß,
Mitch
Navigation
[0] Themen-Index
Zur normalen Ansicht wechseln