Formular signieren und gleich als PDF versenden

Grundsätzliche Themen zur Bedienung, Erstellung von Formularen, Datenbankanbindung und Beispiele ...
Antworten
vtx-rider
Beiträge: 1
Registriert: 07.02.2008, 18:12

Formular signieren und gleich als PDF versenden

Beitrag von vtx-rider » 07.02.2008, 19:44

Hallo zusammen

Irgendwie ist meine vorherige Nachricht nicht angekommen oder ich habe sie irgendwie vor dem Versenden "abgeschossen". Also auf ein Neues....

Seit einer Woche habe ich die Adobe CS 3 Design Premium Suite und mache nun meine ersten Schritte mit dem Lifecycle Designer.

Mein System: Win/XP SP2
Ich habe keine Vorkenntnisse mit dem Lifecycle Designer, habe aber schon in Access programmiert.

Folgendes möchte ich: Ein Formular auf einer Website für Kursanmeldungen. Die interessierten Personen sollen das Formular am Bildschirm ausfüllen können und es danach (1) entweder ausdrucken und dann unterzeichnen und per Post verschicken  oder es (2) mit einem Mausklick digital signieren und als PDF via E-Mail an die vordefinierte Adresse mailen.



Folgendes habe ich bereits: Das Formular mit den entsprechenden Feldern etc., die Schaltfläche "Drucken" auf dem Formular und das Feld "Digitale Unterschrift". Das Drucken funktioniert einwandfrei. Ebenso die digitale Signatur und der anschliessende Versand als PDF via E-Mail. Damit das Formular nach der Signierung nicht mehr verändert werden kann, werden die Felder nach der Signierung gesperrt. Beides habe ich in der XML-Quelle an entsprechender Stelle eingefügt. Der nachfolgend aufgeführte Codeabschnitt funktioniert also soweit einwandfrei:
[fontsize=2]
<[/fontsize][fontsize=2]field[/fontsize][fontsize=2] [/fontsize][fontsize=2]minH[/fontsize][fontsize=2]="[/fontsize][fontsize=2]9.791mm[/fontsize][fontsize=2]" [/fontsize][fontsize=2]minW[/fontsize][fontsize=2]="[/fontsize][fontsize=2]67.056mm[/fontsize][fontsize=2]" [/fontsize][fontsize=2]name[/fontsize][fontsize=2]="[/fontsize][fontsize=2]Unterschriftsfeld_digital[/fontsize][fontsize=2]" [/fontsize][fontsize=2]relevant[/fontsize][fontsize=2]="[/fontsize][fontsize=2]-print[/fontsize][fontsize=2]" [/fontsize][fontsize=2]x[/fontsize][fontsize=2]="[/fontsize][fontsize=2]117.9442mm[/fontsize][fontsize=2]" [/fontsize][fontsize=2]y[/fontsize][fontsize=2]="[/fontsize][fontsize=2]250.2086mm[/fontsize][fontsize=2]">
<[/fontsize][fontsize=2]ui[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]signature[/fontsize][fontsize=2] [/fontsize][fontsize=2]type[/fontsize][fontsize=2]="[/fontsize][fontsize=2]PDF1.6[/fontsize][fontsize=2]">
<[/fontsize][fontsize=2]border[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]edge[/fontsize][fontsize=2] [/fontsize][fontsize=2]presence[/fontsize][fontsize=2]="[/fontsize][fontsize=2]hidden[/fontsize][fontsize=2]">
</[/fontsize][fontsize=2]edge[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]edge[/fontsize][fontsize=2] [/fontsize][fontsize=2]presence[/fontsize][fontsize=2]="[/fontsize][fontsize=2]hidden[/fontsize][fontsize=2]">
</[/fontsize][fontsize=2]edge[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]edge[/fontsize][fontsize=2]/>
<[/fontsize][fontsize=2]edge[/fontsize][fontsize=2] [/fontsize][fontsize=2]presence[/fontsize][fontsize=2]="[/fontsize][fontsize=2]hidden[/fontsize][fontsize=2]"/>
[/fontsize][fontsize=2]<?templateDesigner StyleID aped1?>[/fontsize][fontsize=2]</[/fontsize][fontsize=2]border[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]margin[/fontsize][fontsize=2]/>
<[/fontsize][fontsize=2]manifest[/fontsize][fontsize=2] [/fontsize][fontsize=2]action[/fontsize][fontsize=2]="[/fontsize][fontsize=2]all[/fontsize][fontsize=2]"[/fontsize][fontsize=2]>
</[/fontsize][fontsize=2]manifest[/fontsize][fontsize=2]>
</[/fontsize][fontsize=2]signature[/fontsize][fontsize=2]>
</[/fontsize][fontsize=2]ui[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]font[/fontsize][fontsize=2] [/fontsize][fontsize=2]typeface[/fontsize][fontsize=2]="[/fontsize][fontsize=2]Myriad Pro[/fontsize][fontsize=2]"/>
<[/fontsize][fontsize=2]margin[/fontsize][fontsize=2] [/fontsize][fontsize=2]bottomInset[/fontsize][fontsize=2]="[/fontsize][fontsize=2]1mm[/fontsize][fontsize=2]" [/fontsize][fontsize=2]leftInset[/fontsize][fontsize=2]="[/fontsize][fontsize=2]1mm[/fontsize][fontsize=2]" [/fontsize][fontsize=2]rightInset[/fontsize][fontsize=2]="[/fontsize][fontsize=2]1mm[/fontsize][fontsize=2]" [/fontsize][fontsize=2]topInset[/fontsize][fontsize=2]="[/fontsize][fontsize=2]1mm[/fontsize][fontsize=2]"/>
<[/fontsize][fontsize=2]para[/fontsize][fontsize=2] [/fontsize][fontsize=2]vAlign[/fontsize][fontsize=2]="[/fontsize][fontsize=2]middle[/fontsize][fontsize=2]"/>
<[/fontsize][fontsize=2]caption[/fontsize][fontsize=2] [/fontsize][fontsize=2]reserve[/fontsize][fontsize=2]="[/fontsize][fontsize=2]31.8436mm[/fontsize][fontsize=2]">
<[/fontsize][fontsize=2]font[/fontsize][fontsize=2] [/fontsize][fontsize=2]typeface[/fontsize][fontsize=2]="[/fontsize][fontsize=2]Myriad Pro[/fontsize][fontsize=2]"/>
<[/fontsize][fontsize=2]para[/fontsize][fontsize=2] [/fontsize][fontsize=2]vAlign[/fontsize][fontsize=2]="[/fontsize][fontsize=2]middle[/fontsize][fontsize=2]"/>
<[/fontsize][fontsize=2]value[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]text[/fontsize][fontsize=2]>Digitale Unterschrift</[/fontsize][fontsize=2]text[/fontsize][fontsize=2]>
</[/fontsize][fontsize=2]value[/fontsize][fontsize=2]>
</[/fontsize][fontsize=2]caption[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]bind[/fontsize][fontsize=2] [/fontsize][fontsize=2]match[/fontsize][fontsize=2]="[/fontsize][fontsize=2]none[/fontsize][fontsize=2]"/>
<[/fontsize][fontsize=2]event[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]submit[/fontsize][fontsize=2] [/fontsize][fontsize=2]format[/fontsize][fontsize=2]="[/fontsize][fontsize=2]pdf[/fontsize][fontsize=2]" [/fontsize][fontsize=2]target[/fontsize][fontsize=2]="[/fontsize][fontsize=2][url=mailto:jules.busslinger@bluemail.ch]mailto:jules.busslinger@bluemail.ch[/url]?
subject=Musterformular[/fontsize]
[fontsize=2]" [/fontsize][fontsize=2]textEncoding[/fontsize][fontsize=2]="[/fontsize][fontsize=2]UTF-8[/fontsize][fontsize=2]"/>
</[/fontsize][fontsize=2]event[/fontsize][fontsize=2]>
</[/fontsize][fontsize=2]field[/fontsize][fontsize=2]>[/fontsize]
[fontsize=2][/fontsize]


