Fehlermeldung bei PrintAndSaveRecord oder importFile am iPad
Hallo
seit einiger Zeit bekomme ich am iPad bei der Funktion printAndSaveRecord oder importFile immer folgende Fehlermeldung:
Ich habe die Funktion in einigen Formularen mit einer Befehlsschaltfläche eingebaut wo ich dann auch gleichzeitig die erzeugte pdf per E-Mail verschicke, z.B. so:
let myPdf := printAndSaveRecord(this, "Ersatzteilbestellung");
let myName := "Bestellung_" + Bestellnummer + "_" + Firma.Firmenname + ".pdf";
importFile(this, myPdf, myName);
let myHtmla := replace(raw(Text1), "##Anrede##", 'ET-Empfänger'.Anrede);
let myHtmlb := replace(raw(Text2), "##Gruß##", userFullName());
let myHtml := myHtmla + myHtmlb;
let myEmail := userEmail(user());
sendEmail({
from: myEmail,
to: 'ET-Empfänger'.'E-Mail',
subject: "Ersatzteil-Bestellung_" + Bestellnummer + "_" + Firma.Firmenname,
text: text(myHtml),
html: myHtml,
attachments: file(this, myName)
});
Status := 2;
alert("""" + myName + """ verschickt an """ + 'ET-Empfänger'.'E-Mail' + """.")
Die Pdf wird zwar gespeichert, der Status geändert und auch den alert bekomme ich, jedoch wird die eMail nicht verschickt.
wenn ich dann ein zweitesmal drücke funktioniert es ganz normal.
hat jemand eine Idee woran das liegen könnte bzw. wie ich die Funktion unterbrechen kann wenn eine Fehlermeldung kommt?
Danke
Lg Tom
2 Antworten
-
Hallo Tom,
es kann sein, dass die Datei zum Zeitpunkt der Mail noch nicht zur Verfügung steht da sie dann noch in die Cloud hochgeladen wird.
Ich würde dir empfehlen, zwischen Erstellung der Datei und dem Versenden eine Abfrage einzubauen, die dann für eine notwendige Verzögerung sorgt:
let myPdf := printAndSaveRecord(this, "Ersatzteilbestellung");
let myName := "Bestellung_" + Bestellnummer + "_" + Firma.Firmenname + ".pdf";
importFile(this, myPdf, myName);
let result := dialog("Mail senden", "Willst du die Datei per Mail versenden?", ["Warum nicht", "Nee lass mal"]);
if result = "Warum nicht" then
let myHtmla := replace(raw(Text1), "##Anrede##", 'ET-Empfänger'.Anrede);
let myHtmlb := replace(raw(Text2), "##Gruß##", userFullName());
let myHtml := myHtmla + myHtmlb;
let myEmail := userEmail(user());
sendEmail({
from: myEmail,
to: 'ET-Empfänger'.'E-Mail',
subject: "Ersatzteil-Bestellung_" + Bestellnummer + "_" + Firma.Firmenname,
text: text(myHtml),
html: myHtml,
attachments: file(this, myName)
});
end;Status := 2;
alert("""" + myName + """ verschickt an """ + 'ET-Empfänger'.'E-Mail' + """.")Vielleicht kannst du dafür dann ja auf die Abschluß-Meldung verzichten...?
Evtl. hift es auch, wenn du das ganze serverseitig ausführen lässt (
do as server <script> end
) - das habe ich aber noch nicht ausprobiert - ich frage vor dem Mail-Versand ganz gerne mal nach, ob das überhaupt richtig ist. ;)VG Frank
-
Hallo Frank!
danke für den Tipp, funktioniert super.
Serverseitig funktioniert es leider nicht aber deine Lösung passt gut und die Abfrage vorher ist eigentlich wirklich vernünftig.
danke
lg Tom
Content aside
- vor 5 JahrenZuletzt aktiv
- 2Antworten
- 1420Ansichten