Autor Thema: Lotus Script: Wie greife ich auf das aktuelle Dokument zu?  (Gelesen 7488 mal)

Offline Jens_1

  • Senior Mitglied
  • ****
  • Beiträge: 440
  • Geschlecht: Männlich
Hallo NG,

irgendwie habe ich wohl gerade ein Brett vor'm Kopf...
Ich möchte in einer Maildatenbank ein Mailtemplate entwerfen welches über einen Button verfügt.
Dieser Button soll im aktuellen Dokument, also das in welchem der Button eingebettet ist, ein Feld einfügen und einen Wert reinschreiben.
Eigentlich doch eine profane Sache - oder?
Welche Eigenschaft welcher Klasse muss ich denn da nehmen?
Über die NotesDocument-Klasse komme ich ja nicht weiter da so etwas ähnliches wie die "CurrentDatabase property" aus der Notes Session-Klasse nicht verfügbar ist.

Wer weiß Rat?

Gruß
Jens
« Letzte Änderung: 26.08.08 - 08:35:56 von Jens_1 »
CLP Domino R5 System Administrator
CLP IBM Lotus Domino 6 System Administrator
CLP IBM Lotus Domino 7 System Administrator
IBM Certified System Administrator - Lotus Notes and Domino 8

Offline HH

  • Senior Mitglied
  • ****
  • Beiträge: 339
  • Geschlecht: Männlich
Re: Lotus Script: Wie greife ich auf das aktuelle Dokument zu?
« Antwort #1 am: 25.08.08 - 15:07:57 »
notesuiworkspace, notesuidocument, document

Hubert

Offline Jens_1

  • Senior Mitglied
  • ****
  • Beiträge: 440
  • Geschlecht: Männlich
Re: Lotus Script: Wie greife ich auf das aktuelle Dokument zu?
« Antwort #2 am: 25.08.08 - 15:08:17 »
Brett weggenommen!

Über NoteUIWorkspace wird's wohl gehen...  ;)
CLP Domino R5 System Administrator
CLP IBM Lotus Domino 6 System Administrator
CLP IBM Lotus Domino 7 System Administrator
IBM Certified System Administrator - Lotus Notes and Domino 8

Offline Jens_1

  • Senior Mitglied
  • ****
  • Beiträge: 440
  • Geschlecht: Männlich
Re: Lotus Script: Wie greife ich auf das aktuelle Dokument zu?
« Antwort #3 am: 25.08.08 - 15:09:01 »
notesuiworkspace, notesuidocument, document

Hubert

Fast zeitgleich  :)

Trotzdem Dankeschön!

Gruß
Jens
CLP Domino R5 System Administrator
CLP IBM Lotus Domino 6 System Administrator
CLP IBM Lotus Domino 7 System Administrator
IBM Certified System Administrator - Lotus Notes and Domino 8

Driri

  • Gast
Re: Lotus Script: Wie greife ich auf das aktuelle Dokument zu?
« Antwort #4 am: 25.08.08 - 15:13:32 »
CurrentDocument gibt es nur im NotesUIWorkspace. Damit würdest Du das aktuell geöffnete Frontend-Dokument bekommen.  Hier hast Du aber mit FieldSetText zwei Probleme : erstens muß das Dokument im EditModus sein uns zweitens muß das Feld vorhanden sein.

Alternativ könntest Du über uidoc.Document auf das Backend-Dokument zugreifen und da das Feld setzen, allerdings müßtest Du dieses dann speichern und im Frontend neu öffnen, da ansonsten beim Speichern des uidocs im Backend gesetzte Werte wieder überschrieben werden könnten bzw. im uidoc nicht existieren.

Offline Jens_1

  • Senior Mitglied
  • ****
  • Beiträge: 440
  • Geschlecht: Männlich
Re: Lotus Script: Wie greife ich auf das aktuelle Dokument zu?
« Antwort #5 am: 25.08.08 - 16:09:57 »
CurrentDocument gibt es nur im NotesUIWorkspace. Damit würdest Du das aktuell geöffnete Frontend-Dokument bekommen.  Hier hast Du aber mit FieldSetText zwei Probleme : erstens muß das Dokument im EditModus sein uns zweitens muß das Feld vorhanden sein.

Alternativ könntest Du über uidoc.Document auf das Backend-Dokument zugreifen und da das Feld setzen, allerdings müßtest Du dieses dann speichern und im Frontend neu öffnen, da ansonsten beim Speichern des uidocs im Backend gesetzte Werte wieder überschrieben werden könnten bzw. im uidoc nicht existieren.

Stimmt! Genau in die Probleme bin ich gerade reingelaufen...  ;)
Das Dokument ist immer im Edit-Modus. Das ist also kein Problem.

Zum Backend-Dokument habe ich mich schon durchgehangelt. Das müsste doch möglich sein, da das feld zu setzen, zu speichern und das Fronend-Dokument zu aktualisieren ohne einmal zu schließen - oder?

Zum Verständnis. Was will ich eigentlich machen?

Ein kleine Spielerei  :D

