AtNotes Übersicht Willkommen Gast. Bitte einloggen oder registrieren.
21.09.21 - 20:14:21
Übersicht Hilfe Regeln Glossar Suche Einloggen Registrieren
News:
Schnellsuche:
+  Das Notes Forum
|-+  Domino 9 und frühere Versionen
| |-+  ND9: Entwicklung (Moderatoren: Axel, eknori, Thomas Schulte, koehlerbv, m3)
| | |-+  Notes Mail Vorgefertigten Text per Button hinzufügen
« vorheriges nächstes »
Seiten: [1] Nach unten Drucken
Autor Thema: Notes Mail Vorgefertigten Text per Button hinzufügen  (Gelesen 615 mal)
snboy2010
Frischling
*
Offline Offline

Beiträge: 16


« am: 01.07.21 - 11:42:49 »

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. 
Gespeichert
Tode
Moderatoren
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 6620


Geht nicht, gibt's (fast) nicht... *g*


WWW
« Antworten #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...
Gespeichert

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...

Mit jedem Tag meines Lebens erhöht sich zwangsweise die Zahl derer...
... denen ich am AdminCamp ein Bier schulde... Wenn ich hier jemanden angehe: Das ist nie persönlich, sondern immer gegen die "Sparwut" der Firmen gedacht, die ungeschultes Personal in die Administration unternehmenskritischer Systeme werfen... Sprecht mich einfach am AdminCamp an, ich zahle gerne zur "Wiedergutmachung" das ein oder andere Bierchen an der Bar
snboy2010
Frischling
*
Offline Offline

Beiträge: 16


« Antworten #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?
Gespeichert
Tode
Moderatoren
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 6620


Geht nicht, gibt's (fast) nicht... *g*


WWW
« Antworten #3 am: 01.07.21 - 13:40:20 »

Reiner Text: ja.

Aber keine Tabelle. Und Checkboxen schon mal gleich gar nicht.
Gespeichert

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...

Mit jedem Tag meines Lebens erhöht sich zwangsweise die Zahl derer...
... denen ich am AdminCamp ein Bier schulde... Wenn ich hier jemanden angehe: Das ist nie persönlich, sondern immer gegen die "Sparwut" der Firmen gedacht, die ungeschultes Personal in die Administration unternehmenskritischer Systeme werfen... Sprecht mich einfach am AdminCamp an, ich zahle gerne zur "Wiedergutmachung" das ein oder andere Bierchen an der Bar
snboy2010
Frischling
*
Offline Offline

Beiträge: 16


« Antworten #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?
Gespeichert
CarstenH
Senior Mitglied
****
Offline Offline

Geschlecht: Männlich
Beiträge: 428



« Antworten #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
Gespeichert
jBubbleBoy
Gold Platin u.s.w. member:)
*****
Offline Offline

Geschlecht: Männlich
Beiträge: 1224



« Antworten #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")
Gespeichert

Gruss Erik :: Freelancer :: Notes, Java, Web, VBA und DomNav 2.5 / NSE 0.11
--
Nur ein toter Bug, ist ein guter Bug!
snboy2010
Frischling
*
Offline Offline

Beiträge: 16


« Antworten #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.
Gespeichert
Seiten: [1] Nach oben Drucken 
« vorheriges nächstes »
Gehe zu:  


Einloggen mit Benutzername, Passwort und Sitzungslänge

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006, Simple Machines Prüfe XHTML 1.0 Prüfe CSS
Impressum Atnotes.de - Powered by Syslords Solutions - Datenschutz | Partner: