Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: FriFra am 23.03.05 - 23:49:25
-
Ich will via Script in ein doc (notesdocument) ein Bild (in ein Richtextfeld) einfügen. Dieses Bild soll NICHT als Attachment angehängt, sondern sichtbar eingefügt werden.
Im uidoc hab ich da keine Probleme, da gibt es ja .Import, aber was tu ich im doc? Ich habs schon über richtextitem versucht, nur fehlt hir wohl die entspr. Methode ::)
-
Im Backend gibt es AFAIK solch eine Methode nicht.
Es gab glaub ich erst kürzlich hier einen ähnlichen Thread.
Ich hatte da schon als Idee vorgeschlagen, das dann über DXL zu realisieren. Also das Bild in Base64 zu encoden und entsprechend in das bestehende NotesDocument (das dann als DXL-Stream vorliegen muss) einzufügen und diesen Ziel-Stream dann zurück in die DB schreiben.
Aber ich kenne jetzt Deine Hintergründe nicht, vielleicht erklärst Du auch mal, in welcher Umgebung und in welchem Zusammenhang Du das brauchst.
Alternativ gibt es da auch 3rd Party-Tools die das können sollten: Midas & RTLib (http://www.geniisoft.com / http://www.rtlib.com). Lassen sich dann entsprechend in Deinen LS-Code integrieren.
-
Hallo,
füge doch die Grafik als Attachement ins Backend-Doc ein.
Beim ersten öffnen des Dokumentes soll/muss der Benutzer ein Button klicken, der dann das Attachement als Grakik importiert.
Code-Beispiel für den Buttons:
...
@Command ( [EditGotoField]; "FileAttach_RT" );
@Command ( [EditInsertFileAttachment] );
@Command ( [FileSave] );
@Command ( [FileSave] );
@Command ( [EditGotoField]; "FileImport_RT" );
@Command ( [EditSelectAll] );
@Command ( [EditClear] );
...
Oder Du importierst das Attachement beim ersten Öffnen (PostOpen) des Dokumentes via LS in das RT-Feld.
Wenn es erfolgreich importiert wurde, kannst/musst Du noch ein Flag setzen.
Dirk
-
So geht's leider nicht :(... das doc wird gemailt, also muss es VOR dem Versand bereits "fertig"sein :-\... und es muss natürlich im Backend passieren, nur hab ich bisher nicht die passenden Methoden dafür gefunden ::)
Postopen funzt nicht, da ich nicht das Postopen der memos's in den MailDB's aller User verändern kann/will.... Basteleien an den Standardtemplates lasse ich bleiben, da man sich so von Update zu Update mehr zusätzliche Arbeit macht.
Wie ich das ganze im NotesUIDocument anstelle weiss ich... nur ich MUSS es im NotesDocument hinbekommen ::)
-
Diese Hintergründe kannte ich nicht :-\
Dann bleibt vieleicht nur DXL oder div. ThirdParty-Tools
Dirk
-
im Backend bekommst Du es mit reinen Notes-Mitteln nicht hin.
Eine Möglichkeit wäre einen eigenen Importer zu schreiben. D.h. die Dateien Bit/Byte-weise durchgehen, Header-Infos suchen und auswerten. Außerdem braust Du noch ne Doku, wie Notes die Images (Format) im Dokument ablegt. Wenn Du Pech hast schreibst Du für jedes Format (TIF, JPG, GIF ...), die einzelnen Versionen und neue Versionen neue Importroutinen.
Ich würde es eher lassen und nach der DXL-Idee von TMC versuchen oder wenn irgend möglich über das FrontEnd gehen.
-
... oder dann die in solchen Fällen immer bewährten 3rd-party tools:
midas: http://www.geniisoft.com
rtlib: http://www.rtlib.com
Damit lassen sich solche Sachen dann auch im Backend machen.
-
... oder dann die in solchen Fällen immer bewährten 3rd-party tools:
midas: http://www.geniisoft.com
rtlib: http://www.rtlib.com
Damit lassen sich solche Sachen dann auch im Backend machen.
Ich hab mir beide Sachen angesehen... geniisoft ist für so eine Kleinigkeit viiiiiiel zu teuer.
RtLib hat ein etwas merkwürdiges Lizenzmodell, danach kann ich die rtlib zwar lizensieren, aber eben fest an eine ReplicaID gebunden... das nützt mir herzlich wenig, da meine Entwicklungs-DB's normalerweise andere ReplicaID's haben als die Produktiven... und ich werde mir nicht für eine einzige DB mehrere Lizenzen kaufen.
Ich werde jetzt im Memo der FAX-MailIn-DB eine entspr. Abfrage einbauen und dort das Image fest (mit Hidewhen) einbauen. Leider besteht ein Geschäftspartner bei Bestellungen eben auf einen Stempel, und dieser MUSS nun irgendwie da rein...
-
Und was soll dieser "Stempel" genau erzwecken? Eine Signatur des Docs.
Wie wäre es denn mit einer richtigen Signatur von Faxen und Mails.
Ist für den Empfänger doch auch sicherer?!
Dirk
-
Entschuldige aber das ist doch auch im Backend eine der leichteren Übungen, wenn der Stempel feststeht und du auch mit HideWhens arbeiten kannst. Dann nimmst du einfach ein Konfigurationsdokument in dem du ein RTFeld hast in das du deine Daten einträgst und kopierst das zur Laufzeit zusammen. Alles was du dazu brauchst findest du in der Rtitem Klasse.
-
Und was soll dieser "Stempel" genau erzwecken? Eine Signatur des Docs.
Wie wäre es denn mit einer richtigen Signatur von Faxen und Mails.
Ist für den Empfänger doch auch sicherer?!
Dirk
Das weiss ich auch nicht... da muss ich auch nicht drüber nachdenken. Es gibt noch genug "bekloppte" die auch auf computer-generierten Faxen und sogar in eMails einen Stempel wollen... wozu?... ich weiss es nicht ::)
@Thomas Schulte: Danke.... Manchmal sieht man den Wald vor Bäumen nicht :-[ ;)
-
RtLib hat ein etwas merkwürdiges Lizenzmodell, danach kann ich die rtlib zwar lizensieren, aber eben fest an eine ReplicaID gebunden... das nützt mir herzlich wenig, da meine Entwicklungs-DB's normalerweise andere ReplicaID's haben als die Produktiven... und ich werde mir nicht für eine einzige DB mehrere Lizenzen kaufen.
Gut, das wären dann 2 Lizenzen. 198 EUR. Wenn man bedenkt, dass 1 Stunde Notes-Dienstleistung leicht mal 100 EUR / Stunde kosten kann, ist das IMHO ein sehr fairer Preis. Ich bin der Meinung, er ist zu billig, für das was die Lib kann und welche Zeitersparnis die Lib unter'm Strich einbringt.
Wenn man sich deswegen komplett in DXL einarbeiten muss, um das sauberst zu bewerkstelligen, dann rechnet sich dies IMHO mehrfach. Wobei da DXL eh ein Workaround wäre. Base64-Umwandlung ist auch mit Vorsicht zu geniesen im Hinblick auf Geschwindigkeit.
Aber Du hast wohl mittlerweile eh eine Alternativlösung gefunden.