Datenübergabe in E-Mail

Die Möglichkeiten und Tücken von Formularen
Kariya
Beiträge: 13
Registriert: 04.07.2017, 14:09

Datenübergabe in E-Mail

Beitrag von Kariya » 26.07.2017, 14:16

Hallo,

folgender Ausgangszustand: Ich habe in meinem Formular 2 Felder (Datum & Auftragsnummer) und ein Dropdownfeld in welchem verschiedene E-Mailadressen ausgewählt werden können.

Ich würde jetzt gern beim betätigen eines Buttons eine E-Mail versenden, an die E-Mail welche im Dropdownfeld ausgewählt ist.
Zudem sollen sowohl das Datum als auch die Auftragsnummer im Betreff stehen.

Ist dies Möglich und wenn ja wie kann ich dies möglichst ohne den Livecycle Designer realisieren.

Vielen Dank schonmal im Vorraus für eure Lösungsansätze.

Semonia
Beiträge: 80
Registriert: 21.07.2016, 07:46

Datenübergabe in E-Mail

Beitrag von Semonia » 27.07.2017, 08:45

Hallo ...

Ja das kannst du machen .... ein Blick in die API lohnt sich dafür immer

Code: Alles auswählen

mailMsg
Sends out an e-mail message with or without user interaction.
See also the Doc object mailDoc and mailForm methods, the FDF object mail method and the Report object mail method.
Note:On Windows: The client machine must have its default mail program configured to be MAPI enabled to use this method.
Parameters
4.0
X
bUI
Indicates whether user interaction is required. If true, the remaining parameters are used to seed the compose-new-message window that is displayed to the user. If false, the cTo parameter is required and others are optional.
Note:(Acrobat 7.0) When this method is executed in a non-privileged context, the bUI parameter is not honored and defaults to true. See “Privileged versus non-privileged context” on page 32.
cTo
A semicolon-separated list of addressees.
cCc
(optional) A semicolon-separated list of CC addressees.
cBcc
(optional) A semicolon-separated list of BCC addressees.
cSubject
(optional) Subject line text. The length limit is 64 KB.
cMsg
(optional) Mail message text. The length limit is 64 KB.
Adobe Acrobat SDK JavaScript API
JavaScript for Acrobat API Reference newDoc 131
Example
Open the compose new message window.
app.mailMsg(true);
Send the message to fun1@example.com and fun2@example.com.
app.mailMsg(false, "fun1@example.com; fun2@example.com", "", "",
"This is the subject", "This is the body of the mail.");
It is possible to compose a message containing form data.
var cMyMsg = "Below are the current budget figures:nn";
cMyMsg += "Date Compiled: " + this.getField("date").value + "n";
cMyMsg += "Current Estimate: " + this.getField("budget").value + "n";
app.mailMsg({
bUI: true,
cTo: "myBoss@example.com",
cSubject: "The latest budget figures",
cMsg: cMyMsg
} );
LG
Semonia

Kariya
Beiträge: 13
Registriert: 04.07.2017, 14:09

Datenübergabe in E-Mail

Beitrag von Kariya » 27.07.2017, 10:46

Hallo Semonia,

danke für deine schnelle Antwort.
Jedoch muss ich leider zugeben das mir der Background fehlt um das zu implementieren.

Bereitstellung des Formulares wäre problemlos möglich.

Kariya
Beiträge: 13
Registriert: 04.07.2017, 14:09

Datenübergabe in E-Mail

Beitrag von Kariya » 09.08.2017, 11:41

Kann keiner weiterhelfen?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Schinderflex
Beiträge: 36
Registriert: 28.04.2017, 12:12

Datenübergabe in E-Mail

Beitrag von Schinderflex » 14.08.2017, 12:30

Hallo Kariya,

ich habe versucht einen Mailbutton zu erstellen der per Javascript ausgeführt wird und nicht wie bei dir per "Formular Senden". Der Vorteil dabei ist, man kann eben den Betreff und auch den Body beliebig bestücken.

Allerdings ist dies bei deinem Formular nicht möglich, warum kann ich dir leider nicht sagen aber evtl. hat hier ein erfahrener Acronaut eine Idee!?
Den Button ansich kann ich erstellen nur sobald man diesen betätigt, tut sich nichts.
Der selbe Button (kopiert) in einem frischen Formular funktioniert ohne Probleme.

