Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

PDF Formular per Email senden mit individuellem Betreff

Frage Entwicklung JavaScript

Mitglied: Casiopaya80

Casiopaya80 (Level 1) - Jetzt verbinden

18.06.2014 um 13:09 Uhr, 9111 Aufrufe, 12 Kommentare

Hallo,

ich möchte gerne ein PDF Formular per Email versenden wobei die Betreffzeile automatisch individuell ausgefüllt werden soll (Kundennummer, Name des Kunden und Land).

Ich benötige einen String den ich in das Feld "URL für Verknüpfung eingbenen" kann.

Ich dachte es wäre irgendwas wie mailto:?subject=Name + getField("CustomerName"). Aber leider steht dann nur in der Betreffzeile "Name"... Irgendwas mit dem getField scheint nicht zu stimmen...

Das Formular habe ich mit Adobe Acrobat XI Pro Version 10.0.07 gemacht.

hat jemand eine Idee wie das funktionieren könnte?

Danke!



Mitglied: colinardo
LÖSUNG 18.06.2014, aktualisiert um 14:31 Uhr
Hallo Casiopaya80, Willkommen auf Administrator.de!
Nehme als Aktion der Schaltfläche "JavaScript ausführen" und dann gibst du folgendes ein (Feldnamen musst du natürlich an dein Dokument anpassen):
01.
var c_ID =  this.getField('CustomerID').value; 
02.
var c_name =  this.getField('CustomerName').value; 
03.
var c_land =  this.getField('CustomerCountry').value; 
04.
var betreff = 'Kundennummer: ' + c_ID + ' / Name: ' + c_name + " / Land: " + c_land; 
05.
var body = 'Das ist der Body der Nachricht'; 
06.
this.mailDoc(false, "empfaenger@domain.de", "", "", betreff, body );
Siehe auch dieses Demo-PDF

Dies sind die Parameter für die Funktion mailDoc:
bUI  - (optional) If true (the default), the rest of the parameters are used in a 
compose-new-message window that is displayed to the user. If false, the cTo 
parameter is required and all 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. 
 
cTo (optional)  - The semicolon-delimited list of recipients for the message. 
cCc (optional) - The semicolon-delimited list of CC recipients for the message. 
cBcc (optional) - The semicolon-delimited list of BCC recipients for the message. 
cSubject (optional) -  The subject of the message. The length limit is 64 KB. 
cMsg (optional) - The content of the message. The length limit is 64 KB.
Eine Acrobat Javascript API Referenz gibt es zum nachlesen

Grüße Uwe
Bitte warten ..
Mitglied: Casiopaya80
18.06.2014 um 14:31 Uhr
Vielen Dank! Funktioniert super!!!!

Viele Grüße,
Anja
Bitte warten ..
Mitglied: Casiopaya80
01.07.2014 um 12:56 Uhr
Hallo Uwe,

ich habe noch eine kurze Frage zu meinem Problem von vor 2 Wochen.

Wie kann ich dem Formular denn sagen, dass es nach meinem Text (Body) ein paar Leerzeilen macht?
Jetzt hängt leider die Signatur direkt an meinem Text im Body und ich weiß nicht wie ich diese Leerzeilen einfügen kann?
Könntest Du bitte mir nochmals helfen?

