Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Ausgedruckte Antworten an weitere E-Mail-Adresse schicken

More
6 years 4 months ago #160878 by nzfh
Liebe Community,

im Rahmen unseres Projektes ist es notwendig, dass wir die PDF-Ausdrucke der Befragten archivieren können. Weiß jemand, wie man einstellen kann, dass die als PDF ausgedruckten Angaben an eine bestimmte im System hinterlegte E-Mail-Adresse versandt werden?

Ich bin für Hinweise und Ratschläge zur Lösung dieses Problems sehr dankbar.

Beste Grüße

Christopher
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Away
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
6 years 4 months ago - 6 years 4 months ago #160891 by Joffm
Hallo, Christopher,

das pdf wird ja in der Datei "PrintanswersController.php" erzeugt. Hier wird die Bibliothek "TCPDF" benutzt. www.tcpdf.org/

Es gibt folgende Möglichkeiten, den Output in TCPDF zu realisieren:

I: Sendet das Dokument als Datei an den Client (Browser). Sofern auf dem Client vorhanden, wird das PDF Dokument durch das Adobe Acrobat Reader Plugin des Browsers angezeigt. Der Name wird als Dateiname für den "Speichern unter" Dialog des Browser verwendet, sofern das Plugin nicht vorhanden ist bzw. explizit das Speichern der Datei angefordert wurde.
D: Sendet die Datei zum Client (Browser) und veranlasst diesen die Datei mittels des "Speichern unter" Dialogs herunterzuladen.
F: Speichert das Dokument in der mit dem Dateinamen festgelegten lokalen Datei
S: Gibt das erzeugte Dokument als Zeichenfolge zurück. Der angegebene Dateiname ist hierbei irrelevant.



LS benutzt Option "D":
Code:
$oPDF->Output($sExportFileName."-".$iSurveyID.".pdf","D");

Daher erscheint immer der Dialog, der zum Speichern oder zum Öffnen mit pdf-Reader einlädt.

Man könnte also versuchen, den Exporttyp in "F" zu ändern und zusätzlich die {SAVEID} oder eine andere einzugartige ID einfügen, also etwas wie:
Code:
$oPDF->Output("Ergebnisfiles/Daten-".[UniqueID]."-".$iSurveyID.".pdf","D");
Dann wäre die Datei im Unterverzeichnis "Ergebnisfiles" der LS Installation mit dem Namen "Daten-[UniqueID]-[surveyID].pdf"

Gut, das Herumfummeln im Quellcode ist nicht die optimale Lösung.

Daher die Bemerkung:
Es ist natürlich NICHT notwendig, dass diese pdf-Ausdrucke archiviert werden. Aber ich weiß aus eigener leidvoller Programmiererfahrung, dass immer eine der ersten Fragen ist "Kann man das auch ausdrucken?"
Da steht ja nun auch nichts anderes wie auch in den Daten.

Also könntest Du auch einfach die Bestätigungs-Email entsprechend anpassen, dass dort diese Daten enthalten sind.

Oder Du schreibst ein kleines Progrämmchen mit php oder einer anderen Sprache, mit dem Du die Datenbank ausliest und ein schönes pdf erzeugst (Da kann man dann ja auch TCPDF benutzen).

Oder Du benutzt den Datenexport nach EXCEL, um dort mit ein paar Makros eine ansprechende Seite zu erzeugen und diese nach pdf zu exportieren ("Speichern unter pdf"). Und mit EXCEL kann man das pdf ja auch versenden.

Also Möglichkeiten gibt es viele, nur den von Dir angedachten ("da klickt man irgendeine Einstellung an, und dann geht es") Weg wohl nicht.

Und, ein anderes Problem mit DIESEM pdf ist natürlich: Es wird nur erzeugt, wenn der Respondent es aktiv erzeugt, also auf "Antworten ausdrucken" klickt.
Ich persönlich würde ja immer sagen: "Ich weiß doch, was ich geantwortet habe. Warum soll ich mir das noch einmal angucken? Und erst recht, warum als pdf?"

Alles Gute
Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 6 years 4 months ago by Joffm.
The topic has been locked.
Moderators: Joffm

Lime-years ahead

Online-surveys for every purse and purpose