Εναλλακτικοί τρόποι εκτύπωσης Εκτύπωση

  • Οδηγίες, Σχεδιασμός, Εκτύπωση ετικτών, Διαχείριση Εργαλείων, Διαχείριση Εκτυπώσεων
  • 0

Υπάρχουν και εναλλακτικοί τρόποι να εκτυπωθούν ετικέτες με κατάλληλη παραμετροποίηση.

Χρήση των σχεδιαζόμενων αναφορών.

Μπορείτε να χρησιμοποιήσετε τις σχεδιαζόμενες αναφορές προκειμένου να παρέχετε εξειδικευμένο Data Set στην σχεδίαση καθώς και τα απαραίτητα φίλτρα εκτέλεσης. Το εργαλείο σχεδίασης παραμένει το ίδιο (Graphic), μένει μόνο μέσω του Query να παρέχετε τα δεδομένα στην μορφή που χρειάζεστε. Το πρόβλημα συνήθως σε αυτή την περίπτωση είναι το πλήθος των ετικετών που πρέπει να τυπωθούν και συνήθως αναφέρονται σε μία γραμμή με κάποιο αριθμητικό πεδίο πχ Ποσότητα. Σημείωση: Για την σχεδίαση των αναφορών αυτών απαιτείται να έχει ενεργοποιηθεί το αντίστοιχο Module (Οριζόμενες Εκτυπώσεις Token 45).

Παράδειγμα 1

Χρησιμοποιήστε το όταν εκτός από τα στοιχεία της ετικέτας θέλετε να τυπώσετε και AA Ετικέτας  καθώς και πλήθος . Πχ Ετικέτα 1 από 10.

Αρχικά θα πρέπει να δημιουργηθεί μια Table Valued Function με βάση το υπόδειγμα.

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE FUNCTION [dbo].[us_MultipleLines]( @TotalLines int )
RETURNS @AutonumTable TABLE ( number int )
AS
BEGIN
DECLARE @autonum int = 0;
WHILE @autonum < @TotalLines
BEGIN
SET @autonum = @autonum+1;
INSERT INTO @AutonumTable ( number ) VALUES (@autonum);
END
RETURN
END;
GO

Στην συνέχεια δημιουργήστε νέα σχεδιαζόμενη αναφορά αντιγράφοντας το παρακάτω Query


SELECT
ITEMS.HECODE AS ITEMCODE,
ITEMS.HENAME AS ITEMNAME,
COALESCE(HERETAILPRICE,0) AS RETAILPRICE,
T2.NUMBER AS LABELNO,
COALESCE(CAST(@$Parameter01$ as int),CAST( FINDATA.BALANCE AS INT )) AS TOTALLABELS
FROM HEITEMS ITEMS
INNER JOIN (
SELECT
HEITEMID,

SUM(HEABALANCE) AS BALANCE
FROM HEITEMFINDATA ITFD
GROUP BY HEITEMID
) FINDATA ON FINDATA.HEITEMID = ITEMS.HEID
CROSS APPLY (
SELECT NUMBER FROM dbo.us_MultipleLines(COALESCE(CAST(@$Parameter01$ as int),CAST(
FINDATA.BALANCE AS INT )))
) T2
WHERE
ITEMS.HECOMPID=@$System$CurCompany and
ITEMS.HETYPE = 0 @$UserPart1$

Στα φίλτρα δημιουργήστε δύο (2) εγγραφές όπως στο υπόδειγμα:

Δώστε Alias στον πίνακα LabelData

Ξεκινήστε την σχεδίαση της ετικέτας

Σε περίπτωση που δημιουργήσετε νέα σχεδίαση μέσω του Wizard τότε θα πρέπει να ενεργοποιήσετε εκ νέου και τα Data Sources από την επιλογή «Choose Report Data» (Tab Report)

Παράδειγμα 2

Έχοντας δημιουργήσει ήδη την Table Valued Function που περιγράφεται στο Παράδειγμα 1 δημιουργήστε νέα σχεδιαζόμενη αναφορά αντιγράφοντας το παρακάτω Query.