[fontsize=2]Wo liegt das Problem? Wenn ich nach Signierung und Versand - als Empfänger also - das Formular erneut öffne und auf das Digitale Unterschriftenfeld klicke, öffnet sich eine Message Box, die mich darauf hinweist, dass das Formular digital signiert wurde. Schliesse ich das Fenster nun, dann versendet sich das Formular erneut automatisch. D.h. die Anweisung...[/fontsize]

[fontsize=2]<event>
<submit format="pdf" target="[/fontsize][url=mailto:jules.busslinger@bluemail.ch][fontsize=2]mailto:jules.busslinger@bluemail.ch[/fontsize][/url][fontsize=2]?
subject=Musterformular[/fontsize]
[fontsize=2]" textEncoding="UTF-8"/>
</event>[/fontsize]

[fontsize=2]...wird erneut abgearbeitet. Und zwar jedes mal, wenn man auf das Feld "Digitale Unterschrift" klickt. Das möchte ich verhindern, und daran bin ich bisher gescheitert. Wenn sich das Formular bei dieser Aktion immer wieder selbst versendet, dann besteht die Gefahr von Mehrfachanmeldungen.[/fontsize]

[fontsize=2][/fontsize]

Lösungssuche (1 halbe Nacht - erfolglos): Ich habe zunächst versucht, die Anweisung, welche das Formular versendet mit einem geeigneten Ereignis zu verbinden (activity="preSave", "postSave" etc.) und an eine andere Stelle zu setzen. Ohne Erfolg!

