Domino 9 und frühere Versionen > ND6: Administration & Userprobleme

Art der Dokumentmarkierung

<< < (2/4) > >>

DatenDuck:
Ich glaubs nicht... Ich verfasse hier die Antwort des Jahrhunderts und beim Posten schmiert der gammlige IE ab... >:(

OK dann eben nochmal... Und diesmal leider weniger Detailiert und vorher lieber Strg+a, Strg+c...

Guten Morgen erstmal,
also der Agent ist "auf alle markierten Dokumente" gesetzt und wird über eine Aktionsschaltfläche gezündet.
In der Aktion wird der Agent per "@Command([ToolsRunMacro];" gestartet, welcher ansich in LotusScript verfasst ist. Somit müsste der Agent doch auf alle tatsächlich (durch Häkchen) markierten Dokumente wirken oder?
In einer Aktion werden doch sicherlich erstmal alle Agenten auf jedes Markierte Dokument angewandt und nicht erst Agent 1 auf alle, dann Agent 2 auf alle usw?
Ich vermute dass der Fehler mal wieder in der Programmierung liegt, denn ich schaffe es mit wenig Gefummel, dass das zu ändernde Icon in allen Dokumenten der DB bearbeitet wird, obwohl nur eins markiert ist...
Folgend mal der code:

--- Code: ---   Dim session As New NotesSession
   Dim db As NotesDatabase
   Dim dc As NotesDocumentCollection
   Dim doc As NotesDocument
   
   Set db = session.CurrentDatabase
   Set dc = db.UnprocessedDocuments
   Set doc = dc.GetFirstDocument
   
   If Not (doc Is Nothing) Then
      Call doc.ReplaceItemValue("$ContentIcon", "Logo.gif")
      Call doc.Save(True,True,True)
   End If
--- Ende Code ---
Man wär das schön, wenn man Routine essen könnte...

So jetzt versuch ichs nochmal mit dem Posten, aber vorher wie erwähnt Strg+A, Strg+C.

Bis dann mal,
-Moritz

macchina:
Hallo!

So wie ich das überblicke fehlt Dir folgendes:
set doc = dc.GetNextDocument(doc)

Ich würde es so machen:

do until doc is nothing
      Call doc.ReplaceItemValue("$ContentIcon", "Logo.gif")
      Call doc.Save(True,True,True)
      set doc = dc.GetNextDocument(doc)
loop

DatenDuck:
Danke für den Tipp!
Leider funktioniert er aber nicht.... Ich hatte es auch schonmal so ähnlich... Hatte glaube ich nur nicht den do loop verwendet...
Es wird so nach wie vor nur ein icon geändert...
Zum verzweifeln... Ich bastel das jetzt seit 2 Tagen rum und ich bin mir sicher, die Ursache ist minimal... Aber wo???

Glombi:
Wird in der Aktion nur der Agent aufgerufen, oder werden mehrere Agenten aufgerufen.

Es fehlt auf jeden Fall in Deinem Code die Schleife! So wird immer nur das erste Dokument der Collection geändert.

Andreas

DatenDuck:
Hallo Andreas,

die Schleife ist nun drin und ich hatte einen kleinen Druchbruch  :)
Ich habe folgendes herausgefunden:

1. Wenn ich per "load convert bla bla" die DB update, bekomme ich Änderungen an Aktionen erst mit, wenn ich den Client neu starte !? Bei Änderungen an Agenten reicht ein neu Öffnen der DB aus.... Seltsam

2. In der Aktion starte ich 2 Agenten jeweils per @Command(usw). Dort ist mir aufgefallen, dass nur der Agent in der ersten Zeile auf alle markierten Dokumente anspringt. Setze ich den "Iconänderungsagenten" in die erste Zeile, wird brav an allen Dokumenten das Icon geändert, jedoch trifft dann der 2. Agent nur auf das eine Dok zu.. Ist das eine Auskunft zu der es eine Erklärung gibt?

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln