Autor Thema: MailSend-Problem II  (Gelesen 2241 mal)

Offline Colli

  • Junior Mitglied
  • **
  • Beiträge: 99
  • Geschlecht: Weiblich
MailSend-Problem II
« am: 10.02.06 - 13:20:46 »

Sub Querysave(Source As Notesuidocument, Continue As Variant)
   Dim session As New NotesSession
   
   If source.IsNewDoc Then
      Set db = session.CurrentDatabase
      Set mail = db.CreateDocument
      Set rtitem = mail.CreateRichTextItem("Body")
      
      mail.form = "Memo"
      mail.Subject = "Neuer Antrag"
      mail.SendTo = source.FieldGetText("MailEmpfaenger")
      
      Call rtitem.AppendText("In der Lotus Notes Datenbank wurde ein neuer Antrag eingereicht. Link zum Dokument-->")
      Call rtitem.AppendDocLink(source.Document,"")
      Call mail.Send(False)
      
   End If
End Sub


Dieses Script sorgt dafür, dass eine Mail an den Empfänger geschickt wird, der im Feld MailEmpfaenger eingetragen ist.

Nun kann es aber auch sein, dass kein Empfänger ausgewählt werden soll, das Feld ist somit leer. Wie kann ich das Script so ändern, dass die Bedingung abgeprüft wird? Kann man die If-Anweisung erweitern?
So in der Art:


Sub Querysave(Source As Notesuidocument, Continue As Variant)
   Dim session As New NotesSession
   
   If source.IsNewDoc & source.FieldGetText("MailEmpfaenger") <> "" Then
      Set db = session.CurrentDatabase
      Set mail = db.CreateDocument
      Set rtitem = mail.CreateRichTextItem("Body")
      
      mail.form = "Memo"
      mail.Subject = "Neuer Antrag"
      mail.SendTo = source.FieldGetText("MailEmpfaenger")
      
      Call rtitem.AppendText("In der Lotus Notes Datenbank wurde ein neuer Antrag eingereicht. Link zum Dokument-->")
      Call rtitem.AppendDocLink(source.Document,"")
      Call mail.Send(False)
      
   End If
End Sub

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: MailSend-Problem II
« Antwort #1 am: 10.02.06 - 13:29:03 »
"&" ist der String-Concatenator, mach' daraus ein AND und es passt  ;)

Bernhard

Offline Colli

  • Junior Mitglied
  • **
  • Beiträge: 99
  • Geschlecht: Weiblich
Re: MailSend-Problem II
« Antwort #2 am: 10.02.06 - 14:00:16 »
Danke! :D

Kann es sein, dass über dieses Script die Mail nur an eine Person geschickt werden kann? Mehrfachwerte zulassen hab ich im Feld drin, wenn ich aber mehrere Personen eintrage, dann kommt die Meldung: Mail kann nicht versendet werden, keine Entsprechung in Adressbüchern gefunden.

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: MailSend-Problem II
« Antwort #3 am: 10.02.06 - 14:06:33 »
Die Empfänger müssen ein Array sein, kein skalarer String. Ein passendes Beispiel ist in der DesignerHelp.

Bernhard

Glombi

  • Gast
Re: MailSend-Problem II
« Antwort #4 am: 10.02.06 - 14:16:15 »
Am einfachsten geht das mit den Mehrfachwerten, wenn Du das Backend-Dokuments verwendest. Da sieht dann so aus:

Sub Querysave(Source As Notesuidocument, Continue As Variant)
   Dim session As New NotesSession
dim doc as NotesDocument
set doc = Source.Document
   
   If source.IsNewDoc and doc.MailEmpfaenger(0) <> "" Then
      Set db = session.CurrentDatabase
      Set mail = db.CreateDocument
      Set rtitem = mail.CreateRichTextItem("Body")
     
      mail.form = "Memo"
      mail.Subject = "Neuer Antrag"
      mail.SendTo = doc.MailEmpfaenger
     
      Call rtitem.AppendText("In der Lotus Notes Datenbank wurde ein neuer Antrag eingereicht. Link zum Dokument-->")
      Call rtitem.AppendDocLink(doc,"")
      Call mail.Send(False)
     
   End If
End Sub


Andreas

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: MailSend-Problem II
« Antwort #5 am: 10.02.06 - 14:20:21 »
Ach ja, die Empfänger stehen ja schon im Backend.
Noch zur Erläuterung: NotesUIDocument.FieldGetText liefert immer einen skalaren String zurück, Dein schönes Mehrfachwertefeld wird damit kaputt gemacht. Daher Andreas' Vorschlag.

Bernhard

Offline Colli

  • Junior Mitglied
  • **
  • Beiträge: 99
  • Geschlecht: Weiblich
Re: MailSend-Problem II
« Antwort #6 am: 10.02.06 - 14:32:30 »
Danke. Klappt wunderbar.

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz