Warnung für längeres PDF Rendern
Moin lieber Ninox Community
ich möchte eine embedded View als PDF drucken .. ich hier den üblichen weg über eine temporäre PrintTabelle ... allerdings dauert es ganz schön. Beide Macs zeigen hier den Mac Ball des Todes ... hatte erst eine Endlosschleife in der for do im Verdacht. Mit etwas Geduld öffnet sich die PDF aber...
nun würde ich gern eine "Warnung" wären des Vorgangs ausgeben.... leider erscheint ein vorgeschalteter alert erst mit der PDF.
Ideen?
hier mein code
alert("print is in progress .... please wait!");
let my := this.Nr;
let xYear := Year;
let xTotal := Total;
let n := (create printVKMA_pdf);
n.(Year := xYear);
n.(Total := xTotal);
for i in (select DATE)[JOB.CTRL_Progress != 1 and Type != 5 and year(Date) = xYear] do
let j := (create itemsAA);
j.(Date := i.Date);
j.(Production := i.JOB.PRODUCTION.Production);
j.(City := i.City);
j.(Venue := i.Venue);
j.(Country := i.Country);
j.('Full Day (24h)' := i.'Full Day (24h)');
j.('overnight rate' := i.'overnight rate');
j.(Departure := i.Departure);
j.(Arrival := i.Arrival);
j.(Rate := i.Rate);
j.(printAA := n)
end;
printRecord(record(printVKMA_pdf,number(n)), "PES_VKMA");
delete (select printVKMA_pdf)
12 Antworten
-
Schalte doch einen Dialog mit "OK, Ab dafür" Button davor...
l
et myAntwort := dialog("ACHTUNG KAFFEEPAUSE!", "Dieser Vorgang kann eine Weile dauern. Trotzdem starten?", ["Ja, ab dafür", "Nee, lass mal"]);
if myAntwort = "Ja" then
let my := this.Nr;
let xYear := Year;
let xTotal := Total;
let n := (create printVKMA_pdf);
n.(Year := xYear);
n.(Total := xTotal);
for i in (select DATE)[JOB.CTRL_Progress != 1 and Type != 5 and year(Date) = xYear] do
let j := (create itemsAA);
j.(Date := i.Date);
j.(Production := i.JOB.PRODUCTION.Production);
j.(City := i.City);
j.(Venue := i.Venue);
j.(Country := i.Country);
j.('Full Day (24h)' := i.'Full Day (24h)');
j.('overnight rate' := i.'overnight rate');
j.(Departure := i.Departure);
j.(Arrival := i.Arrival);
j.(Rate := i.Rate);
j.(printAA := n)
end;
printRecord(record(printVKMA_pdf,number(n)), "PES_VKMA");
delete (select printVKMA_pdf)
end
-
bei
if myAntwort =
muss dann natürlich "Ja, ab dafür" rein oder du machst einif myAntwort like "Ja"
-
genau das war auch der einzige Ausweg, der mir eingefallen ist... ich fand es nur komisch, dass alert erst ausgeführt wird, wenn das ganze Script durchgelaufen ist. Das Pdf schreiben dauert hier echt lange.... mein Altes MacBook fängt bei einer Liste von nicht mal 30 Datensätzen richtig an zu kochen CPU 100% und Lüfter Vollgas), nach ein paar Minuten denkst du, der Kaffee kocht über und die Aktivitätsanzeige sagt NX reagiert nicht. Bin dann an den iMac und da gings etwas schneller. Dachte wirklich, ne Endlosschleife gebaut zu haben. Leider soll die DB später eine Verpflegungskostenmehraufwandstabelle für ein Jahr ausspucken, mit ca 200 Datensaetzen, Da muss ich wohl für ne Stunde ins Kühlhaus ;)
-
Du generierst EIN PDF richtig? Hast Du mal versucht innerhalb des Druckeditors ein Formelfeld anzulegen und dir darin die
for i in (select DATE)[JOB.CTRL_Progress != 1 and Type != 5 and year(Date) = xYear] do
Schleife auszuführen... ohne temporäre Tabelle?
-
Schau mal, ich habe hier eine simple Messeliste. Innerhalb des Druckeditors im Layout sucht ein Formelfeld nach allen Teilnehmern in einer for p Schleife und darin wiederum nach allen Weinen eines Teilnehmers in einer for i Schleife...
Da der Druckeditor leider nicht so flexibel in der Gestaltung ist, habe ich diese Felder auch noch teilweise mehrfach dupliziert und unterschiedlich formatiert (Farbe, fett usw...). Die Teile welche nicht benötigt werden, habe ich durch "leer" ersetzt oder durch einen Absatz - damit der Zeilenlauf gleich bleibt. Leider muss man etwas fummeln wenn man Fettschrift benutzt oder andere Schriftgrößen, da sich der Zeilenabstand im finalen PDF ändert...
Aber es geht. Hier die Druckansicht:
Und hier das erzeugte PDF:
-
Das Formular ist bei klick auf das Druckersymbol gefühlt SOFORT da... Vielleicht lösst sich das für deine Anwendung auch so umsetzen, ohne erstellen einer temporären Tabelle
-
Wenn ich erlich bis, kann ich aus dem Stand gar nicht sagen, warum ich diesen Umweg gehen "musste" ... am Ende stammt die Idee von Nioxus .... ich werden deinen Weg mal durchdenken, denn eigentlich sollte meine PDF wesentlich weniger aufwendig .... ist ja nur fürs Finanzamt und muss nicht fanzy aussehen. Ich gehe das mal später an .... danke für den Input .... finde super, wie sich hier Leute unterschiedlichsten Levels gegenseitig helfen .... manchmal sieht man Wälder vor lauter Bäumen nicht....
-
Wenn ich erlich bis, kann ich aus dem Stand gar nicht sagen, warum ich diesen Umweg gehen "musste" ... am Ende stammt die Idee von Nioxus .... ich werden deinen Weg mal durchdenken, denn eigentlich sollte meine PDF wesentlich weniger aufwendig .... ist ja nur fürs Finanzamt und muss nicht fanzy aussehen. Ich gehe das mal später an .... danke für den Input .... finde super, wie sich hier Leute unterschiedlichsten Levels gegenseitig helfen .... manchmal sieht man Wälder vor lauter Bäumen nicht....
-
Ja, leider ist zum einen die Ninox Dokumentation nicht so umfangreich, zum anderen ist das ganze System aber auch eine total offene Platform und daher sehr individuell - auch die herangehensweisen. Das Forum mit allen Teilnehmern ist echt super hilfreich, gäbe es das nicht, hätte ich ninox wahrscheinlich nach 14 Tagen "in die Ecke geworfen"... aber wenn sich der Knoten einmal löst ist es echt genial.
-
ich liebe es, ist die erste DB Plattform wo ich genau dieses Wegwerfen nicht gemacht habe, wie zB Filemaker oder Access ...
-
Zitat: "aber wenn sich der Knoten einmal löst ist es echt genial."
Bis der nächste Knoten kommt.... ;-)
Ohne die Community wäre die Software nahezu unbrauchbar.... Ist aber nur meine schlichte Meinung. Die Doku ist nicht wirklich hilfreich, der Support "ab Werk" eher gewöhnungsbedürftig. Ich habe keine Zeit um ständig irgendwelche Webinaren zu folgen in denen mein konkretes Problem vielleicht, aber vielleicht auch gar nicht angesprochen wird. Oder Termine für irgendwelche Online Teamgeschichten.
Content aside
- vor 11 MonatenZuletzt aktiv
- 12Antworten
- 1122Ansichten
-
1
Folge bereits