Domino 9 und frühere Versionen > Entwicklung
Feldänderung über Agent
webchild:
Beispiel -Code zum anpassen:
Sub Initialize
'Variablen definieren
Dim session As New NotesSession
Dim db As NotesDatabase
Dim collection As NotesDocumentCollection
Dim doc As NotesDocument
Dim varkat As String
'Variablen festlegen
'die aktuelle Datenbank als Arbeitsdatenbank festlegen
Set db = session.CurrentDatabase
'alle markierten Dokumente in einer Sammlung zusammenfassen
Set collection = db.UnprocessedDocuments
'das erste Dokument auswählen
Set doc = collection.GetFirstDocument()
'Wert für kategorie erfragen
varkat = InputBox("Bitte Kategorie eintragen")
'Mit einer Schleife in allen markierten Dokumenten das Feld Categories
'mit dem erfragten Wert füllen
While Not(doc Is Nothing)
doc.Categories=varkat
Call doc.Save( True, True )
Set doc = collection.GetNextDocument(doc)
Wend
End Sub
regedit:
Hallo,
danke, es hat so weit funktioniert, allerdings möchte ich jetzt noch einen kleinen Schritt weitergehen.
Das Feld Categories ist vom Typ Dialogfeld, Bearbeitbar und Mehrfachwerte zulassen. Die Auswahl der Kategorien bezieht es durch folgende Formel:
Liste := @DbColumn("":"NoCache"; ""; "(&Categories)"; 1);
@If(@IsError(Liste); ""; Liste)
Schön wäre es, wenn ich die betreffenden Dokumente markiere, diesen Agent starte und ich die momentan ausgewählten und nicht ausgewählten Kategorien in einer Liste angezeigt bekomme, diese durch z.B."anhaken" bearbeiten kann und gegebenenfalls durch Eingabe einer neuen Kategorie erweitern kann.
Ach ja, die Ansicht (&Categories) hat nur eine Spalte, in der das Feld Categories mit SELECT Categories != "" angezeigt werden.
Hat jemand eine Idee?
koehlerbv:
Deine Frage ist reichlich unspezifisch. Und wie die Listenwerte in das Feld "Categories" 'reingekommen sind, ist für die Fragestellung gänzlich unerheblich.
Eine Anmerkung: Da Du ja mehrere Dokumente markieren kannst - was machst Du, wenn da Dokumente gewählt werden, die unterschiedliche Werte in "Categories" haben ? Oder soll bei jedem Dokument einzeln nachgefragt werden ?
Versuche mal, Deine Fragen in dieser Sache so zu stellen, dass sie auch in Portionen beantwortet werden können.
Bernhard
regedit:
Hm, wo Du recht hast, hast Du recht.
Ich möchte, dass das Script eine Auswahl aller Kategorien(Spalte1 der Ansicht (&Categories)) anzeigt, ich davon mehrerer auwählen kann und diese dann in das Feld Categories für alle vorher ausgewählten Dokumenten setzt.
koehlerbv:
Das knackig-kürzeste dürfte folgendes Vorgehen sein (den Zugriff auf die gewählten Docs hast Du ja schon):
Mit Evaluate (auf Dein @dbColumn) füllst Du ein Variant mit allen gegebenen Categories-Werte.
Diese bietest Du mit NotesUIWorkspace.Prompt an und bekommst die Auswahl zurück.
Mit dem so erhaltenen Wert füllst Du nun die gewählten Dokumente.
HTH,
Bernhard
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln