Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: Bille am 20.08.04 - 15:44:24

Titel: Berechnete Felder in Dokument mit LS aktualisieren
Beitrag von: Bille am 20.08.04 - 15:44:24
Hallo @ all!

Ich sitze hier vor einem vermeintlich einfachem Problem fest:

In meiner Datenbank existieren 2000 Dokumente mit gleicher Maske, die jeweils berechnete Felder enthalten.
Da sich nun die Basis für die Berechnung geändert hat, muß ich die bestehenden Dokumente aktualisieren.

Wenn ich ein Dokument öffne und wieder speichere, werden die berechneten Felder schön aktualisiert.

Da ich natürlich nicht alle Änderungen manuell durchführen möchte, habe ich einen Agenten mit folgendem Code erstellt.

     Set col = db.unprocesseddocuments
     Set doc = col.getfirstdocument        
     For x = 1 To col.count
          ????????
          Call doc.Save (True, False)
          Set doc = col.getnextdocument(doc)
     Next x


Nur fehlt mir jetzt der Mittelteil, in dem ich die Aktualisierung des Dokuments anstoßen kann.
So wie bei UI-Dokumenten mit doc.refresh().
Durch Speichern allein passiert gar nix ...

Da muss es doch was geben, oder?

Könnt Ihr mir bitte helfen?

Gruß,
Bille
Titel: Re:Berechnete Felder in Dokument mit LS aktualisieren
Beitrag von: Glombi am 20.08.04 - 15:55:40
Es geht so:

Set col = db.unprocesseddocuments
    Set doc = col.getfirstdocument        
    For x = 1 To col.count
call doc.ComputeWithForm(false,false)
          Call doc.Save (True, False)
          Set doc = col.getnextdocument(doc)
    Next x


aber noch einfacher mit Formelsprache  ;)
Agent, Einmal ausführen mit der Formel
@Command([ToolsRefreshSelectedDocs])

Andreas
Titel: Re:Berechnete Felder in Dokument mit LS aktualisieren
Beitrag von: Bille am 20.08.04 - 16:12:03
Glombi, Du bist der Beste!!!

Vielen Dank für Deine schnelle Hilfe!

Greetings
Bille

PS: Die Formelsprache hab ich bei der Thematik total aus den Augen verloren. Sollte wohl nicht dieses "Einbahnstrassen-Denken" entwickeln ...