Email Meldung mit Betreff aus einem bestimmten Feld
Hallo,
ich möchte in einem Dashboard einen Button setzen, mit dem ich auf Klick eine Email an alle aus einer anderen Tabelle, die eine Emailadresse in einem bestimmten Feld haben, senden.
Die Formel zum senden an die Emailadresse habe ich schon erstellt. Jetzt möchte ich aber noch im Betreff der Email den Namen des Kunden/ der Straße mit einfügen, irgendwie komme ich bei der Formel nicht weiter.
Hier mein Ansatz:
let myStreu := " für Glätte- und Eisbeseitigung ausgeführt.";
let myR := " für Schneebeseitigung und anschließendem abstreuen ausgeführt ";
let myMail := (select 'Straßen').'E-Mail Einsatzmeldung';
let myStr := first(select 'Straßen' where 'E-Mail Einsatzmeldung' = myMail).'Straße';
for ii in myMail do
sendEmail({
from: userEmail(),
to: ii,
bcc: userEmail(),
subject: "Winterdiensteinsatz " + 'Datum Einsatz' + " in der Straße: " + myStr,
text: "Some Text",
html: "Sehr geehrte(r) Kunde/Kundin,</p><p> am <b>" + 'Datum Einsatz' + "</b> haben wir bei Ihnen einen " + Einsatzart + if Einsatzart = 1 then
myStreu
else
if Einsatzart = 2 then myR end
})
end
Kann mir da jemand eine Formel nennen.
Danke und Gruß
Mirko
13 Antworten
-
Hallo,
hat da niemand einen Ansatz für mich, oder denke ich da zu kompliziert?
Gruß
Mirko
-
Hallo Mirko,
in welcher Tabelle liegen die Kundennamen?
Leo
-
Hallo Leo,
die Namen der Straße sind in der Tabelle 'Straßen', sowie das Feld 'E-Mail Einsatzmeldung'.
Ich möchte gerne jeweils den Namen der Straße, evtl. auch des Kunden mit anfügen in der Mail, passend zu dem Kunden, wo die Mailadresse hinterlegt ist.
Gruß
Mirko
-
let myStreu := " für Glätte- und Eisbeseitigung ausgeführt.";
let myR := " für Schneebeseitigung und anschließendem abstreuen ausgeführt ";
for ii in select 'Straßen' do
sendEmail({
from: userEmail(),
to: ii.'E-Mail Einsatzmeldung',
bcc: userEmail(),
subject: "Winterdiensteinsatz " + 'Datum Einsatz' + " in der Straße: " + ii.'Straße',
text: "Some Text",
html: "<p>Sehr geehrte"+ if ii.Anrede = 1 then "r Herr " else " Frau "+ii.Nachname+",</p><p> am <b>" + 'Datum Einsatz' + "</b> haben wir bei Ihnen einen " + Einsatzart + if Einsatzart = 1 then
myStreu
else
if Einsatzart = 2 then myR end
})
end
---
Leo
-
Hallo Leo,
vielen Dank, aber er sagt mir dann: invalid parameter: to("undefined")
-
Da muss ich die Datenbank sehen. So pauschal ist schwierig
Was ist es für ein Feld:'E-Mail Einsatzmeldung'?- Textfeld?.
Leo
-
Hallo Leo,
das ist ein E-mail Feld
-
let myStreu := " für Glätte- und Eisbeseitigung ausgeführt.";
let myR := " für Schneebeseitigung und anschließendem abstreuen ausgeführt ";
for ii in select 'Straßen' where 'E-Mail Einsatzmeldung' do
sendEmail({
from: userEmail(),
to: ii.'E-Mail Einsatzmeldung',
bcc: userEmail(),
subject: "Winterdiensteinsatz " + 'Datum Einsatz' + " in der Straße: " + ii.'Straße',
text: "Some Text",
html: "<p>Sehr geehrte"+ if ii.Anrede = 1 then "r Herr " else " Frau "+ii.Nachname+",</p><p> am <b>" + 'Datum Einsatz' + "</b> haben wir bei Ihnen einen " + Einsatzart + if Einsatzart = 1 then
myStreu
else
if Einsatzart = 2 then myR end
})
end
-
Hallo Leo,
perfekt, das funktioniert wunderbar, vielen Dank!
Gruß
Mirko
-
Hallo,
ich habe noch mal eine Frag zu dem Email Versand.
Ich habe die oben stehende Lösung etwas geändert und über eine Extra Tabelle gelöst, die nennt sich Einsatzberichte.
Diese ist mit der Tabelle Straßen verknüpft. Da es sehr wenige Kunden sind, die eine Mail bekommen, ist das die praktikabelste Lösung für mich. Ich sende aus der Tabelle Einsatzberichte heraus eine Mail an die jeweiligen Kunden. Dadurch wird ja bei mehreren Einsätzen bei einem Kunden die Untertabelle in der Tabelle Straßen gefüllt.
Nun möchte ich gerne noch die Untertabelle mit der Anzahl der Einsätze als PDF anhängen an die Mail, da komme ich irgendwie nicht weiter.
Hier der aktuelle Code, habe auch schon etliches ausprobiert, bekomme aber das nicht hin, hat da jemand eine Idee?
'Email versendet' := true;
sendEmail({
from: userEmail(),
to: 'Empfänger E-Mailadresse',
bcc: userEmail(),
subject: cnt('Straßen'.Einsatzberichte) + ". Winterdiensteinsatz für das Objekt " + 'Straßen'.'Straße' + " am " + 'Datum + Uhrzeit',
text: "Some Text",
html: "Sehr geehrte Damen und Herren," + "<p>" + "hiermit melden wir Ihnen den Winterdiensteinsatz vom " + 'Datum + Uhrzeit' + " im Objekt: <em>" + 'Straßen'.'Straße' + "</em>, mit der Einsatzart: " + "<b>" + Einsatzart + "</b>" + ".</p>" + "<p>" + " Das ist der " + "<b>" + cnt('Straßen'.Einsatzberichte) + ". Einsatz</b> in der Saison " + year(today()) + "/" + year(today() + 90) + "</p>"
})
Hab das mait dem Code hier probiert:
importFile(this, printAndSaveRecord(this, "My Print Layout"), "mypdf.pdf")
Weiß aber nicht wo ich was einsetzen muss, damit ich das PDF aus der Untertabelle in die Tabelle Straßen in die Mail hinein bekomme, mit nur den Daten des jeweiligen Mailempfängers.
Gruß
Mirko
-
Hallo Mirko,
wenn die PDF Datei mit diesem Code erstellt ist dann muss man die Datei im email Block auch erwänen:
---
importFile(this, printAndSaveRecord(this, "My Print Layout"), "mypdf.pdf");
'Email versendet' := true;
sendEmail({
from: userEmail(),
to: 'Empfänger E-Mailadresse',
bcc: userEmail(),
subject: cnt('Straßen'.Einsatzberichte) + ". Winterdiensteinsatz für das Objekt " + 'Straßen'.'Straße' + " am " + 'Datum + Uhrzeit',
text: "Some Text",
html: "Sehr geehrte Damen und Herren," + "<p>" + "hiermit melden wir Ihnen den Winterdiensteinsatz vom " + 'Datum + Uhrzeit' + " im Objekt: <em>" + 'Straßen'.'Straße' + "</em>, mit der Einsatzart: " + "<b>" + Einsatzart + "</b>" + ".</p>" + "<p>" + " Das ist der " + "<b>" + cnt('Straßen'.Einsatzberichte) + ". Einsatz</b> in der Saison " + year(today()) + "/" + year(today() + 90) + "</p>",
attachments: file(this,"mypdf.pdf")
})
---
Leo
-
Hallo Leo,
ich habe jetzt nur den Code ohne meine Versuche eingestellt gehabt.
Ich habe ja eher das Problem, das ich nicht weiß, wie ich das PDF erzeuge, dass in der Tabelle Straßen als Untertabelle da ist, und dieses dann hier
importFile(this, printAndSaveRecord(this, "My Print Layout"), "mypdf.pdf");
richtig reinschreibe.
Gruß
Mirko
-
Hallo Mirko,
Die Formel ist an sich richtig, du muss aber auch ein Layout namens My Print Layout anlegen und im Layout auch deine Felder und Tabellen definieren. Klicke einfach auf Drucker-Symbol in deinem Datensatz,
Leo
Content aside
-
1
„Gefällt mir“ Klicks
- vor 3 JahrenZuletzt aktiv
- 13Antworten
- 945Ansichten