Eine Checkliste soll erstellt werden.
Dazu möchte ich ein Mail-Template mit einer Tabelle erstellen in welcher in der letzten Spalte zwei Bilder (rule_on.gif & rule_off.gif aus den Ressourcen) angezeigt werden.
Je nach Abhängigkeit von einem Feldwert soll eines der beiden Bilder sichtbar sein.
Im Edit-Modus soll ein Button sichtbar sein, der den Wert eines korrepondierenden Feldes ändert damit entweder Bild 1 oder Bild 2 angezeigt wird.
Quasi wie ein Besprechungsprotokoll wo man Punkte abhaken kann.
Ach ja, und das Mailtemplate ist absolut tabu!!!!  ;)

Gruß
 Jens
CLP Domino R5 System Administrator
CLP IBM Lotus Domino 6 System Administrator
CLP IBM Lotus Domino 7 System Administrator
IBM Certified System Administrator - Lotus Notes and Domino 8

Driri

  • Gast
Re: Lotus Script: Wie greife ich auf das aktuelle Dokument zu?
« Antwort #6 am: 25.08.08 - 16:20:41 »
Zitat
Zum Backend-Dokument habe ich mich schon durchgehangelt. Das müsste doch möglich sein, da das feld zu setzen, zu speichern und das Fronend-Dokument zu aktualisieren ohne einmal zu schließen - oder?

Such mal hier im Forum nach "ReOpen". Anton (ata) hat da mal eine Funktion für geschrieben. Das Backend-Dokument wird dann gespeichert, das Dokument im Frontend geschlossen und neu geöffnet. Das geht i.d.R. so fix, daß der Anwender das Neuöffnen gar nicht bemerkt.

Offline LN4ever

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 505
  • Geschlecht: Männlich
Re: Lotus Script: Wie greife ich auf das aktuelle Dokument zu?
« Antwort #7 am: 25.08.08 - 18:10:40 »
Hallo Jens,

wenn du im Backend ein Feld setzst, das kein RT-Item ist, reicht schon ein uidoc.Reload, um den Wert ins Frontend zu holen.

Vielleicht noch ein Refresh, damit es auch sichtbar wird.

Und wenn das Backend-Dokument als uidoc.Document gesetzt ist, reicht auch nur ein Refresh.

Gruß

Norbert
Situs vilate in isse tabernit.

Offline Jens_1

  • Senior Mitglied
  • ****
  • Beiträge: 440
  • Geschlecht: Männlich
Re: Lotus Script: Wie greife ich auf das aktuelle Dokument zu?
« Antwort #8 am: 26.08.08 - 07:09:19 »
Danke für die wunderbaren Tips. Ich will mal schauen, ob ich das heute umgesetzt kriege.

Gruß
Jens
CLP Domino R5 System Administrator
CLP IBM Lotus Domino 6 System Administrator
CLP IBM Lotus Domino 7 System Administrator
IBM Certified System Administrator - Lotus Notes and Domino 8

Offline Jens_1

  • Senior Mitglied
  • ****
  • Beiträge: 440
  • Geschlecht: Männlich
Re: Lotus Script: Wie greife ich auf das aktuelle Dokument zu?
« Antwort #9 am: 26.08.08 - 08:33:59 »
Eine Frage noch:

Damit die beiden Grafiken jeweils in Abhängigkeit vom Status des Feldes angezeigt werden habe ich eine entsprechende Formel bei "Absatz verbergen, wenn Formel wahr ist" eingefügt.
Das funktioniert auch perfekt. Aber ich tu mich schwer zu begreifen warum. Eigentlich dürfte das doch nicht funktionieren - oder?
Mag mir einer auf die Sprünge helfen?

Die Formel ist wie folgt:

@If(@IsAvailable(Status) = 0; @False; Status = 0)

Also:
Der Absatz wird verborgen wenn das Ergebnis der Formel "Wahr" bzw. 1 ergibt.

Die If-Bedingung fragt die Existenz des Feldes "Status ab". Wenn es nicht vorhanden ist, tritt Aktion 1 in Kraft - @False. Was unwahr bzw. "0" zurückliefert.
Wenn das Feld bereits vorhanden ist, wird der Inhalt des Feldes "Status" verglichen und wenn der Wert "0" ist, ist die Bedingung wahr. Der Absatz wird nicht angezeigt.

Wieso wird der Absatz (richtigerweise) nicht angezeigt wennn das Feld noch nicht vorhanden ist?

Gruß
Jens
CLP Domino R5 System Administrator
CLP IBM Lotus Domino 6 System Administrator
CLP IBM Lotus Domino 7 System Administrator
IBM Certified System Administrator - Lotus Notes and Domino 8

Offline Jens_1

  • Senior Mitglied
  • ****
  • Beiträge: 440
  • Geschlecht: Männlich
Re: Lotus Script: Wie greife ich auf das aktuelle Dokument zu?
« Antwort #10 am: 26.08.08 - 08:46:39 »
Vergesst es. Irgenwo war ein Tippfehler oder sonstwas drin.
Es funktioniert nur mit @True.

Gruß
Jens
CLP Domino R5 System Administrator
CLP IBM Lotus Domino 6 System Administrator
CLP IBM Lotus Domino 7 System Administrator
IBM Certified System Administrator - Lotus Notes and Domino 8

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz