Autor Thema: Performante ProgressBar  (Gelesen 3062 mal)

Offline Buzzy

  • Frischling
  • *
  • Beiträge: 40
Performante ProgressBar
« am: 30.03.15 - 08:53:35 »
Hi zusammen,

ich befürchte ja, dass es für mein Anliegen keine zufriedenstellende Lösung gibt, aber fragen kost ja nix.
Ich Rufe aus einer Maske in DB Albert eine zweite Maske in DB Berta auf. Auf dem PostOpen der Maske in Berta baue ich mir ein Array aus Objekten zusammen, wobei jedes Objekt ein Dokument aus der DB repräsentiert.
Das Problem: nachdem das Objekt-Array aus bis zu 120K Objekten besteht, dauert das ein Weilchen (~2 Minuten). DAS wäre auch noch nicht das Problem, sondern dass der User außer dem Notes-Blitzchen nix mitbekommt.
Ich habe schon diverse Ansätze ausprobiert. Grafische ProgressBar - mein Favorit: http://www.bizzybee.be/2007/08/31/a-progress-bar-in-lotus-notes/) oder auch einfach via Notes Status-Bar.
Aber sowohl 120K mal uidoc.resfresh, als auch 120K mal "Print" erhöhen die Dauer um den Faktor 3 :-|

Hat einer vielleicht noch ne alternative Idee, wie man den User auf dem Laufenden halten kann?

Danke & Gruß,
Buzzy

Offline Peter Klett

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.713
  • Geschlecht: Männlich
Re: Performante ProgressBar
« Antwort #1 am: 30.03.15 - 09:10:59 »
Printe nicht bei jedem Dokument, sondern bei jedem 1000., dann sind das nur 120 Prints, das dürfte kaum auf die Perfomance gehen

Offline Buzzy

  • Frischling
  • *
  • Beiträge: 40
Re: Performante ProgressBar
« Antwort #2 am: 30.03.15 - 09:45:44 »
Prima - ist erträglich ;-)

Ich hatte zwar schon mal sowas ähnliches gefunden & ausprobiert, was auch recht lahm war, aber da wurde noch recht viel berechnet, um eine ProgressBar in der Status-Zeile nachzubauen...

Danke!

Grüße,
Buzzy

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.881
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Performante ProgressBar
« Antwort #3 am: 30.03.15 - 09:59:47 »
Ich verwende in solchen Fällen eine Klasse, die ich vor langer Zeit gefunden habe, die den "Standard"- Progressbar des Notes- Clients per API- Call nutzbar macht. Der kostet -in meinen Anwendungsfällen- auch kaum Performance. Und den Update kann man ja -wie Peter geschrieben hat- nur alle 500 oder 1000 Dokumente machen...
Das Ding wird -u.a.- bei OpenNTF in Projekten verwendet. Hier ein Beispiel, das sogar berücksichtigt, dass dieser Progressbar den Client zum Absturz bringt, wenn er im Debugmodus aktiviert ist.
Gruss
Torsten (Tode)

P.S.: Da mein Nickname immer mal wieder für Verwirrung sorgt: Tode hat NICHTS mit Tod zu tun. So klingt es einfach, wenn ein 2- Jähriger versucht "Torsten" zu sagen... das klingt dann so: "Tooode" (langes O, das r, s und n werden verschluckt, das t wird zum badischen d)

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz