Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Marcel - Anfänger am 04.04.06 - 09:09:46
-
Hallo Leute,
ich habe in meinem Agenten eine Abfrage eines Feldes drin. Dieses Feld ist ein Checkbox Feld mit einem möglichen Wert, also "" oder "Test". Jetzt weiß ich nicht wie ich es hinbekomme, dass er mir das Feld in eine variable ausliest. Ich mache es jetzt mit :
Dim test As Variant
Set test = doc.GetItemValue("Test")
Aber der Debugger springt mir immer raus. Mache ich was falsch? ??? Muss ich ja anscheinend, aber wäre echt nett, wenn ihr mir helfen könnt.
Danke Leute
-
Wie heisst denn das Feld, welches Du auslesen möchtest?
Dieser Name muss dann in die Anführungszeichen!
Benutz besser nicht den Feldnamen als Variablennamen - das bringt nur durcheinander...
Grüsse
Holger
-
na das Feld heißt erstmal Test und das hatte ich ja in Anführungszeichen gesetzt:
Dim test As Variant
Set test = doc.GetItemValue("Test")
Aber trotzdem schmeißt mich der Debugger raus. Oder muss ich dass "Set" weglassen?
Danke für eure Hilfe!
-
Ja.
Hast Du keine Designer-Hilfe installiert ? ;D
-
Das ganze geht auch wesentlich einfacher.
Beim einem Textfeld, dazu gehören auch die "Checkboxen", ohne Mehrfachwerte kannst du es auch so machen:
Dim strTest As String
...
strText = doc.Test(0)
...
Auch mein Rat: ;)
In der Designerhilfe sind solche Grundlage sehr gut erklärt und es gibt sehr viele Beispiele. Lese dir erstmal die Hilfe durch und wenn du dann nicht weiterkommst, helfen wir gerne weiter.
Axel
-
So, habe euren Rat efolgt und mich mal in der Hilfe kundig gemacht! ;)
Jetzt bin ich dadurch auf die idee gekommen es wie folgt zu machen.
Dim strtest As String
Dim item2 As NotesItem
...
Set item2 = doc.GetFirstItem("Test")
strtest = item2.Text
Die obere der beiden Zeilen führt er auch aus, allerdings setzt er keinen Wert auf Item2
und in der 2. Zeile bricht er dann ab?
Aber warum? Ich übergebe ihm doch den Inhalt als Text?!
Danke für eure Beiträge
-
Also ich fand den Tip von Axel eigentlich genau richtig für Deine Anforderungen...
-
Gibt es in dem Dokument, dass du mit der Variable doc refernzierst überhaupt ein Feld mit Namen Test?
Axel
-
Danke Axel,
für diesen Denkanstoss. Das Feld liegt in einem Dokument das vorher bearbeitet wurde. Jetzt versuche ich die ganze Sache über die DokumentenID. Ich habe sie mir im vorherigen Dokument unter globalen Variablen anglegt und gesetzt mit
doc_uniqueid=doc.UniversalID
aber wie schaffe ich es mir ein Feld mit LotusScript zu holen aus einem Dokument von dem ich nur die DokID habe? Mit GetTiemValue funktioniert es ja nicht, weil er sich nur auf das bestehende Dokument bezieht, wenn ich das richtig verstanden habe. Oder gibt es eine Möglichkeit das Dokument irgendwie anders nochmal aufzurufen?
-
Was heisst voriges Dokument?
Stell doch bitte mal ein bischen mehr Code hier rein
-
Allmählich wird die Sache undurchsichtig.
Mein Fazit:
- es fehlen wohl teilweise LoNo-Basics
- ich lese: "habe versucht" , "bin auf die Idee gekommen" etc ; dass liest sich so, als ob es kein klares Konzept gibt.
Vorschlag:
erst lernen + Konzept machen, dann programmieren..
-
Wenn du die UniversalID des Dokumentes hast kannst du mit GetDocumentByUNID aus der Klasse NotesDatabase das Dokument suchen und darauf zugreifen. An die Feldinhalte kommst du dann wie oben beschrieben.
Aber so langsam beschlägt meine Kristallkugel auch immer mehr. Ich fürchte, du hast willst was machen, aber keine klare Vorstellung, ob und wie das zu realisieren ist.
Mein Vorschlag wäre, du setzt dich mal hin und schreibst dir in kurzen Stichworten auf was du machen willst. Auf jeden Fall brauchst du auch die entsprechenden Grundlagen für die Notes-Programmierung.
Axel
-
So, es ist jetzt vollbracht!
Der letzte Tipp von Axel, war echt super! Damit habe ich es hinbekommen.
Danke Leute für eure hilfreichen Tipps! Ohne wäre ich wahrscheinlich verzweifelt!
Also bis denne