Mehrere Formulare in ein PDF drucken (und per Email versenden)
Hallo!
Ich würde gerne über den Druck auf einen Button, meinem User es ermöglichen, dass automatisch aus mehreren Formularen eine PDF Datei generiert wird, die dann an eine Email angehängt wird. Letzteres ist kein Problem, allerdings kann ich mit z.B. printAndSaveRecord nicht ein Array der Formulare übergeben.
Andere Ideen?
Gruß Andreas
16 Antworten
-
Dies ist möglich.
printAndSaveRecord
fügt je einen pdf hinzu.
es gibt die Funktion
files()
mit der alle Anhänge als attachment angehöngt werden können.
Birger
-
Hallo Birger!
leider finde ich keine Doku zu der printAndSaveRecord Funktion. Mir geht es aber darum, dass am Ende and der Email nicht 3 Anhänge dran hängen, sondern lediglich ein PDF, das alle 3 Anhänge enthält.
Also, z.B. eine Funktion wie
attachment := printAndEmailRecord(this._id, ["Form1","Form2","Form3"],"Kunde-{CustID}.pdf");
Und dann attachment an die Email ran.
Gruß Andreas
-
So etwas möchte ich schon lange umsetzten können. Die Frage interessiert mich auch sehr.
-
dies ist derzeit noch nicht möglich. Wir abreiten daran.
Birger
-
Mehrer Formularinhalte in ein PDF drucken wäre auch für mich ein super Funktion. Ansonsten wüste ich nicht, wie ich Daten aus unterschiedlichen Tabellen übersichtlich in einem umfangreichen Bericht darstellen könnte.
-
Ich bin auch sehr interessiert. Andreas Pilz, ist es möglich, dass du dein Skript einmal postest? Ich denke du hast es auf eine Schaltfläche gelegt!? Ich bin noch Anfänger in der Programmierung von Ninox und möchte gern lernen, wie soetwas funktioniert.
-
HAllo! Kann ich gerne machen, nur funktioniert es nicht, da Ninox jede der "Seiten" mit dem gleichen Namen versieht, der sich wiederum aus dem Datensatz ableitet. :-( Das Thema ist leider immer noch nicht gelöst. Ich habe auch von Keinem Ninoxler wieder was gehört zu dem Thema.
Auch nicht, dass man zu einem Datensatz mehrere Templates macht, die dann eben in Serie ausgedruckt werden. Ich benötige sowas, um Vertragsvorlagen für Kunden zu drucken, die über mehrere Seiten gehen, wo immer wieder unterschiedliche Inhalte (aka Datenfelder) in den Text eingesetzt werden.
Sorry, aber schöne Weihnachten!!!
-
Hallo!
Gibt es hierzu inzwischen eine Lösung? Zumindest eine Möglichkeit, den Dateinamen zu definieren? Oder gleich ein Array von Formularen in ein File drücken?
Gruss Andreas
-
Hallo,
Danke für die Erinnerung, wir haben es nicht vergessen und hoffen, dieses Feature in naher Zukunft veröffentlichen zu können.
Vielen Dank für eure Geduld.
Gruß, Jörg
-
Hallo!
nachdem - dank DSGVO - das Thema wieder interessiert... gibt es Neuigkeiten?
Gruss Andreas
-
Hallo, das würde mich auch sehr dringend interessieren!
Gruß.
Adam.
-
... zur Erklärung. Und vielleicht hat jemand eine Lösung. In unserem Unternehmen werden am Ende des Monats mehrere Bestellungen ausgedruckt.
Mit folgendem Script habe ich es relativ einfach gelöst:for i in select 'Klient' do
if text(i.Status) = "aktiv" then
printRecord(i, "BESTELLUNG")
else
void
end
endNervig ist nur, dass nach Ablauf der Schleife mehrere einzelne PDFs geöffnet werden, die dann einzeln ausgedruckt werden müssen. Es kostet einfach viel zu viel Zeit. Wenn jemand eine Möglichkeit kennt diese einzelnen PDFs zu einer einzigen zusammen zu fügen, so wäre ich ihr/ihm sehr dankbar.
Danke.
Adam -
+1 für den Dank. Und evtl. auch mit dem "Gimmick" die Dateien gleich per Email zu verschicken.
Es wäre ja auch eine Lösung denkbar, dies als neue Funktion in der Datenbank zu verankern?
-
Hallo, möchte das Thema auch noch einmal aufgreifen. Ist es denkbar - ähnlich wie beim Ausdruck einer Ansicht -, die Druckdaten erst in eine Hilfstabelle zu schreiben und dort dann eine einzige PDF generieren zu lassen, die alle Einträge der Hilfstabelle enthält. Bin zu wenig Ninox-Crack, um das beurteilen zu können. Ist eine Idee, da ich letztens Ansichten ausdrucken musste, was ja nur über ein Hilfskonstrukt geht - aber es geht.
Gruß Maurice
-
Nur mit externen Programmen wie PDF-Creator.
Ninox selbst kann nicht mehrere Dateien zu einer Datei zusammenfassen. -
Ich habe das Problem mit den vielen Einzel-PDFs über eine Hilfstabelle gelöst. Ich habe eine Tabelle "Print" erstellt und darunter eine Untertabelle "PrintItem" mit den zu druckenden Einträgen gemacht. In diese Untertabelle kopiere ich die gewünschten Datensätze mit den zu druckenden Feldern rein. Eventuell geht es auch direkt über Formeln oder Ansichten, aber das habe ich noch nicht ausprobiert.
Dann habe ich ein dynamisches Drucklayout für die Tabelle "Print" erstellt. Für dieses Layout verwende ich die Repetitions-Funktion https://docs.ninox.com/en/print/print-customization/repetitions. Ich habe eine Vorlage in Word erstellt, welche ich dann importiert habe. Dabei habe ich eine Tabelle in der gewünschten Größe für einen Datensatz gebaut und immer die Felder von d.PrintItem[i] verwendet. Dann zuletzt noch eine zusätzliche Zeile mit d.PrintItem[i+1], damit das Drucken durch die Elemente durchiteriert.
Ich habe die Tabelle im Drucklayout so groß gemacht, damit je PrintItem eine Seite entsteht, aber man kann das natürlich auch so gestalten, dass mehrere PrintItems auf eine Seite gehen. Dabei sollte man darauf achten, dass die Seitenwechsel dann entsprechend schön passen.
Einziger Schönheitsfehler ist, dass ganz am Ende des PDFs eine leere Seite entsteht. Diese kommt vermutlich daher, dass die Zeile mit d.PrintItem[i+1] auf der zweiten Seite steht. Hier habe ich noch keine Lösung gefunden, aber ich habe eine saubere PDF mit allen Einträgen.
Content aside
- vor 1 JahrZuletzt aktiv
- 16Antworten
- 4423Ansichten
-
1
Folge bereits