Autor Thema: Notes Mail Vorgefertigten Text per Button hinzufügen  (Gelesen 3107 mal)

Offline snboy2010

  • Frischling
  • *
  • Beiträge: 16
Hallo. Vielleicht könnte mir hier geholfen werden. Ich arbeite gerade an mit einem IBM Notes Mail 9. Ich möchte, dass in der Symbolleiste ein Button hinzugefügt wird. Jedes mal, wenn ich dann ein Mail selektiere und auf den Button klicke, soll die Mail in einem Bearbeitungsmodus geöffnet werden und es soll gleich am Anfang in blauer Schrift eine Tabelle mit zwei Spalten und zwei Zeilen eingefügt werden. Links in den beiden Zeilen soll dann stehen "bearbeitet" und "nicht bearbeitet". Rechts sollen dann jeweils zwei Checkboxen sein, wo man entsprechend ein Hacken setzen kann. Früher unter Outlook konnte ich das mit VBA machen. Mit Lotus Notes kenne ich mich jetzt überhaupt nicht aus. Aber vielleicht wäre hier jemand so freundlich und würde mir eine kurze Anleitung geben. 

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.870
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Notes Mail Vorgefertigten Text per Button hinzufügen
« Antwort #1 am: 01.07.21 - 12:15:31 »
Das ist leider mit einer "kurzen Anleitung" nicht getan. Die Buttons in der Symbolleiste können nur @Formula, und mit dieser Programmiersprache ist das, was Du willst, nicht zu lösen. Dafür brauchst Du "LotusScript".

LotusScript steht aber in der Symbolleiste nicht zur Verfügung. Du müsstest also einen Agenten schreiben, den Du dann über das "Aktionen"- Menu aufrufen kannst. LotusScript ist Visual Basic sehr ähnlich (beinahe identisch), Du brauchst nur die entsprechenden Notes- Klassen "NotesSession", "NotesDatabase", "NotesDocument", "NotesRichtextItem" u.a. Die Hilfe dazu findest Du in der Designer- Hilfe. Aber "kurze Anleitung" ist hier wie gesagt nicht, die Richtext- Manipulation (Tabelle einfügen in Body) gehört zum anspruchsvollsten was es in der LotusScript- Programmierung gibt...
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)

Offline snboy2010

  • Frischling
  • *
  • Beiträge: 16
Re: Notes Mail Vorgefertigten Text per Button hinzufügen
« Antwort #2 am: 01.07.21 - 12:26:07 »
Ok, danke für die Antwort. Aber ich kann ja einfach über Datei-->Vorgaben-->Symbolleiste-->Anpassen eine neue Schaltfläche hinzufügen.  Über Befehle und Funktionen habe ich dann z.B. die Funktion text(). Kann ich dort nicht ein vorgefertigen Text eintragen?

Offline Tode

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 6.870
  • Geschlecht: Männlich
  • Geht nicht, gibt's (fast) nicht... *g*
Re: Notes Mail Vorgefertigten Text per Button hinzufügen
« Antwort #3 am: 01.07.21 - 13:40:20 »
Reiner Text: ja.

Aber keine Tabelle. Und Checkboxen schon mal gleich gar nicht.
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)

Offline snboy2010

  • Frischling
  • *
  • Beiträge: 16
Re: Notes Mail Vorgefertigten Text per Button hinzufügen
« Antwort #4 am: 01.07.21 - 13:45:02 »
Und wie kann ich es mit dem Text machen? Also wenn ich rein vorgefertigten Text hätte?

Offline CarstenH

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 642
  • Geschlecht: Männlich
Re: Notes Mail Vorgefertigten Text per Button hinzufügen
« Antwort #5 am: 01.07.21 - 16:31:44 »
Aber ich kann ja einfach über Datei-->Vorgaben-->Symbolleiste-->Anpassen eine neue Schaltfläche hinzufügen. 
Über Befehle und Funktionen habe ich dann z.B. die Funktion text(). Kann ich dort nicht ein vorgefertigen Text eintragen?

Jaein, Kurzfassung: einen einfachen, unformatierten Text könnte man so vielleicht unter optimalen Voraussetzungen einfügen, aber weder eine Tabelle noch farbige Texte oder gar funktionierende Checkboxen. Außerdem fehlt dann immer noch eine Menge drum-herum, wie die Positionierung an die richtige Stelle, Sicherheitsabfragen ob die Mail schon geöffnet/bearbeitet oder sogar mit besagter Tabelle ausgestattet wurde usw.

Trotzdem findest du ein Beispiel weiter unten, auch wenn ich das so nie verwenden würde funktioniert es rudimentär mit einfachem Text.

Torsten hat dir ja schon eine Kurzfassung gegeben, warum das so nicht geht - ich versuche es nochmal mit ein paar Vergleichen aus der Microsoft-Welt. Vielleicht verstehst du es damit ja besser.

Über die von dir erwähnten Schaltflächen kann man nur sogenannte @-Befehle und @-Funktionen benutzen, ein Scripting wie bei VBA ist darüber nicht möglich.

@-Befehle sind (mehr oder weniger) Entsprechungen der Menüstruktur des Clients. z.B. @Command([FileSave]) löst den Menüpunkt Datei > Speichern aus usw.
Es existieren auch @-Befehle, für die es nicht direkt Menüpunkte gibt, z.B. @Command([EditLeft]) bewegt den TextCursor ein Zeichen nach links. Gemein ist den @-Befehlen aber dass sie immer etwas auslösen ohne eine Rückgabe zu liefern die man abfragen könnte ob es geklappt hat.

Die @-Funktionen wiederum entsprechen in der Microsoft-Welt z.B. den Excel-Funktionen (Ribbon "Formeln"), wie man sie z.B. in Zellen zum Umwandeln von Werten benutzen kann. Die von dir schon angesprochene Funktionsformel @Text() hat z.B. eine ähnliche Syntax wie die gleichnamige Funktion in Excel und wandelt einen übergebenen Wert (eine Zahl oder ein Datum) in eine Zeichenkette um und formatiert sie dabei noch. Du könntest zwar mit @Text("Mein Text") auch Text in Text umwandeln aber nicht ausgeben und spätestens bei deiner gewünschten Tabelle und den Checkboxen ist Schluss, eben weil es keine einfachen Texte sind.

Last but not least: man kann @-Befehle und @-Funktionen mit ";" verketten um Vorgänge nacheinander auszuführen.

Und wie kann ich es mit dem Text machen? Also wenn ich rein vorgefertigten Text hätte?

Code
@Command([EditDocument];"1");
@PostedCommand([EditGotoField];"Body");
@PostedCommand([EditInsertText];"Mein Text...")

Die Dokumentation zu den Befehlen und Parametern findest du z.B. hier:  https://help.hcltechsw.com/dom_designer/11.0.1/basic/H_NOTES_FORMULA_LANGUAGE.html

====================================

Was auf diesem Weg aber leider gar nicht funktioniert (bzw. nur über Umwege) sind die anderen Programmiersprachen: weder LotusScript (Pendent zu VBA) noch JavaScript oder Java. Script-Sprachen können nur über Anwendungen (in Notes sind das die Datenbanken) verwendet werden, innerhalb einer Anwendung gibt es dann vielfältige Möglichkeiten (z.B. Makros aka Agenten,  Schaltflächen oder Links) aber das funktioniert dann (mehr oder weniger) nur für die jeweilige Anwendung. Möchte man den identischen Code in mehreren Anwendungen haben legt man ihn, wie bei Excel oder Word auch, in Templates und verteilt ihn darüber in die Anwendungen.

Der Aufwand, deinen Wunsch auf diesem Weg umzusetzen, ist für einen Profi sicher überschaubar; für dich aber nur mit Step-by-Step Unterstützung handlebar da bei dir erst das Verständnis wie Notes "tickt" aufgebaut werden muss. So wären deine gewünschten Checkboxen beispielsweise komplett ohne Funktion, es sind lediglich Texte. Man könnte sie nicht einmal abfragen um alle bearbeiteten Mails auszufiltern.

Daher würde ich hier eine andere, mehr Notes-like Vorgehensweise vorschlagen, die übrigens auch mit Outlook funktioniert hätte.
Vorwarnung: zur Umsetzung der folgenden Vorschläge benötigt man den Designer-Client, der normale Notes-Client reicht ab hier nicht mehr aus. Wenn du keinen Designer-Client hast bzw. dir die Berechtigungen fehlen ihn einzusetzen brauchst du ab hier nicht mehr weiterlesen.

Statt die Mailtexte, also den Inhalt der Mails, zu ändern (was übrigens einem Zerstören des originalen Inhalts gleich kommt) legt man einfach eine zusätzliche Eingabemaske über die Mails, entweder als extra Zeile (wie du es indirekt in deiner Tabelle wolltest) oder Text als Popup beim Ändern. Am einfachsten für dich vorstellbar wenn du mal eine neue Mail schreibst und die Aktion Anzeigen > zusätzliche Mailoptionen aktivierst. Dort siehst du z.B. (auswertbare!) Checkboxen und sowas in der Art könnte man bei allen Mails automatisch anzeigen lassen, dazu braucht man nicht einmal Script oder eine Schaltfläche. In Outlook z.B. entspräche das einer Änderung des Standardformulars für Nachrichten, Notes kennt außerdem noch Teilmasken, die man in das Standardformular einblenden kann ohne das original Formular unbedingt anpassen zu müssen, was sich spätestens beim nächsten Releasewechsel rächt. Mit ein paar @Funktionen regelt man dann wann und wie die Anpassung angezeigt wird. Und da bei Notes die Formulare in der Datenbank stecken wäre die Anpassung auch für alle verfügbar, per Template auf Wunsch auch in allen Maildatenbanken aller Nutzer (siehe oben).

HTH
Carsten

Offline jBubbleBoy

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.276
  • Geschlecht: Männlich
Re: Notes Mail Vorgefertigten Text per Button hinzufügen
« Antwort #6 am: 01.07.21 - 17:40:42 »
Über den Import einer HTML-Datei können auch Checkboxen, bunte Tabellen etc. eingefügt werden:
Code
@Command([EditDocument];"1");
@Command([EditGotoField];"Body");
@Command([FileImport] ; "HTML"; "c:\\tmp\\notes_import.html") 
Gruss Erik :: Freelancer :: Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.16
--
Nur ein toter Bug, ist ein guter Bug!

Offline snboy2010

  • Frischling
  • *
  • Beiträge: 16
Re: Notes Mail Vorgefertigten Text per Button hinzufügen
« Antwort #7 am: 14.07.21 - 08:46:18 »
So wollte noch eine Rückmeldung geben. Vielen herzlichen Dank für die Unterstützung. Ich habe den Link mit der Dokumentation für LoNo etwas durchgearbeitet und die Lösung mit dem Einbinden der HTML-Datei gewählt. Ich habe eine neue Symbolleiste erstellt. In dieser sind zwei Button. Eine öffnet die Mail im Bearbeitungsmodus und die andere platziert die HTML-Datei mit der entsprechendes Struktur an der Cursor-Position. Also vielen Dank.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz