Domino 9 und frühere Versionen > ND6: Entwicklung

Signatur in Mailmaske "Antwort mit Protokoll"

(1/3) > >>

suse:
Hi,

habe in unserer Notes 6.5.1 Mail-DB die Möglichkeit geschaffen, dass bestimmte Mitarbeiter unterschiedliche Signaturen über einen Schalter auswählen können.
Das klappt soweit auch super!
Aber...  in "Antwort mit Protokoll" habe ich folgendes Problem:
Da in dieser Maske im "Body" das Originaldokument übernommen wird, wird auch die Mitarbeiter-Signatur unter dem Originaldokument angezeigt.
Ich möchte aber die Signatur unter dem Antworttext einfügen!
Habe heute viel Zeit mit diesem Problem zugebracht. Wer kann mir helfen?

Grüße Suse

Hier noch der Script:

Sub Click(Source As Button)
   
   Dim ...
   
   Set uidoc = ws.CurrentDocument
   Call uidoc.Refresh
   Set doc = uidoc.Document
   
   Set db = session.CurrentDatabase
   Server = db.Server
   Set newdb = session.GetDatabase(Server, "test.nsf")
   Set view = newdb.GetView( "(KeyMailSignatur)" )
   Set dc = view.GetAllDocumentsByKey(doc.FullName, True)
   If dc.Count = 0 Then Exit Sub
   Set doc = dc.GetFirstDocument
   i = 0
   While Not (doc Is Nothing)
      Set doc = dc.GetNextDocument(doc)
      i=i+1
   Wend
   If i > 0 Then
      elemente = i
      Redim liste(elemente)
      Redim docids(elemente)
      Set doc = dc.GetFirstDocument
      i = 0
      While Not (doc Is Nothing)
         docids(i) = doc.UniversalID
         liste(i) =  doc.Signatur(0)
         Set doc = dc.GetNextDocument(doc)
         i=i+1
      Wend
      Wert = ws.Prompt(PROMPT_OKCANCELLIST, "Wählen Sie eine Signatur", "Signaturen:", liste(0), liste)
      If ( Isempty( Wert ) ) Then
         Exit Sub
      End If
   End If
   
   ' es wurde ein element ausgewählt
   For i = 0 To elemente-1
      If liste(i) = Wert Then
         ' element gefunden
         docid = docids(i)
         i = elemente
      End If
   Next
   
   ' Zeiger auf das aktuelle Dokument (uiDocument) holen und Dokument sichern
   Set uidoc = ws.CurrentDocument
   uidoc.Save
     ' das aktuelle Dokument ist das Zieldokument
   Set ZielDoc = uidoc.Document
   
     ' Quelldokument mit der DocID holen
   Set QuellDoc = newdb.GetDocumentByUNID(docid)
      
     ' Inhalt aus dem Quelldok. (Feld Signatur1) in das Zieldokument (Feld Body) kopieren
   'ZielDoc.Betreff = QuellDoc.Betreff(0)         
   Set rtQuellitem = QuellDoc.GetFirstItem("Signatur1")   
   Set rtZielitem = ZielDoc.GetFirstItem("Body")   
   Call rtZielitem.AppendrtItem(rtQuellitem)   
   ZielDoc.SignOK = "ja"
   ' Zieldokument sichern
   Call ZielDoc.Save(True,False)
   ZielDoc.MailOptions = "0"
   Call uidoc.Close()
     ' Zieldokument erneut laden und als geändert markieren
   Call ws.EditDocument(True, ZielDoc)
   Set uidoc = ws.CurrentDocument
   uidoc.Refresh
End Sub

m3:

--- Zitat von: suse am 07.04.08 - 16:35:38 ---Ich möchte aber die Signatur unter dem Antworttext einfügen!
Habe heute viel Zeit mit diesem Problem zugebracht. Wer kann mir helfen?
--- Ende Zitat ---
Ja, wenn du eine konkrete Frage stellst.

BTW - Threads zu eröffnen und dann nie mehr darin zu antworten ist nicht die feine atnotes-Art.

koehlerbv:
Das mit den ausbleibenden Rückmeldungen ist mir auch schon aufgefallen. Daher erstmal nur Fragen meinerseits:
- Muss die Signatur(-vorlage) wirklich rich text sein? Wenn ja: Warum?
- So, wie ich den Code lese, wird die Signatur an der aktuellen Cursorposition eingefügt. Wenn es denn rich text sein muss: Warum erfolgt dies dann nicht über die Zwischenablage (kopiert aus dem gewählten Signatur-Setup-Dokument)?

Bernhard

suse:
Ja, die Signaturvorlage muss richtext sein!
Also die Signatur selbst ist kein Problem, wird nur in der einen Maske "Antwort mit Protokoll" an die falsche Stelle - nämlich ganz unten - angehängt.
Habe folgendes mit richtextnavigator versucht, bekomme aber Fehlermeldung:
"Element or navigator is invalid"

Dim rtnav As NotesRichTextNavigator
   
' Inhalt aus dem Quelldok. (Feld Signatur1) in das Zieldokument (Feld Body) kopieren
   'ZielDoc.Betreff = QuellDoc.Betreff(0)         
   Set rtQuellitem = QuellDoc.GetFirstItem("Signatur1")   
   Set rtZielitem = ZielDoc.GetFirstItem("Body")   
   Set rtnav = rtZielitem.CreateNavigator
   Call rtnav.SetPosition(rtQuellitem)

Muss ich denn mit einem Platzhalter arbeiten? Weiß aber nicht wie!

grüße suse

suse:
die Fehlermeldung:

--- Zitat ---"Element or navigator is invalid"
--- Ende Zitat ---

kommt, weil NotesRichtextNavigator nicht gesetzt wird, aber warum ???
Ich steh völlig aufm Schlauch.
 ???

Grüße
Suse

Navigation

[0] Themen-Index

[#] Nächste Seite

Zur normalen Ansicht wechseln