Danke und Grüße,
Anja
Bitte warten ..
Mitglied: colinardo
LÖSUNG 01.07.2014, aktualisiert um 13:43 Uhr
Zitat von Casiopaya80:
Wie kann ich dem Formular denn sagen, dass es nach meinem Text (Body) ein paar Leerzeilen macht?
var body = 'Das ist der Body der Nachricht\n\n\n';
Grüße Uwe
Bitte warten ..
Mitglied: Casiopaya80
01.07.2014 um 13:43 Uhr
SUPER! Vielen Dank nochmal!!!
Bitte warten ..
Mitglied: Elchfliege
17.03.2015 um 12:06 Uhr
Vielen Dank für den Tipp mit dem Java-Script. Funktioniert.
ABER leider ist dadurch die Prüfung der erfoderlichen Felder verloren gegangen bei meinem Formular. Wir kann man das Script ergänzen, damit die erforderlichen Felder geprüft werden, dass sie nicht leer sind?
Vielen Dank im voraus
Gert
Bitte warten ..
Mitglied: colinardo
17.03.2015, aktualisiert um 13:05 Uhr
Hallo Gert, Willkommen auf Administrator.de!
Wir kann man das Script ergänzen, damit die erforderlichen Felder geprüft werden, dass sie nicht leer sind?
Dazu musst du jedes Feld auf seine Werte prüfen und bei einem leeren Feld aus der Funktion springen.
Beispiel für die Prüfung eines Feldes:
01.
var c_ID =  this.getField('CustomerID').value; 
02.
if (c_ID == ""){ 
03.
  app.alert('Das Feld darf nicht leer sein.'); 
04.
  exit; 
05.
06.
// usw.
Wenn du alle Textfelder auf einmal prüfen willst, geht das auch mit einer Schleife über alle Textfelder:
01.
for(var i=0; i<this.numFields;i++){ 
02.
    var f = this.getField(this.getNthFieldName(i)); 
03.
    if (f.type == "text" && f.value == ""){ 
04.
        app.alert('Ein benötigtes Feld ist nicht ausgefüllt'); 
05.
        f.setFocus(); 
06.
        exit; 
07.
08.
09.
var c_name =  this.getField('CustomerName').value; 
10.
var c_land =  this.getField('CustomerCountry').value; 
11.
var c_ID =  this.getField('CustomerID').value; 
12.
var betreff = 'Kundennummer: ' + c_ID + ' / Name: ' + c_name + " / Land: " + c_land; 
13.
var body = 'Das ist der Body der Nachricht'; 
14.
this.mailDoc(false, "empfaenger@domain.de", "", "", betreff, body );
Für Felder anderen Typs muss man in der Schleife separat prüfen, je nachdem was für ein Typ Feld es ist.

Wenn man nur Felder prüfen will die die Eigenschaft Benötigt (required) haben, kann man das einfach mit Ergänzung des IF-Teils machen:
 if (f.type == "text" && f.required == true && f.value == ""){
Ich verweise auf die JavaScript-Referenz von Acrobat, da stehen die verfügbaren Eigenschaften aller Element drin. Ist für Entwicklungszwecke mit Acrobat unverzichtbar.

Grüße Uwe
Bitte warten ..
Mitglied: Elchfliege
17.03.2015 um 14:01 Uhr
Hallo Uwe
vielen Dank für Deine schnelle Hilfe. Ich denke das wird mir weiterhelfen. Es geht nur um zwei Textfelder die geprüft werden müssen.
Die JavaScript Referenz hatte ich mir schon angeschaut, aber leider habe ich nur sehr wenig Ahnung mit JavaScript.
Ich werde das heute abend mal ausprobieren und dann noch ein Feedback geben.
Nochmals vielen Dank für die schnelle Reaktion!
Bitte warten ..
Mitglied: Elchfliege
17.03.2015 um 20:04 Uhr
Hallo nochmal
habe das Script angepasst und es funtkioniert wie es soll. Super, vielen Dank!
Falls es vielleicht jemand anderem hilft stelle ich das Script mal hier rein:

var c_name = this.getField('Person 1').value;
if (c_name == ""){
app.alert('Fältet ||Person 1: Förnamn/Efternam|| får inte vara tomt.');
exit;
}
var c_tel = this.getField('Telefon').value;
if (c_tel == ""){
app.alert('Fältet ||Telefon|| får inte vara tomt.');
exit;
}
var betreff = 'Dein Betreff / ' + c_name;
var body = 'Dein Text';
this.mailDoc(false, "info@xxxxx.xx", "", "", betreff, body );
Bitte warten ..
Mitglied: Elchfliege
20.03.2015 um 10:26 Uhr
Hallo
eine weitere Frage hierzu:
mein Kunde möchte gerne, dass sich das PDF-Dokument in einem neuen Tab oder neuer Seite öffnet. Vor allem auch auf dem Smartphone, so dass das Formular dann direkt im Smartphone (und auch am Desktop-PC) ausgefüllt und versendete werden kann.
Kann mir jemand einen Tipp geben dazu?
Vielen Dank im Voraus!
Bitte warten ..
Mitglied: colinardo
20.03.2015, aktualisiert um 11:09 Uhr
Was meinst du mit "auf einer neuer Seite" ? Im Browser ?
Dafür reicht es, dem Link in deiner HTML-Datei das Attribut target="_blank" mit zu geben.
<a href="http://www.domain.de/datei.pdf" target="_blank" >Dein Dokument</a>
Aber für sowas bitte in Zukunft einen neuen Thread aufmachen anstatt hier alte Sachen aufzuwärmen, das hat nun gar nichts mit dem Thread zu tun. Merci.

Grüße Uwe
Bitte warten ..
Mitglied: Elchfliege
20.03.2015 um 11:18 Uhr
Danke Uwe
Du hast recht, das ist natürlich eine andere Problematik.
Ich werde es nochmal an anderer Stelle erläutern.
Auf jeden Fall vielen Dank für die schnelle Reaktion.
Viele Grüße
Gert
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Outlook & Mail
gelöst Outlook Antwort auf eine Email von Senden im Auftrag von (3)

Frage von Martin1984 zum Thema Outlook & Mail ...

Microsoft Office
Formular Autofill - Infopath (1)

Frage von TlBERlUS zum Thema Microsoft Office ...

Sonstige Systeme
PDF-Formulare mit handschriftlicher Unterschrift (19)

Frage von FenjaW zum Thema Sonstige Systeme ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...