Autor Thema: @MailSend mit IncludeDocLink funktioniert nicht ohne Vorgabewert und Parameter  (Gelesen 2897 mal)

Offline macom111

  • Senior Mitglied
  • ****
  • Beiträge: 293
  • Geschlecht: Männlich
  • Anfänger in der Datenbankentwicklung!!!
Hallo zusammen,

ich möchte eine Mail mit @MailSend versenden.
Die Maske enthält das Feld “SendTo“.
Wenn ich hier, wie in der Designer-Hilfe beschrieben, einen Empfänger als Vorgabewert (z.B. „Hans Dampf“) eingebe und in der Aktion „MailSend“ die entsprechenden Parameter und das Flag „IncludeDocLink“ angebe, wird die Mail versendet und der Empfänger kann das Dokument mit der Verknüpfung öffnen.
Meine Aktion lautet:
@Command([FileSave]); @MailSend(„Hans Dampf“;““;““;““;““;“Klicken sie auf die Verknüpfung“[IncludeDocLink]).

Da ich aber den Empfänger im Feld „SendTo“ frei Wählen muß, verwende ich im Feld die Auswahl
„Adreßdialogfeld für Auswahl verwenden“. In diesem Fall kann ich aber laut Designer-Hilfe und meiner Unterlagen nur noch „@MailSend“ ohne Parameter und „IncludeDocLink“ verwenden.
Beim Öffnen der versendeten Mail kommt dann die Meldung: „Maske nicht gefunden:<Name der Datenbank>“. Nach 3xligem bestätigen der Fehlermeldung öffnet sich zwar die Mail, aber ohne Verknüpfung. Wie bekomme ich aber dennnoch den Link mit einer dementsprechenden @Funktion od. Formel ins Mail?

Gruß Siggi ???

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Du kannst statt einer Konstanten auch den Feldinhalt übergeben - dann klappt es wieder mit dem Nachbarn:

Code
@MailSend(DeinFeldMitDenEmpfängern; ""; ""; ""; "";"Klicken sie auf die Verknüpfung"; [IncludeDocLink])

HTH,
Bernhard

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Ganz genau, hab mir das auch gerade angesehen.

Wenn allerdings das Feld leer ist, kommt eine Fehlermeldung, dass es kein "SendTo"-Feld gibt.

Kannste aber abfangen:

_SendTo := DeinFeld;
@If(@Trim(_SendTo) = "";
   @Return(@Prompt( [Ok];@DbTitle; "Feld ist leer, eMail kann nicht gesendet werden."));
   @Do(
      @MailSend(_SendTo; ""; ""; "Hallo"; "Link --> "; "";  [IncludeDoclink]);
      @Prompt( [Ok];@DbTitle; "Mail wurde gesendet.")
   )
)
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline macom111

  • Senior Mitglied
  • ****
  • Beiträge: 293
  • Geschlecht: Männlich
  • Anfänger in der Datenbankentwicklung!!!

Code
@MailSend(DeinFeldMitDenEmpfängern; ""; ""; ""; "";"Klicken sie auf die Verknüpfung"; [IncludeDocLink])

Also wenn ich das jetzt richtig verstanden habe, müßte es so aussehen:
@MailSend(SendTo;"";"";"";"Klicken Sie auf die Verknüpfung";[IncludeDoclink]).

Das Feld für die Empfänger ist das Feld "SendTo".
Die Mail wird zwar jetzt versendet mit dem Text "Klicken Sie auf die Verknüpfung", aber ohne Link.
Oder hab ich´s falsch verstanden?

Gruß Siggi


Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Das Feld muss nicht zwingend "SendTo" heissen.

Du kannst das selber definieren.

z.B.

_MeinFeld := Feld0815;
@MailSend(_MeinFeld; ""; ""; "Hallo"; "Link --> "; "";  [IncludeDoclink]);

Wie rufst Du das auf, via Button? Wurde das Dok schon gespeichert? Afaik muss das Dok gespeichert sein ( !@IsNewDoc ).

Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Zunächst: Für einen DocLink muss das Dokument gespeichert sein.

Und: In Deiner Formel fehlt ein Parameter. Bitte mal genau nachzählen.

Bernhard

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Code
@MailSend(DeinFeldMitDenEmpfängern; ""; ""; ""; "";"Klicken sie auf die Verknüpfung"; [IncludeDocLink])

Bernhard, hier ist wohl was schiefgelaufen beim reinkopieren, Da Du einen Text in "bodyFields" hast:

Zitat
bodyFields
When you use the [IncludeDocLink] flag (described below) to include a link to the current document, you should set the bodyFields parameter to null (""). If Notes/Domino cannot locate a field by name, it uses the string literal instead.

@macom111:
Meine zitierten Codes sollten genau so funktionieren, wenn !@IsNewDoc zutrifft.
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Code
@MailSend(DeinFeldMitDenEmpfängern; ""; ""; ""; "";"Klicken sie auf die Verknüpfung"; [IncludeDocLink])

Bernhard, hier ist wohl was schiefgelaufen beim reinkopieren, Da Du einen Text in "bodyFields" hast:

Jo, ich habe dann auch falsch kopiert - das ist aus Siggis erstem Posting. Die vorletzten beiden Parameter müssen also vertauscht werden. Danke für den Hinweis, Matthias.

Alternativ zu Matthias' Ansatz mit !@IsNewDoc könnte man vor dem @MailSend auch ein @Command ([FileSave]) setzen.

Bernhard

Offline macom111

  • Senior Mitglied
  • ****
  • Beiträge: 293
  • Geschlecht: Männlich
  • Anfänger in der Datenbankentwicklung!!!
Wie rufst Du das auf, via Button? Wurde das Dok schon gespeichert? Afaik muss das Dok gespeichert sein ( !@IsNewDoc ).


Ja, via Button. Und jetzt funktioniert´s; auch wenn Ihr mich beinahe verwirrt hättet.
Und so sieht´s bei mir jetzt aus:
@Command([FileSave]);
@MailSend(SendTo; ""; ""; ""; "Klicken Sie auf die Verknüpfung"; ""; [IncludeDocLink]).

Mit der Feldübergabe und der richtigen Reihenfolge der Parameter klappt´s!

Vielen Dank Euch Bernhard und Matthias





 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz