Eκτυπώσεις
Δεδομένα Εκτύπωσης
Πρότυπη Έκφραση: Είναι έτοιμες εκφράσεις εκτύπωσης που περιέχουν δεδομένα απο τους διαφορους Πίνακες που σχετίζονται με τις εκάστοτε Φόρμες Εκτύπωσης.
Πλέον κατά την Εισαγωγή/Διαχείρηση Δεδομένου Εκτύπωσης υπάρχει η επιλογή "Προτυπη Εκφραση" με τη βοηθεια της οποιας μπορειτε να εισαγετε αυτόματα διαφορα πεδια στη φόρμα εκτύπωσης.
Για παράδειγμα σε μια Φόρμα Παραστατικού
- για να εισαγετε το Είδος Παραστατικού αρκει πλεον να επιλέξετε τη εκφραση:
"Παραστατικά Πελατών -> Παραστατικό" - για να εισαγετε το Λεκτικό 6 Παραστατικού αρκει πλεόν να επιλέξετε τη εκφραση:
"Παραστατικά Πελατών -> Λεκτικό 6" - για να εισαγετε την Ποσότητα ενός Είδους Παραστατικού αρκει να επιλέξετε τη εκφραση:
"Κινήσεις Ειδών Αποθήκης -> Ποσότητα" (μόνο για θέση Body)
Τύπος: Οι τύποι μπορεί αν είναι:
Γενικά Στοιχεία- "Έκφραση", συμπληρώνω στο πεδίο έκφραση τι θέλω να περιέχει με την μορφή:
return "test";ήarray('text'=>'', 'url'=>'', 'updoffset'); - "HTML Έκφραση", συμπληρώνω στο πεδίο έκφραση τι θέλω να περιέχει με την μορφή:
return $html_txt;ήarray('text'=>$html_txt, 'sLN'=>, 'updoffset');*Σε θέσεις Header/Footer καλό ειναι να συμπληρώνεται το πεδίο "Έως Γραμμή" (οχι απαραιτητο για Roll & HeaderFooterOnce) - "Έκφραση με αναδίπλωση", συμπληρώνω στο πεδίο έκφραση τι θέλω να περιέχει με την μορφή:
return $txt;ήarray('text'=>$txt, 'url'=>'', 'valign' => enum{T,B,M}, 'sLN' =>, 'updoffset');*Σε θέσεις Header/Footer καλό ειναι να συμπληρώνεται το πεδίο "Έως Γραμμή" (οχι απαραιτητο για Roll & HeaderFooterOnce) - "Εικόνα", συμπληρώνω στο πεδίο έκφραση το path τις εικόνας:
- με την μορφή "http://www.site-doamin.gr/image.png" (absolute path της φωτογραφίας στο server)
- με την μορφή "../../images/image.png" (relative path της φωτογραφίας στο server)
- με την μορφή "d:/pegasus/image.png", αν η εφαρμογή είναι local webapp
return array('img' => {Το path όπως αναφέρθηκε});Αν θέλετε να κάνετε κλικ στην εικόνα και να ανοίγει κάποιος σύνδεσμος, τότε θα πρέπει να συμπληρώσετε το πεδίο με τη τιμή:return array( 'img' => {Το path όπως αναφέρθηκε}, 'link' => "{Τον σύνδεσμο}", ) ;Σημείωση: απαραίτητη προϋπόθεση αποτελεί η φωτογραφία να υπάρχει στον web Server που παίζει και η εφαρμογή σας. Υποχρεωτικά είναι να συμπληρώσετε τα Από γραμμή , Από στήλη. Συμπληρώνοντας τα Έως γραμμή , Έως στήλη τότε περιορίζεται το πεδίο που θα εκυπωθεί η εικόνα (Ο περιορισμός λαμβάνει υπόψιν τις διαστάσεις της εικόνας). Ιδανικό Image Aspect Ratio = [(col0-col)/(row0-row)]*[p85_width/p85_height]*[p85_rows/p85_cols]echo prints_element_aspect_ratio($elem['nr01']); - "Πλαίσιο", συμπληρώνω "Από γραμμή", "Από στήλη", "Έως γραμμή", "Έως στήλη" το χρώμα τις γραμμής προκύπτει ΑΠΟ το style που έχουμε επιλέξει
- "Γραμμή", συμπληρώνω "Από γραμμή", "Από στήλη", "Έως γραμμή", "Έως στήλη" το χρώμα τις γραμμής προκύπτει από το style που έχουμε επιλέξει
- "Barcode", συμπληρώνω "Από γραμμή", "Από στήλη", "Έως γραμμή", "Έως στήλη" και συμπληρώνω στο πεδίο Έκφραση τι θέλω να περιέχει με την μορφή (πιθανά barcodeTypes: C39, C128, QRCODE):
return $barcode;ήreturn array('value'=>$barcode, 'orientation'=>{'H' ή 'V'}, 'barcodeType'=>{'C39'});
- 'text': Το κείμενο που θα εκτυπωθεί
- 'img': Το path της εικόνας
- 'url' ή 'link': To URL όπου θα ισχύει το link
- 'valign':Ποια θα είναι η στοίχηση στον άξονα Y (T= TOP,B = BOTTOM,M = MIDDLE},
- 'sLN': To ύψος της γραμμής
- 'autoSizing': true ή false. Αν ειναι true, το περιεχόμενο της έκφρασης δεν ξεπερνα σε χαρακτήρες το μέγεθος του πεδίου προς εκτυπωση (Header/Footer).
- 'updoffset': Εάν θέλω οι επόμενες γραμμές να εκτυπωθούνε από κάτω (Header/Footer)
- 'upi' (deprecated): Εάν θέλω οι επόμενες γραμμές να εκτυπωθούνε από κάτω (και είμαι στο body)
- 'onOverflowChangePage' (deprecated): true ή false παίζει μόνο αν εχω header once αν ειναι true και το element παει να εκτυπωθει αναμεσα σε 2 σελιδες το παει στην απο κατω δεν ισχυει για το body
Εμφανίζεται στην Οθόνη: Σε περίπτωση που το πεδίο ΔΕΝ ειναι τσεκαρισμένο και γίνεται είσοδος από Desktop εφαρμογή, εκτελείται άμεση εκτύπωση της Φόρμας Εκτύπωσης (παράθυρο προεπισκόπησης εκτύπωσης).
Διαφορετικά εμφανιζεται στην οθόνη, ανοιγει νέο Browser Tab που προβάλει τη φόρμα εκτύπωσης.
Πίνακας: Ορίζεται τον πίνακα στον οποίο θα εμφανίζεται η εκτύπωση.
π-Αναφορά: Ορίζεται την π-Αναφορά στην οποία θα εμφανίζεται η εκτύπωση. Επίσης τα δεδομένα της π-Αναφοράς θα είναι τα δεδομένα του body εάν δεν είναι ορισμένο το πεδίο "Βοδυ SQL εντολή"
Δεδομένα ΕκτύπωσηςΔεδομένα εκτύπωσης: Σε αυτό το grid ορίζεται τα δεδομένα της εκτύπωσης.
Στοιχεία ΣελίδαςOrientation: Ορίζεται εάν η εκτύπωση θα βγαίνει οριζόντια ή κάθετα.
Rotate (degrees): Περιστρεφει το PDF
Page Size: Ορίζεται το μέγεθος της εκτύπωσης. Στην περίπτωση που θέλετε να ορίσετε εσείς το πλάτος και το ύψος της εκτύπωσης θα επιλέξετε την επιλογή "-".
Page Height (mm): Ορίζεται το υψος της εκτύπωσης.
Page Width (mm): Ορίζεται το πλάτος της εκτύπωσης.
Page Rows: Ορίζετε το πλήθος των γραμμών της εκτύπωσης. Θα μπορείτε να εκτυπώνετε τα δεδομένα της εκτύπωσης από την γραμμή 0 μέχρι την γραμμή (Page Rows - Margin Top (rows) - Margin Bottom (rows) -1 )
Page Columns: Ορίζετε το πλήθος των στηλών της εκτύπωσης. Θα μπορείτε να εκτυπώνετε τα δεδομένα της εκτύπωσης από την στήλη 0 μέχρι την γραμμή (Page Columns - Margin Left (cols) - Margin Right (cols)-1)
Body Height (rows): Το ύψος του body. Η παράμετρος αυτή ισχύει μόνο όταν είναι απενεργοποιημένο το πεδίο "Εκτύπωση του header και του footer μιας φοράς".
Κάθε φορά που το $i (μεταβλητή η οποία αυξάνετε σε κάθε γραμμή που εκτυπώνετε στο body) γίνει ίση με το Body Height προστίθεται νέα σελίδα στην εκτύπωση.
Το body height δεν πρέπει να είναι μεγαλύτερο από (Page Rows - Margin Top (rows) - Margin Bottom (rows) -1 - #header rows -# footer rows)
Εκτύπωση του header και του footer μια φορά: Εάν ενεργοποιήσετε το checkbox τότε το header και το footer θα εκτυπωθούν μια φορά και το body height δεν θα αγνοηθεί.
Top (rows): Το περιθώριο από το πάνω μέρος της σελίδας.
Bottom (rows): Το περιθώριο από το κάτω μέρος της σελίδας.
Left (cols): Το περιθώριο από το αριστερό μέρος της σελίδας.
Right (cols): Το περιθώριο από το δεξί μέρος της σελίδας.
Δεν εμφανίζεται η Επιλογή Θέσης Εκτύπωσης: Εάν ενεργοποιήσετε το checkbox τότε ΔΕ θα εμφανιστεί η οθόνη επιλογής Θέσης Εκτύπωσης
Πλήθος Οριζόντιων Θέσεων: Αποτελει το πληθος των Οριζόντιων Θεσεων που χωρίζεται μία εκτύπωση. Αφορά κυρίως την εκτύπωση Ετικετών κι ισοδυναμει με το πλήθος των Ετικετών που μπορούν να εκτυπωθούν σε οριζόντια διάταξη.
Πλήθος Κατακόρυφων Θέσεων: Αποτελει το πληθος των Κατακόρυφων Θεσεων που χωρίζεται μία εκτύπωση. Αφορά κυρίως την εκτύπωση Ετικετών κι ισοδυναμει με το πλήθος των Ετικετών που μπορούν να εκτυπωθούν σε κατακόρυφη διάταξη.
πχ: Πλήθος Οριζόντιων/Κατακόρυφων 3x8, 3 Ετικετες ανά πλατος σελίδας εκτύπωσης και 8 Ετικετες ανά ύψος (24 Ετικέτες συνολικά ανά σελίδα εκτύπωσης).
Style Γραμμάτων/ΓραμμώνΚύριο Style: Η γραμματοσειρά που θα έχουν τα δεδομένα της εκτύπωσης εάν δεν τους έχουμε ορίσει κάποια ξεχωριστή γραμματοσειρά.
Grid Style: Εδώ ορίζετε τις γραμματοσειρές τις οποίες θέλετε να χρησιμοποιήσετε στην εκτύπωση.
Κώδικας πρίν την εκτέλεση της ΕκτύπωσηςΚώδικας πρίν την εκτέλεση της Εκτύπωσης: Ο κώδικάς που εκτελείτε πριν την εκτέλεση της εκτύπωσης.
Μπορείτε να ορίσετε τις μεταβλητές
Body SQL-
$print_to_pdf_version = 'function';για να εκτελεστεί η Εκτύπωση με βάση τη Συνάρτηση (κι όχι τη Μέθοδο) -
$p85_input: array που περιλαμβάνει τα inputs της Μεθόδου ή Συνάρτησης (πχ: $p85_input['dias_main_nr01']) -
$p85_output: array που περιλαμβάνει τα outputs από τον "Κώδικα πρίν την εκτέλεση της Εκτύπωσης" ή από τα "Δεδομένα Εκτύπωσης" (πχ: $p85_output['a55'] = $a55; ή $p85_output['display_v101'] = $display_v101;) -
$printColRows = true;για να δείτε πως εκτυπώνονται οι στήλες και οι γραμμές. -
$backgroundImageFile = "../../images/webappForm/bgimg.png";για να ορίσετε μια εικόνα ως φόντο στην εκτύπωση. -
$cor000_tit_line = invoices_get_store_titles({kodikoskatatimatos});(deprecated). Εάν υπάρχει το module "Ορισμοί Παραστατικών-Παραγγελιών" η κλήση της συνάρτησης θα μας γεμίσει την μεταβλητή "$cor000_tit_line" με ένα array 8 θέσεων με τους τίτλους του καταστήματος που έχουμε ορίσει στον κωδικό. Εάν δεν υπάρχουν θα μας φέρει τους default τίτλους
Body SQL: Η Body SQL εντολή η οποία μας φέρνει τα δεδομένα του body.
πχ:
Εικόνες Εκτύπωσηςreturn "select * from ..";
ή σε μορφη array() πχ:
return array('sql'=>'select * from ...', 'sqlParams'=>array('p01'=>0));
- Στην περίπτωση που έχετε ορίσει "Κλάση Εκτύπωσης Πίνακα" κι αφήσετε αυτό το πεδίο κενό τότε η "Body SQL" εντολή προκύπτει από την αντιστοιχη κλαση.
- Στην περίπτωση που έχετε ορίσει σύνδεση με "π-Αναφορά" κι αφήσετε αυτό το πεδίο κενό τότε τα Δεδομένα Εκτύπωσης προκύπτουν από τα Δεδομένα της π-Αναφοράς.
: Εδώ καταχωρείτε τις Εικόνες τις οποίες θέλετε να χρησιμοποιήσετε στην Εκτύπωση.