SELECT
* FROM
(
SELECT
HECOMPANIES.heid,

HECOMPANIES.hecode,
HECOMPANIES.hename,
CAST(COALESCE(@$Parameter01$,1) as int) AS TOTALLABELS,
@$Parameter02$ as Text1,
@$Parameter03$ as Text2,
@$Parameter04$ as Text3,
@$Parameter05$ as Text4,
@$Parameter06$ as Text5,
@$Parameter07$ as Text6,
@$Parameter08$ as Text7,
@$Parameter09$ as Text8,
@$Parameter10$ as Text9
FROM HECOMPANIES
) cmp
CROSS APPLY (
SELECT NUMBER as LabelNo FROM [dbo].[us_MultipleLines] (LabelCount)
) t2
WHERE a.heid = @$System$CurCompany


Προσαρμόστε επίσης και τα φίλτρα.

Δώστε Alias στον πίνακα LabelData

Ξεκινήστε την σχεδίαση της ετικέτας

Παράδειγμα 3

Ίδιο με το Παράδειγμα 2 αλλά χωρίς την χρήση της Table Valued Function.

SELECT
HECOMPANIES.heid,
HECOMPANIES.hecode,
HECOMPANIES.hename,
CAST(COALESCE(@$Parameter01$,1) as int) AS TOTALLABELS,
@$Parameter02$ as Text1,
@$Parameter03$ as Text2,
@$Parameter04$ as Text3,
@$Parameter05$ as Text4,

@$Parameter06$ as Text5,
@$Parameter07$ as Text6,
@$Parameter08$ as Text7,
@$Parameter09$ as Text8,
@$Parameter10$ as Text9
FROM HECOMPANIES
WHERE HECOMPANIES.heid = @$System$CurCompany

Σε αυτό το παράδειγμα θα χρησιμοποιήσετε κώδικα c# προκειμένου να επηρεάσετε το πλήθος των επαναλήψεων.

Μεταβείτε στην σχεδίαση της ετικέτας. Επιλέξτε το Band. Από τα properties επιλέξτε το εικονίδιο για προβολή των events (κεραυνό) . Με διπλό Mouse Click στο «AfterData» μεταφέρεστε στο τμήμα «Code» όπου θα πρέπει να συμπληρώσετε τον κώδικα.

private void Data1_AfterData(object sender, EventArgs e)
{
Data1.RepeatBandNTimes = (int )Report.GetColumnValue("LabelData.TOTALLABELS");
}

Χρήση Script

Αφού σχεδιαστεί η ετικέτα με βάση κάποιο από τα παραπάνω παραδείγματα μπορείτε να δημιουργήσετε Script που θα καλεί την συγκεκριμένη αναφορά περνώντας ταυτόχρονα και παραμέτρους. Παράδειγμα κλήσης της αναφοράς θα βρείτε στο Portal των συνεργατών

Χρήση Φόρμας εκτύπωσης.

Μπορείτε να σχεδιάσετε φόρμα εκτύπωσης οντότητας και να χρησιμοποιήσετε κώδικα c#, εργαζόμενοι μέσα στην σχεδίαση όπως το Παράδειγμα 3.

Θα πρέπει βέβαια να αντικαταστήσετε το «LabelData.TOTALLABELS» με <DataSource>.<Ονομα Πεδίου Ποσότητας>

private void Data1_AfterData(object sender, EventArgs e)
{
Data1.RepeatBandNTimes = (int )Report.GetColumnValue("Line.LINEHEAQTY ");
}

Εκτύπωση Ολογράφως

Αποκλειστικά για γραφικές φόρμες. Μπορείτε χρησιμοποιώντας κώδικα c# να εμφανίσετε αξίες ή ποσότητες ολογράφως. Παράδειγμα κώδικα θα βρείτε στο κείμενο που έχει αναρτηθεί στο Portal των συνεργατών Περιβάλλον εργασίας Fast Report

 


Ήταν χρήσιμη αυτήν την απάντηση;

« Πίσω

Χρειάζεστε Βοήθεια; Ζητήστε Υποστήριξη

+30 212 214 8888
support[at]pylonsupport.gr Δευτέρα έως Παρασκευή : 9:00 πμ – 5:00 μμ