Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: seerow am 27.09.04 - 10:35:35

Titel: Wert über DialogBox ändern
Beitrag von: seerow am 27.09.04 - 10:35:35
Morgen zusammen,

ich möchte gerne über eine DialogBox den Wert eines Feldes in einer Dokumentenauswahl ersetzen.

Hier das script:

Code
Sub Click(Source As Button)
	Dim col As notesdocumentcollection
	Dim doc As notesdocument
	Dim ws As New notesuiworkspace
	
	Set sess = New notessession
	Set cdb = sess.currentdatabase	
	Set col = cdb.unprocesseddocuments     
	Set doc = col.getfirstdocument
	
	Call ws.DialogBox("form_db_lps_select", True, True, False, False, False, False, "Auswahl", doc)
	
	Do Until doc Is Nothing
		Call doc.ReplaceItemValue("sfd_pri_select_contact",Untitled)
		Call doc.ComputeWithForm( False, False) 
		Call doc.Save(True, False)
		Set doc = col.getnextdocument(doc)
	Loop
End Sub

Problem: Das script scheint den neuen Wert (im Feld Untitled) nicht im Dokument zu setzen. Der Inhalt des Feldes wird einfach nur gelöscht.
Weiß einer wo der Fehler liegt?
Titel: Re: Wert über DialogBox ändern
Beitrag von: Driri am 27.09.04 - 10:40:33
Wenn Du eine DocumentCollection hast, kannst Du das setzen eines Feldes auch wesentlich einfacher haben mit

Call doccol.StampAll(<Feld>, <Wert>)


Und so richtig verstanden habe ich das nicht. Mit der DialogBox öffnest Du ein bestimmtes Dokument und kannst in diesem einen Wert ändern.
Du willst aber doch, daß der User ein Feld auswählt, den Wert des Feldes ändert und diese Änderung dann auf alle Dokument in der Collection übertragen werden, oder ?

Titel: Re: Wert über DialogBox ändern
Beitrag von: seerow am 27.09.04 - 10:58:48
mit "Call col.StampAll("sfd_pri_select_contact",Untitled)" hat sich schon etwas
mehr getan.

Im Prinzip möchte ich nur in selektierten Dokumenten über eine Dialog Box einen Feldwert ändern
Dazu habe ich in der Dialogbox ein kleine Combobox mit Vorgabe Werten (im Feld Untitled)
und diese Auswahl soll dann in das Dokument Übertragen werden.

Mit der StampAll funktion hat er jetzt in das Feld einfach nur Untitled hinein geschrieben.
Titel: Re: Wert über DialogBox ändern
Beitrag von: Driri am 27.09.04 - 11:16:10
Versuchs mal so :

Dim col As notesdocumentcollection
Dim doc As notesdocument
Dim ws As New notesuiworkspace
Dim wert As Variant

Set sess = New notessession
Set cdb = sess.currentdatabase
Set col = cdb.unprocesseddocuments     
Set doc = col.getfirstdocument

Call ws.DialogBox("form_db_lps_select", True, True, False, False, False, False, "Auswahl", doc)

wert = doc.Untitled

Call col.StampAll("sfd_pri_select_contact", wert(0))
Titel: Re: Wert über DialogBox ändern
Beitrag von: seerow am 27.09.04 - 11:30:13
Danke Diri, ich seh meinen Fehler. Ich habe vergessen den Feldnamen zu definieren......