Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Kadlec am 26.01.07 - 10:18:29
Titel: Mit Dialogbox mehrere Dokumente einer Ansicht ändern.
Beitrag von: Kadlec am 26.01.07 - 10:18:29
Hallo zusammen Ich möchte in einer Ansicht verschiedene Dokumente ändern. Da die Dialogbox ja die Sicht auf die Ansicht verdeckt möchte ich in der Dialogbox verschiedene Felder des zu ändernden Doks. anzeigen.
Leider wird immer nur der Wert des Dokuments, das mit dem "Auswahlbalken" markiert ist angezeigt, nicht aber die anderen mit einem Haken selektierten.
Auszug aus dem Code.
Dim ws As New NotesUIWorkspace Dim uiview As NotesUIView Dim session As New NotesSession Dim db As NotesDatabase Dim collection As NotesDocumentCollection Dim doc As NotesDocument
Set db = session.CurrentDatabase Set uiview = ws.CurrentView Set collection = uiview.Documents Set doc = collection.GetFirstDocument
While Not (doc Is Nothing) Call ws.DialogBox( "PRTSDC", True, True,False,True, "xxxxxxx",doc ) PartNo = doc.GetItemValue( "PartNumber_T" ) Set doc = collection.GetNextDocument (doc) Wend
Die verschiedenen Doks. sind in der collection vorhanden.
Gruss Boris
Titel: Re: Mit Dialogbox mehrere Dokumente einer Ansicht ändern.
Beitrag von: dirk_2909 am 26.01.07 - 10:45:45
Hallo,
Du musst Dir aus allen markierten Dokumenten die entsprechenden Werte "rausschreiben" und in entsprechende Felder eines Dokumentes schreiben, dass Du temporär erzeugst.
Dieses temporäre Dok musst Du dann der Dialogbox übergeben....
Titel: Re: Mit Dialogbox mehrere Dokumente einer Ansicht ändern.
Beitrag von: Kadlec am 26.01.07 - 11:44:35
Hab jetzt mal folgendes gemacht was aber auch nicht funktioniert.
Dim ws As New NotesUIWorkspace Dim uiview As NotesUIView Dim session As New NotesSession Dim db As NotesDatabase Dim collection As NotesDocumentCollection Dim doc As NotesDocument
Set db = session.CurrentDatabase Set uiview = ws.CurrentView Set collection = uiview.Documents Set doc = collection.GetFirstDocument
While Not (doc Is Nothing) PartNo = doc.GetItemValue( "PartNumber_T" )
Set docTmp = db.CreateDocument() docTmp.PartNo = PartNo Call ws.DialogBox( "PRTSDC", True, True,False,True, "xxxxxxx",docTmp ) Set doc = collection.GetNextDocument (doc) Wend
...und in meiner Teilmaske für die Box habe ich dann den Feldnamen PartNo angezogen.
Titel: Re: Mit Dialogbox mehrere Dokumente einer Ansicht ändern.
Beitrag von: umi am 26.01.07 - 11:51:23
Schau Dir nochmals die Syntax von Dialogbox an, fehlen da nicht noch ein paar parameter? oder wenigstens die ,,,
Titel: Re: Mit Dialogbox mehrere Dokumente einer Ansicht ändern.
Beitrag von: dirk_2909 am 26.01.07 - 11:58:59
Titel: Re: Mit Dialogbox mehrere Dokumente einer Ansicht ändern.
Beitrag von: botschi am 26.01.07 - 12:10:33
Willst Du nur EIN Dokument via Dialogbox ändern oder MEHRERE (alle angehakten)?
Dann musst Du Dir die Werte (die Du anzeigen willst) in einer Schleife holen, bevor die Dialogbox angezeigt wird. Dann der Dialogbox die Werte übergeben und dann per Collection.StampAll die Werte in alle markierten Dokumente schreiben.
Matthias
Titel: Re: Mit Dialogbox mehrere Dokumente einer Ansicht ändern.
Beitrag von: Kadlec am 26.01.07 - 12:24:28
Hallo war erst mal was essen. Hatte davor schon eine Ahnung das evt. ein Parameter bei der Dialogbox fehlt was ja dann auch Umi noch mal schrieb. Habe die entsprechende Zeile dann ergänzt und siehe da es funktioniert. Habe dann mal das mit dem Temp doc rausgenommen, auch das funktioniert wie es soll.