Den Code den ich bei dir einfügt habe, sieht so aus:

Code: Alles auswählen

var druck; 
 druck=""
 for (var i=0;i<this.numFields;i++) 
 { 
  var feldName=this.getNthFieldName(i); 
  var feld=this.getField(feldName); 
    if ((feld.type != "button") && feld.required && (feld.value==""||feld.value=="Off"||feld.value==" ")) 
{ 
   druck=druck + feld.userName + "\n";
  } 
 } 

var cDate = this.getField("Date").value;
var cAuftrag = this.getField("application_number").value;
var cEmpfaenger = this.getField("email_supervisor");
var cSurname = this.getField("surname_proposer");
var cName = this.getField("name_Proposer");
var cSupervisor = this.getField("dropdown_supervisor");


// Betreff und Nachricht deklarieren

var cBetreff = "Datum: " + cDate + " " + "Auftragsnummer: " + cVorname;

var cNachricht = "Sehr geehrte(r) " + cSupervisor + "," + "\n" + "\n" +  "anbei die Genehmigungsanfrage für " + cName + " " + cSurname + ".";





if (druck==""){ 
//app.doc.print(); 
this.mailDoc({bUI: true, cTo: cEmpfaenger, cSubject: cBetreff, cMsg: cNachricht});
}
else
{app.alert("Bitte füllen Sie vor dem Versenden alle Pflichtfelder aus.\nFehlende Felder:\n\n" + druck,1);
};

 
Hier werden alle Pflichtfelder geprüft, das ist ja auch in deinem Formular so.
Anschließend wird der Betreff mit Datum: xx/xx/xxxx Auftragsnummer: xxxxxxxx befüllt.
Im body wird dann noch der Empfänger namentlich genannt und auch der Antragsteller.

Hoffe ich konnte weiterhelfen.

PS: Sollte jemand herausfinden warum der Button die Mail nicht los schcikt dann wäre es super diese Info zu erhalten, das würde mich nämlich auch interessieren.

Grüße

Kariya
Beiträge: 13
Registriert: 04.07.2017, 14:09

Datenübergabe in E-Mail

Beitrag von Kariya » 22.08.2017, 21:46

Ich habe da eine Vermutung. Durch Konzernrichtlinien werden bei der Erstellung des Formulars im Hintergrund anscheinend noch Scripte mitgegeben, die die Funktion das Buttons anscheinend unterbinden.

Schinderflex
Beiträge: 36
Registriert: 28.04.2017, 12:12

Datenübergabe in E-Mail

Beitrag von Schinderflex » 24.08.2017, 15:47

Also auch wenn man alles kopiert und in ein neues Formular einfügt, funktioniert es nicht.
Ob ein wissender Acronaut evtl. noch eien Idee hat?
Wo könnten denn solche Konzernrichtlinien mitgegeben werden und wo werden diese gespeichert bzw. sind hinterlegt. Da muss man doch drankommen oder?

Gruß

klazauber
Beiträge: 42
Registriert: 13.01.2014, 14:51

Datenübergabe in E-Mail

Beitrag von klazauber » 11.11.2017, 20:16

Hallo Schinderflex,

habe ein Beispiel mit deinem Script verfasst. Leider reagiert der Sendebutton zwar, sendet aber nicht.
Könntest Du mal nachschauen was ich da falsch gemacht habe???

Vielen dank für einen Tip...

MfG


:) habe es geschafft. Hier die fertige Variante....
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.

Kariya
Beiträge: 13
Registriert: 04.07.2017, 14:09

Datenübergabe in E-Mail

Beitrag von Kariya » 12.12.2017, 16:40

Hallo Schinderflex,

ich habe es jetzt soweit übernommen, dass es funktioniert.
Was leider nicht richtig funktioniert ist die Pflichtfeldprüfung.

Wenn ein Pflichtfeld nicht befüllt ist = Fehlermeldung mit der Angabe des Betreffenden Feldes.
Wenn alle Pflichtfelder gepflegt sind = Fehlermeldung ohne Feld (klar sind ja alle befüllt ;-))

Schinderflex
Beiträge: 36
Registriert: 28.04.2017, 12:12

Datenübergabe in E-Mail

Beitrag von Schinderflex » 12.12.2017, 17:39

Hi,

kannst du das Formular mal hier ins Forum stellen, dann schau ich mir das mal an, Danke.

Gruß

Antworten