Domino 9 und frühere Versionen > ND6: Entwicklung

Dateninhalt aus einer Datenbank in eine neues Memo kopieren

<< < (3/3)

pete_bla:
Hi,

hier hätte ich noch eine "viel zu einfach, als das es gehen könnte" Vorschlag:

hast du schonmal eine Vorlage aus der Datenbank "weitergeleitet"?
"Aktion\Weiterleiten"
oder
@Command( [MailForward] )

Probleme die ich da sehe sind jedoch:
1. Die Vorlagen werden mit der Maske "gerendert" -> alles was in der Vorlage steht wird übergeben.
 musst du halt noch ne maske integrieren, wo nur die eigentlichen Vorlage-Daten drin stehen.

2. Die "Vorlage" wird eben nur in den Body der mail gepackt,
 Betreff ect. musst du noch anpassen.

3. wirklich ein Problem ist die Zeile "------ weitergeleitet von ----",  die dabei automatisch generiert wird.

Grüsse, Pete(r)

Axel:
Das ist aber keine wirkliche Alternative für die geforderte Funktionalität. Besonders wenn ich mir die Probleme anschaue, die du ja selbst schon beschrieben hast.

Wenn ich das Ganze richtig überblicke müsste das mit ein bisschen Lotusscript problemlos und einfach zu realisieren sein.

Und das funktioniert dann problemlos.

Axel

pete_bla:
Hi Axel,

tja ich musste doch immerwieder die Erfahrung machen, dass das einfach eben doch genügt....
und man muss nicht wirklich alles gleich mit Script platt hauen.... (hat aber ja bekanntlich auch seine grenzen)

Zum Problem mit dem "Edit" und der Berechtigung (muss ich mal wieder ein layer 8-Chache Problem gehabt haben)
würde ich eben noch Vorschlagen eine "angepasste Maske" für die Vorlagen bereitszustellen
in denen eben nur der Body drin ist, womit der EditGotoField nicht notwendig ist und der EditSelectAll auf das ganze Vorlagen-Dokument wirken darf.

also ungefähr so:

--- Code: ---@Command([SwitchForm] ; "VorlageNurBody" );
@Command([EditSelectAll]);
@Command([EditCopy]);
--- Ende Code ---

Grüsse, Pete(r)

kleinerkutz:
Hört sich ja alles gut an, aber:

1. Weiterleiten ist nicht so sinnvoll, da in der DB 10 verschiedene Felder mit Abschnitten vorhanden sind. Beim weiterleiten wird der ganze Kram mitgesendet.

2. Vorlagen-Maske erstelle, geht nicht, da hier die Gestaltung zu ist. Einzige Möglichkeit über einen Doklink auf eine neue Datenbank zugreifen lassen. Ist so eigentlich nicht gewollt.

Einzige aus meiner Sicht dann sinnvolle Lösung über eine Schaltfläche, die die Kopiersache übernimmt.

Axel:
Ich würde das Ganze mit ein paar Zeilen Script machen. Dann hast du eine saubere Lösung.

Ich habe mir vor einiger Zeit mal eine quick-and-dirty - Funktion erstellt die ein neues Mail erstellt, die als Parameter übergebenen Werte als Empänger einträgt und als neues Memo in der Mail-DB zum Bearbeiten öffnet. Das Kopieren von Einträgen aus deinen Vorlagen dürfte problemlos integrierbar sein.


--- Code: ---Function CreateMailMemo(varSendTo As Variant) As Integer

Dim workspace As New NotesUIWorkspace
Dim maildb As NotesDatabase
Dim maildoc As NotesDocument
Dim profile As NotesDocument
Dim varProc As Variant

On Error Goto ErrorHandler

CreateMailMemo = 0

Set maildb = New NotesDatabase("","")
maildb.OpenMail
Set profile = maildb.GetProfileDocument("CalendarProfile")

'Anlegen neues Mail
Set maildoc = New NotesDocument(maildb)
maildoc.Form = "Memo"
maildoc.Logo = profile.DefaultLogo(0)
maildoc.Principal = profile.Owner(0)
maildoc.SendTo = varSendTo
Call maildoc.ComputeWithForm(False, False)

'Anzeigen zur weiteren Bearbeitung
Call workspace.EditDocument(True, maildoc)

Ende:
Exit Function

ErrorHandler:
varProc = Getthreadinfo(LSI_THREAD_PROC)
Messagebox varProc & ": Es ist ein Fehler aufgetreten. Die Ausführung wird abgebrochen." & Chr$(13) & "Fehler: " & Str$(Err) & " -> '" & Error$ & _
" in Zeile " & Str$(Erl) , 16, "Adressen"
CreateMailMemo = 1
Resume Ende
End Function

--- Ende Code ---


Axel

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln