Autor Thema: Emmbedded View aktualisieren  (Gelesen 4228 mal)

Offline schwaste

  • Junior Mitglied
  • **
  • Beiträge: 51
  • Ich liebe dieses Forum!
Emmbedded View aktualisieren
« am: 12.11.03 - 16:22:00 »
Hallo zusammen,

ich hab ein Problem... schon wieder.

zuerst zur Ausgangslage: Ich habe eine Maske, in der ist eine EmbeddedView eingebaut. Diese EmbeddedView enthält verschiedene Dokumente.
Nun suche ich eine Möglichkeit, wenn ich zum Beispiel einen aktualisieren knopf drücke, dass sich die Dokumente kurz öffnen, editieren, speichern und wieder schliessen, also sowas ähnliches wie "toolsrefreshalldocs".
Es geht aber nicht mit der @Formel, dieses muss in LotusScript sein.
Wie stell ich das an?

Für Antworten bin ich wie immer super dankbar.


Gruß Steffen

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Emmbedded View aktualisieren
« Antwort #1 am: 12.11.03 - 16:24:46 »
... geht es um die Aktualisierung der eingebetteten View, oder um eine Neuberechnung aller Dokumente in der Ansicht?

ata
Grüßle Toni :)

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:Emmbedded View aktualisieren
« Antwort #2 am: 12.11.03 - 18:51:37 »
Hi,

ich vermute mal es geht um die Aktualisierung der Dokumente, die in der eingebetteten Ansicht angezeigt werden. Das ist nicht ganz so trivial wie es sich vielleicht anhört, denn einfach die Dokumente in der Ansicht markieren und einen Button drücken, ist nicht. Du hast kein Zugriff auf die markierten Dokumente einer eingebetteten Ansicht.

Du musst dir die Dokumente anders besorgen, z.B. über eine Suche mit der Methode Search aus der NotesDatabase-Klasse. Damit hast du die entsprechenden Dokumente in einer Collection und kannst die Dokumente der Reihe nach abarbeiten.

Allerdings gibt es in Script keine 100% funktionierende Lösung für die Formelbefehle "ToolsRefreshAllDocs" bzw. "ToolsRefreshSelectedDocs". Du kannst es mal mit der Methode ComputeWithForm aus der Klasse NotesDocument versuchen. Allerdings werden meines Wissens hier keine berechneten Felder aktualisiert.

Die andere Möglichkeit, die hab ich mal probiert, ist die Dokumente aus der Collection in einer Schleife mit Frontend-Befehlen zu öffnen, zu speichern und wieder zu schliessen. Haken bei dieser Lösung ist, der Client schmiert irgendwann ab. Das Problem hab ich hier im Forum auch noch von anderen Usern gehört.

Erkläre mal, was du genau machen willst. Vielleicht gibt es einen anderen Weg.

Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline schwaste

  • Junior Mitglied
  • **
  • Beiträge: 51
  • Ich liebe dieses Forum!
Re:Emmbedded View aktualisieren
« Antwort #3 am: 13.11.03 - 09:37:30 »
Hallo,

so, ich erklär nochmal, was ich genau will.
Ich bastel an einer Art CallTrackingSystem, d.h. der Kunde gibt sein Problem in einen Call, eine bestimmte Maske, ein und wir bearbeiten das Problem. Der Call erhält eine Call-ID, die eindeutig ist. Nun gibt es zu jedem Call FolgeDokumente wie Rückfragen, Antworten usw. Diese Folgedokumente haben eine andere Maske und sind dann als eingebettete Ansicht im Hauptdokument verfügbar, und zwar in der Reihenfolge, in der sie erstellt werde.
Das Problem ist nun, das die Sortierung oft nicht stimmt und ich dieses Problem nur dadurch lösen kann, dass ich die Dokumente kurz öffne, irgendwas editiere und dann wieder speichere. Dies will ich aber nicht bei jedem Dokument einzeln machen, sondern per Knopdruck bei allen, die in der embedded View vorhanden sind, und zwar aus dem Hauptdokument heraus. Und das ganze muss noch in Lotusscript sein, weil der aktualisieren knopf auch noch andere sachen berechnet, daher kann ich das toolsrefreshdocs nicht nehmen.

Ich hoffe auf Antworten, bitte bitte bitte...

Gruß Schwaste

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:Emmbedded View aktualisieren
« Antwort #4 am: 13.11.03 - 09:44:15 »
Hi,

was verstehst du denn unter "irgendwas editieren" ?

Axel





Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Emmbedded View aktualisieren
« Antwort #5 am: 13.11.03 - 09:49:05 »
... wenn du es über die eingebettete Ansicht machen willst wird das Handling umständlich. Man kann auf Dokumente daraus zugreifen - ich habe das mal in einer Demo exerziert...

... du findest sie auf meiner Homepage unter

http://www.anton-tauscher.de/download/DynView.nsf

... ich würde dir allerdings empfehlen es über eine Picklist zu machen. Der Weg ist einfacher und schneller realisierbar...

ata

« Letzte Änderung: 13.11.03 - 10:16:26 von ata »
Grüßle Toni :)

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:Emmbedded View aktualisieren
« Antwort #6 am: 13.11.03 - 10:05:58 »

... ich würde dir allerdings empfehlen es über eine Picklist zu machen. Der Weg ist einfacher und schneller realisierbar...


Hi,

ich glaube nicht, dass es das ist was er will. Meine Vermutung geht dahin, dass es einen Button geben soll. Da klickt man dann drauf und dann sollen alle Dokumente der eingebetteten Ansicht aktualisiert werden.

Meines Erachtes geht das am einfachsten über ein Search nach dem entsprechenden Kriterium. Das sollte bei einer embedded view ja vorhanden sein. Dann hat man alle Dokumente in einer Collection.

Das Problem wird in der geforderten Aktualisierung liegen. An so einem Problem bin ich schon mal gescheitert.


Axel
 
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline schwaste

  • Junior Mitglied
  • **
  • Beiträge: 51
  • Ich liebe dieses Forum!
Re:Emmbedded View aktualisieren
« Antwort #7 am: 13.11.03 - 10:06:54 »
@Axel


ich muss nur z.B. ein Leerzeichen irgendwo einfügen und dann speichern, dann tuts

@ata

kannst du mir das mal erklären wie das im script aussieht mit den picklisten?

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Emmbedded View aktualisieren
« Antwort #8 am: 13.11.03 - 10:19:04 »
... 2 Möglichkeiten

PickList => gibt es über NotesUIWorkspace oder über Formel
... mehr dazu in der Hilfe, da sind brauchbare Beispiele drin...

oder per LS über die Ansicht, die du bereits verwendest und dann in eine NotesDocumentCollection mit view.GetAllDocumentsByKey( "der Schlüssel des Kunden" , True )
... dann hast du alle Dokumente des Kunden

ata
Grüßle Toni :)

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:Emmbedded View aktualisieren
« Antwort #9 am: 13.11.03 - 10:19:04 »
Hi,

wie willst du denn das automatisieren?


Das mit der Picklist ist eigentlich ganz einfach. Du nimmst als Ansicht für die Picklist die gleiche Ansicht wie für die eingebettete Ansicht. Seit der Version 5 kannst du der Picklist-Funktion einen Parameter für eine Kategorie die angezeigt werden soll, übergeben. Du hast in der Picklist-Anzeige dann die gleiche Anzeige wie in der eingebetteten Ansicht. Die PicklistCollection liefert dir dann eine Collection mit allen ausgewählten Dokumenten. In der Designer-Hilfe findest du weitere Infos zu PicklistCollection.

Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re:Emmbedded View aktualisieren
« Antwort #10 am: 13.11.03 - 10:29:25 »
@Axel

... zeitgleiche Antwort - aber hoppala

ata  ;D
Grüßle Toni :)

Offline schwaste

  • Junior Mitglied
  • **
  • Beiträge: 51
  • Ich liebe dieses Forum!
Re:Emmbedded View aktualisieren
« Antwort #11 am: 13.11.03 - 11:31:16 »
Hallo


vielen Dank für die Antworten, ich hoffe ich kann mir da was zusammenschustern.

Gruß Schwaste

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:Emmbedded View aktualisieren
« Antwort #12 am: 13.11.03 - 12:32:58 »
Hi,

versuch's mal mit ComputeWithForm. Ich kann dir aber nicht versprechen ob's funktioniert.

Könnte ansatzweise so aussehen

Dim ws As New NotesUIWorkspace
Dim collection As NotesDocumentCollection
Dim doc as NotesDocument

...
Set collection = ws.PickListCollection(...

Set doc = collection.GetFirstDocument
While Not (doc Is Nothing)
  Call doc.ComputeWithForm(True, True)
  Call doc.Save(True,False)
  Set doc = collection.GetNextDocument(doc)
Wend
...
 
Wie gesagt, ob's funktioniert musst du testen. Im Backend bist du in dieser Beziehung etwas aufgeschmissen. Es gibt keine richtige Funktion zum Aktualisieren.

Die einzigste richtige Methode um ein Dokument zu aktualisieren ist die Frontend-Methode Refesh (aus NotesUIDocument). Dazu muss das Dokument aber im Edit-Modus geöffnet sein. Das automatisiert zu machen bringt nach einigen Dokumenten den Client zum Absturz.


Axel
Ohne Computer wären wir noch lange nicht hinterm Mond!

Offline schwaste

  • Junior Mitglied
  • **
  • Beiträge: 51
  • Ich liebe dieses Forum!
Re:Emmbedded View aktualisieren
« Antwort #13 am: 13.11.03 - 12:52:46 »
Hi axel,

das computewithforms berechnet berechnete felder nicht neu, das ist das problem dabei, daher gehts net so, ausserdem läufts im backend irgendwie net so richtig...

gruß Schwaste

Offline Axel

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.658
  • Geschlecht: Männlich
  • It's not a bug, it's Notes
Re:Emmbedded View aktualisieren
« Antwort #14 am: 13.11.03 - 13:11:31 »
Hi,

das war mir fast klar. Ich stand vor einiger Zeit vor dem gleichen Problem.

Ich habe dafür auch keine passende Lösung gefunden. Zum Schluß habe ich es manuell gemacht, jedes Dokument geöffnet, neu berechnet, gespeichert und wieder geschlossen. War Gott sei Dank nur eine Datenübernahme und nicht so viele Dokumente.

Leider fällt mir hierzu nichts mehr passendes ein.  :'(


Axel

Ohne Computer wären wir noch lange nicht hinterm Mond!

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz