Domino 9 und frühere Versionen > ND7: Entwicklung
Massenänderung Script-Problem
gismored:
Hallo zusammen,
würde gerne mehrere Dokumente markieren und diese aktion ausführen:
Dim session As New NotesSession
Dim db As NotesDatabase
Dim doc As NotesDocument
Dim coll As NotesDocumentCollection
Dim feld1 As NotesItem
Dim Inhalt As String
Dim Feld As String
Dim Inhalt2 As String
Dim Feld2 As String
Dim Inhalt3 As String
Dim Feld3 As String
Set db=Session.CurrentDatabase
Set coll=db.UnprocessedDocuments
Feld="Lagerort"
Inhalt="MSC"
Feld2="Status"
Inhalt2="im MSC"
Feld3="Historie"
Inhalt3="wurde geändert von"
If coll.count>0 Then
For Count = 1 To coll.Count
Set doc=Coll.GetNthDocument(Count)
Set Feld1=doc.GetFirstItem(Feld)
feld1.values=Inhalt
Set Feld1=doc.GetFirstItem(Feld2)
feld1.values=Inhalt2
Set Feld1=doc.GetFirstItem(Feld3)
feld1.values=Inhalt3
Call doc.Save (True, False)
Next
End If
So lange ich Feld 3 und Inhalt 3 weglasse funktioniert es.
Das Feld Historie ist aber ein Richtext Feld und ich steh vor dem Problem
dass ich immer wieder die Meldung bekommen, objekt variable not set.
Ich finde nicht heraus, wie ich es deklarieren muß, damit es geht.
Könnt ihr mir da weiterhelfen ?
ascabg:
Hallo,
Warum versuchts du nicht mal die Werte direkt in die betreffenden Felder zu schreiben?
--- Code: ---doc.Lagerort = "MSC"
doc.Status = "im MSC"
doc.Historie = "wurde geändert von"
Call doc.Save(True, False)
--- Ende Code ---
Andreas
P.S.:
Eine Historie in dem Sinne ist es aber im Feld "Historie" nicht.
Du ueberschreibst es ja.
gismored:
Stimmt, das ist viel einfacher so. Danke dir.
Das mit der Historie ist so ne Sache.
So ist es natürtlich keine.
In der Formelsprache war das viel einfacher *grins
Würde gerne den Ist-Wert in eine Variable speichern und dann das Feld mit neuem Text + die Variable wieder speichern mit.
das hab ich schon probiert
h=doc.Getitemvalue("Historie")
und
doc.Historie="Wurde geändert am ..." + h
ascabg:
Hallo,
Schau dir in der Hilfe mal etwas genauer diese Klasse hier an.
NotesRichTextItem
Andreas
gismored:
hallo andreas,
versuche mich mal langsam da dran zu tasten.
erstnmal muß ich wissen was drin ist.
habe hier im forum eine explode funktion gefunden, die mir das mit zeile ausließt.
und wollte mir das in der msgbox anzeigen lassen.
Dim rt As NotesItem
Dim var As String
Set rt = doc.GetFirstItem("Historie")
var = Explode(rt.Text, Chr(13) +Chr(10))
MsgBox var ,MB_OK , Historie
doch er bringt mir immer wieder object variable not set
egal ob ich string oder variant nehme, oder notesitem oder notesrichtextitem.
gruß thomas
Navigation
[0] Themen-Index
[#] Nächste Seite
Zur normalen Ansicht wechseln