Domino 9 und frühere Versionen > ND6: Entwicklung
Dokument suchen und Daten ändern
Driri:
Nein, falsch. ReplaceItemValue legt das Item einfach an, wenn es denn nicht existiert. Ich denke immer noch, daß doc nicht sauber ist.
Prüf doch bitte einfach ab, ob das Dokument existiert. Andre hat ja schon geschrieben, wie es geht. Du kannst dann ja z.B. einfach im Else-Zweig testweise per Print etwas ausgeben lassen. Wenn Du dann in der Statuszeile das Print-Ergebnis bekommst, wurde kein Dokument gefunden.
Boris hat Dir auch noch nen Tipp gegeben. Prüf mal nach, ob da wirklich der korrekte Wert enthalten ist. Zur Not schreib Dir den Wert aus FieldArray(0) in eine temporäte Variable und laß Dir diese auch einfach ausgeben. Idealerweise mit nem Sonderzeichen davor und dahinter, dann sieht man auch direkt, ob da ggf. Leerzeichen oder so drin sind.
Also so was hier :
Dim tmp As String
...
tmp = CStr(FieldArray(0))
Print "|" & tmp & "|"
...
Edit :
Ist das View-Objekt eigentlich korrekt ? Also, siehst Du im Debugger, daß das View-Objekt auch gefüllt ist oder bleibt es leer ?
DerAndre:
Aus der Hilfe:
ReplaceItemValue
Replaces all items of the specified name with one new item, which is assigned the specified value. If the document does not contain an item with the specified name, the method creates a new item and adds it to the document.
Das ist doch eindeutig, oder?
Axel:
--- Zitat von: lotus blue am 05.06.08 - 15:04:59 ---Das heißt er findet das Feld nicht oder so ähnlich.
--- Ende Zitat ---
Er findet das Dokument nicht.
Daher nochmal meine Frage. Was sagt der Debugger zur Variable doc ???
Du musst eine vernüftige Fehlerbehandlung einbauen. Sonst fällst du immer wieder auf die Nase. Entsprechende Infos, wie man so was macht, wurden dir hier bereits mehrfach gegeben.
Axel
lotus blue:
Sodala, wieder einen Schritt weiter:
Hab den Code umgebaut:
.................
'Zeile für Zeile einlesen
Line Input #1, InputStr$
FieldArray = Split(InputStr$,delimiter, -1, 0)
If Not Isempty(FieldArray) Then
Set doc = view.GetDocumentByKey(FieldArray(0))
If Not doc Is Nothing Then
Call doc.ReplaceItemValue("Status", "erledigt")
Call doc.Save(True,True)
Else
Messagebox"Test Nachrichtenbox",0,"Test"
End If
End If
Tja und es erscheint in der Tat die Box mit Nachrichtenbox.
Grazie für eure Tips. :love: Jetzt hab ich das auch schon mal
lotus blue:
--- Zitat von: Axel am 05.06.08 - 15:09:11 ---Daher nochmal meine Frage. Was sagt der Debugger zur Variable doc ???
Axel
--- Ende Zitat ---
Wie sollte es anders sein, die Zeile bleibt leer :(
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln