Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: thoge am 14.11.03 - 19:25:47

Titel: Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: thoge am 14.11.03 - 19:25:47
@all,

wer von Euch kennt das nicht.

Bei uns werden intern eMails verschickt mit Dateianhängen von Dateien, die eh im Filesystem liegen. Diese Anhänge sind natürlich im MB-Bereich und werden dann an alle verschickt (insbesondere Besprechungsprotokolle, Zeichnungsdateien, etc.)

Geschult und dann wieder (was ich auch verstehen kann) von allen vergessen ist folgendes:

Erstellen -> Hotspot -> Schaltfläche -> Schaltfläche bearbeiten -> Starten -> Einfache Aktion -> Aktion Hinzufügen -> @Funktionsformel -> @Command( [Execute]; "C:\\Windaten\\Word\\blabla.doc")

Hat von Euch schon mal das ganze als Aktion realisiert, die aus der Memo-Maske aufgerufen werden kann?

Es soll also in der Mailmaske (neben der Büroklammer als Erstellen eines Dateianhangs) ein Button sein, der ebenfalls die Dateiauswahlbox nach vorne bringt. Nach Auswahl der entsprechenden Datei soll dann statt des Dateianhanges eine Schaltfläche erscheinen, hinter der dann das @Command([Execute]; "Pfad:\\Dateinamen") steckt.

Den LinkHotSpotCreator aus der Sandbox habe ich schon getestet. Der hat aber Schwächen mit deutschen Umlauten und generiert file:\\Pfad\\Dateinamen, was mich nicht weiterbringt, da dann der IE geöffnet wird mit der entsprechenden Datei.

Über Anregungen, Script oder Formel wäre ich sehr dankbar.

Mit freundlichen Grüßen

thoge
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: koehlerbv am 14.11.03 - 20:08:56
Hallo, thoge,

zuerst mal 'ne Erfahrung: Ob das die User dann wohl machen werden ... Eine Datei anhängen geht ja sooo viel einfacher !

Auch wenn ich jetzt nicht auf Deine direkte Frage eingehe (bin etwas im Programmierstress), erlaube mir bitte trotzdem folgenden Vorschlag: Eine Alternative wäre ggf., die Files in eine Art "Schwarzes Brett" oder anderweitigen Dateien-Container aufzunehmen und dann im Mail per Link zu verweisen. Dies würde den Vorteilen von Notes (Replikation ...) entgegenkommen und liesse sich auch per Buhtong automatisieren. Dann wären auch die "mobile users" glücklich, da sie - bei Replikation des Containers - vom Filesystem unabhängig wären.

Ich denk' aber weiter über Dein originäres Anliegen nach, sowie wieder Zeit ist.

Ciao,
Benrhard
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: Semeaphoros am 14.11.03 - 20:54:37
Bernhard: Weisst Du das grad? Ist es mit Boardmitteln ohne API überhaupt möglich, einen Hotspot zu produzieren? Ok, es bräuchte ihn ja nicht zwingend, man könnte stattdessen auch einfach einen Web-Link einfügen und davon ausgehen, dass die Clients die Standard-Einstellung, dass sowas als Hotlink angezeigt wird, aktiv ist.

Ansonsten Thoge: im Sinne von Bernhards Vorschlag, schau Dir doch mal die mitgelieferten Schablonen Dok-Library oder MS Office Library an, die machen nämlich sowas ähnliches, wie Bernhard beschreibt.
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: TMC am 14.11.03 - 20:59:17
DIe Funktion an für sich wäre schon nett.

Ne Zwischenfrage zur Diskussion (was m.E. zu berücksichtigen wäre):
Wie würde sich das verhalten wenn noch Leerzeichen mit drin sind, also

"\\Server1\Verzeichnis17\Atnotes Test Dokument.doc"

TMC

P.S. ansonsten empfehle ich auch, eine zentrale Notes Doc-Library o.ä. zu hinterlegen
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: Semeaphoros am 14.11.03 - 21:05:09
Na, wenn man den Hotlink über API anlegt, dürften die Leerzeichen nicht stören. Wenn mans als Weblink im Text machen will, müsste man die Dinger durh %20 ersetzen
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: MartinG am 15.11.03 - 10:20:42
....uralte Diskussion und ich verstehe ehrlich gesagt auch nicht ganz wieso IBM das nicht endlich integriert.

Mit der gleichen Klickerei die man hat um eine Datei anzuhängen wäre sicherlich auch eine Verknüpfung/Hyperlink oder wie man das ganze auch nennen mag möglich.

Klar braucht man die API dazu - für IBM sollte das doch aber ein kleines Problem sein.

Die Lösung mit  Office-Datenbank halte ich für keine so gute Idee - für Besprechungsdokumente oder kleine Officegeschichten etc ist das schon okay - für alles andere zu umständlich, zu wenig performant...

Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: eknori am 15.11.03 - 13:45:28
Der Weg über die API ( das Allheilmittel ) ist sicherlich möglich aber nicht so trivial.
Es ist kein Problem, einen Button in ein RT Feld einzufügen, aber das Einfügen des notwendigen Codes zum Starten des Files ist nicht so einfach möglich.
Schuld daran ist die Einschränkung, daß Script oder Formelcode nur als Objectcode eingefügt werden kann und nicht in seiner Ursprungsform als String. Die LNScriptClass in der C++ API ist aber nur eine sehr einfache wrapper class; da ist nirgendwo eine Funktion drin, die es ermöglicht, den eingefügten Code zur Laufzeit zu kompilieren.

Man kann lediglich z.B. aus einem Agenten einen zuvor gespeicherten Code auslesen und an den Button übergeben. Da habe ich aber nun keine Möglichkeit mehr, das File als Parameter mitzugeben.

So zumindest meine erste Einschätzung der Lage.

Eine mögliche Lösung wäre z.B.

vorausgesetzt, daß die Links nicht umbedingt im Text stehen müssen, sondern als Liste in einem seperaten Feld in der Memomaske ( als Teilmaske ) könnte man die Files über den allseits bekannten "Mach mir mal nen File Open Dialog für Windows" Code auswählen und die Rückgabewerte in einer Filelste speichern.
Neben, über oder unterhalb der Liste gibt es dann einen Button, der den eigentlichen Code enthält. Beim Klicken auf den Button wird ein Dialog mit allen Files geöffnet. Nach Auswahl wird die Datei mit der entsprechenden Anwendung geöffnet. Auch hierzu gibt es fertigen Code im Forum oder im Internet.

Das wäre auch im Hinblick auf Updates der Mailschablone kein Problem, da ja lediglich nur die teilmaske integriert werden muß.

Wenn ich nicht gleich noch in die Firma muss, werde ich mich mal an die Umsetzung machen.

Ulrich
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: eknori am 15.11.03 - 17:06:05
soo, und hier ist meine Lösung

http://www.eknori.de/cms/tipps/detail.php?nr=303&kategorie=tipps
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: eknori am 15.11.03 - 18:41:17
@Jens

Zitat
Hotlink über API anlegt, dürften die Leerzeichen nicht stören

hast du das schon mal probiert ??

@Martin

Zitat
Mit der gleichen Klickerei die man hat um eine Datei anzuhängen wäre sicherlich auch eine Verknüpfung/Hyperlink oder wie man das ganze auch nennen mag möglich.

Klar braucht man die API dazu - für IBM sollte das doch aber ein kleines Problem sein.


gleich Frage wie bei Jens

hätte, wäre, sollte... Wenn das Wörtchen wenn nicht wär, wäre ich schon lange ...

postet doch mal euren C++ API Code, dann sehen wir weiter

Ulrich
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: Semeaphoros am 15.11.03 - 18:49:39
Nein, deshalb auch der Konjunktiv bei "dürften" ...  ;)
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: eknori am 15.11.03 - 18:54:06
Ich hasse Konjunktive  ;D

habe mich heute durch die API gewühlt; nee, das macht keinen Spass. Ist irre komplziert. Zudem, wenn man Rx bedienen will.
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: TMC am 15.11.03 - 19:06:02
@Ulrich:
Coole Lösung, vielen Dank. Und Respekt, kaum wurde mal eine API-relevante Frage gestellt, und schon ist die Lösung da  :)

Werde es zwar nicht in ein Mailfile-Template einbinden (weil ich das nicht darf bei uns  >:(), aber in der ein- oder anderen Dokument-DB ist das superhilfreich, wenn man nicht alles anhängen will.

TMC
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: Semeaphoros am 15.11.03 - 19:08:02
Ich manchmal auch, aber sie sind wenigstens ehrlich. Hast Du die Rich-Text Tutorials von Ben Langhinrichs schon mal studiert? Nein, ich auch noch nicht, um Deine Frage gleich vorher schon zu beantworten :-) Aber vielleicht schreibt er ja dadrin etwas darüber [Hä, ausgetrickst, den Konjunktiv mit einem "vielleicht" elegant umschifft ....  ;D ]
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: eknori am 15.11.03 - 19:11:09
ich habe Ben gerade mal angemailt, ob sein Midas das kann.
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: Semeaphoros am 15.11.03 - 19:18:19
Da bin ich gespannt, ich tippe auf ja
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: eknori am 15.11.03 - 19:23:26
@TMC: Ich war selber überrascht, wie einfach an das eigentlich lösen kann.

Ben hat da schon mit seinem Midas.Lsx viel erschlagen und er hat meinen vollen Respekt. Ich glaube, es gibt kaum einen, der sich mit den Möglichleiten zum Thema RT und API besser auskennt als er. Dazu auch ein Thread aus OPENNTF http://openntf.org/__88256B5E00751F4B.nsf/0/c7de5651a5e6c98888256d39004ec81c?OpenDocument

Ulrich



Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: Semeaphoros am 15.11.03 - 19:39:10
Ben kennt gewisse Sachen in Richtext even better als gewisse Leute bei (Ex-)Iris. Und Normunds ist bestimmt der zweite Mann auf diesem Parket, und dann kommt lange niemand mehr.
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: ata am 17.11.03 - 09:49:07
... ich kenne nicht die vorgeschlagenen Lösungen, aber das ganze müsste auch ohne API zu realisieren sein...

... in einem Konfig-Dokument wird eine Schaltfläche hinterlegt. Diese Schaltfläche hat eine Verzweigung:

... wenn ein Feld einen Dateipfad enthält, dann wird diese Datei ausgeführt...
... wenn nicht, dann erfolgt zur Auswahl ein Dateidialog. Der ausgewählte Dateipfad wird in das Dokument geschrieben...

... zwar von hinten nach vorne, aber sollte funktionieren...

ata
Titel: Re:Dateiauswahl in Mailmaske -> @Command([Execute])
Beitrag von: thoge am 17.11.03 - 10:19:19
@all,

erst einmal vielen Dank für die rege Teilnahme an meiner Anfrage.

Den Weg über eine eigene Dokumentenbibliothek habe ich ausgeschlossen, da die Funktion in mehreren Kontexten laufen. Zum einen betrifft das Versenden von Dateianhängen interne Prozesse (Besprechungsprotokolle, etc.), zum anderen projektrelevante Dateien, die im Filesystem projektabhängig abgelegt sind.
Hierbei geht es um Office-Dokumente, CAD-Daten, Plot-Files, etc. pp.
Unsere Mitarbeiter haben alle auf diese projetrelevanten Daten Zugriff.

Warum die Funktion des Verlinkens von Dateien im Filesystem nicht standardmäßiger Bestandteil von LotusNotes ist, frage ich mich ebenfalls.

Wie in meiner Anfrage erwähnt, schließe ich die Sandbox-Lösung "LinkHotspotCreator" ebenfalls aus (es öffnet sich der IE, was ich nicht möchte und zu dem eknori ebenfalls Stellung bezogen hat).

@eknori:
alle achtung, ich bin immer wieder erstaunt, welche Lösungen Du hier zur Verfügung stellst. Du hast natürlich noch die verschiedenen Eventualitäten berücksichtigt, an die ich noch gar nicht gedacht habe. Hut ab! Deinen Ansatz werde ich jetzt mal verfolgen.

Wenn Ihr nichts dagegen habt, setze ich den Thread jetzt auf erledigt.

Nochmals vielen Dank!

thoge