Nachdem ich beinahe alle in Frage kommenden Ereignisse durchprobiert hatte, habe ich die  Schaltfläche "Per E-Mail versenden" genommen. Dort kann man bei den Eigenschaften definieren, dass das Formular vor dem Versand digital signiert wird: In der XML-Quelle sieht das so aus:
[fontsize=2]
<[/fontsize][fontsize=2]field[/fontsize][fontsize=2] [/fontsize][fontsize=2]name[/fontsize][fontsize=2]="[/fontsize][fontsize=2]EMailSendenSchaltfläche1[/fontsize][fontsize=2]" [/fontsize][fontsize=2]y[/fontsize][fontsize=2]="[/fontsize][fontsize=2]38.7999mm[/fontsize][fontsize=2]" [/fontsize][fontsize=2]x[/fontsize][fontsize=2]="[/fontsize][fontsize=2]122.3mm[/fontsize][fontsize=2]" [/fontsize][fontsize=2]w[/fontsize][fontsize=2]="[/fontsize][fontsize=2]34.925mm[/fontsize][fontsize=2]" [/fontsize][fontsize=2]h[/fontsize][fontsize=2]="[/fontsize][fontsize=2]6mm[/fontsize][fontsize=2]">[/fontsize][fontsize=2]<?templateDesigner isEmailSubmitObject true?>[/fontsize][fontsize=2]<[/fontsize][fontsize=2]ui[/fontsize][fontsize=2]><[/fontsize][fontsize=2]button[/fontsize][fontsize=2]/></[/fontsize][fontsize=2]ui[/fontsize][fontsize=2]><[/fontsize][fontsize=2]font[/fontsize][fontsize=2] [/fontsize][fontsize=2]typeface[/fontsize][fontsize=2]="[/fontsize][fontsize=2]Myriad Pro[/fontsize][fontsize=2]"/><[/fontsize][fontsize=2]caption[/fontsize][fontsize=2]><[/fontsize][fontsize=2]value[/fontsize][fontsize=2]>
[/fontsize][fontsize=2]<[/fontsize][fontsize=2]text[/fontsize][fontsize=2]>Per E-Mail senden</[/fontsize][fontsize=2]text[/fontsize][fontsize=2]>
[/fontsize][fontsize=2]</[/fontsize][fontsize=2]value[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]para[/fontsize][fontsize=2] [/fontsize][fontsize=2]hAlign[/fontsize][fontsize=2]="[/fontsize][fontsize=2]center[/fontsize][fontsize=2]" [/fontsize][fontsize=2]vAlign[/fontsize][fontsize=2]="[/fontsize][fontsize=2]middle[/fontsize][fontsize=2]"/>
<[/fontsize][fontsize=2]font[/fontsize][fontsize=2] [/fontsize][fontsize=2]typeface[/fontsize][fontsize=2]="[/fontsize][fontsize=2]Myriad Pro[/fontsize][fontsize=2]"/>
</[/fontsize][fontsize=2]caption[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]border[/fontsize][fontsize=2] [/fontsize][fontsize=2]hand[/fontsize][fontsize=2]="[/fontsize][fontsize=2]right[/fontsize][fontsize=2]">
[/fontsize][fontsize=2]<?templateDesigner StyleID apbx2?>
[/fontsize]
[fontsize=2]<[/fontsize][fontsize=2]edge[/fontsize][fontsize=2] [/fontsize][fontsize=2]stroke[/fontsize][fontsize=2]="[/fontsize][fontsize=2]raised[/fontsize][fontsize=2]"/>
<[/fontsize][fontsize=2]fill[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]color[/fontsize][fontsize=2] [/fontsize][fontsize=2]value[/fontsize][fontsize=2]="[/fontsize][fontsize=2]212,208,200[/fontsize][fontsize=2]"/>
</[/fontsize][fontsize=2]fill[/fontsize][fontsize=2]>
</[/fontsize][fontsize=2]border[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]bind[/fontsize][fontsize=2] [/fontsize][fontsize=2]match[/fontsize][fontsize=2]="[/fontsize][fontsize=2]none[/fontsize][fontsize=2]"/>
<[/fontsize][fontsize=2]event[/fontsize][fontsize=2] [/fontsize][fontsize=2]activity[/fontsize][fontsize=2]="[/fontsize][fontsize=2]click[/fontsize][fontsize=2]">
<[/fontsize][fontsize=2]submit[/fontsize][fontsize=2] [/fontsize][fontsize=2]format[/fontsize][fontsize=2]="[/fontsize][fontsize=2]pdf[/fontsize][fontsize=2]" [/fontsize][fontsize=2]textEncoding[/fontsize][fontsize=2]="[/fontsize][fontsize=2]UTF-8[/fontsize][fontsize=2]" [/fontsize][fontsize=2]target[/fontsize][fontsize=2]=[/fontsize][fontsize=2][url=mailto:jules.busslinger@bluemail.ch?subject=Musterformular]mailto:jules.busslinger@bluemail.ch?subject=Musterformular[/url][/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]signData[/fontsize][fontsize=2] [/fontsize][fontsize=2]target[/fontsize][fontsize=2]="[/fontsize][fontsize=2]datasignature_1[/fontsize][fontsize=2]" [/fontsize][fontsize=2]ref[/fontsize][fontsize=2]="[/fontsize][fontsize=2]$data.signatures[/fontsize][fontsize=2]">
<[/fontsize][fontsize=2]manifest[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]ref[/fontsize][fontsize=2]>$data.Formular1</[/fontsize][fontsize=2]ref[/fontsize][fontsize=2]>
</[/fontsize][fontsize=2]manifest[/fontsize][fontsize=2]>
</[/fontsize][fontsize=2]signData[/fontsize][fontsize=2]>
</[/fontsize][fontsize=2]submit[/fontsize][fontsize=2]>
</[/fontsize][fontsize=2]event[/fontsize][fontsize=2]>
<[/fontsize][fontsize=2]event[/fontsize][fontsize=2] [/fontsize][fontsize=2]activity[/fontsize][fontsize=2]="[/fontsize][fontsize=2]initialize[/fontsize][fontsize=2]">
<[/fontsize][fontsize=2]script[/fontsize][fontsize=2] [/fontsize][fontsize=2]contentType[/fontsize][fontsize=2]="[/fontsize][fontsize=2]application/x-javascript[/fontsize][fontsize=2]">//{{Adobe LiveCycle Designer Generated Code Begin}} - sign data target version check script. Do NOT modify!
if (xfa.host.name=="Acrobat"){
if (app.viewerVersion < 8)
{
this.access = "readOnly";
}
else
{
this.access = "open";
}
}
//{{Adobe LiveCycle Designer Generated Code End}} - sign data target version
script.</[/fontsize][fontsize=2]script[/fontsize][fontsize=2]>
</[/fontsize][fontsize=2]event[/fontsize][fontsize=2]>
</[/fontsize][fontsize=2]field[/fontsize][fontsize=2]>[/fontsize]

[fontsize=2][/fontsize][fontsize=2]Auch das funktioniert an sich - nur sind die Felder nun nicht gesperrt. Die entsprechende Option habe ich im Eigenschaftenfeld nicht gefunden, und auch mit der Anweisung <manifest> action="all" </manifest> bin ich nicht zum Ziel gekommen. Das Dokument kann in dieser Variante nach Signierung und Versand sogar noch verändert werden und beliebig oft wieder versandt werden, was ich ja gerade verhindern will.[/fontsize]

[fontsize=2]Weiss jemand Rat? Ich bin sicher, dass die Lösung ganz einfach ist - aber ich komme einfach nicht darauf...[/fontsize]

[fontsize=2]Vielen Dank für die Unterstützung![/fontsize]

[fontsize=2]Jules

[/fontsize]

Antworten