Χρησιμοποιώ τα Crystal Reports γιά εμφανίσεις και export δεδομένων σε excel pdf κλπ. Με τα crystal η εμφάνιση των δεδομένων μπορεί να γίνει είτε με master detail μορφή (με grouping), είτε με την χρήση Subreport (report μέσα σε report). Αν θέλεις να τα δοκιμάσεις θα πρέπει να τα εγκαταστήσεις από εδώ.
- Φτιάξε ένα form application με target .NET framework 4 και όχι με Client profile.
- Βάλε το CrystalReportViewer control από το reporting section του toolbox στην φόρμα. Αυτό θα σου βάλει και τα απαραίτητα assemblies στο Project σου.
- Κάνε add new item και βάλε ένα Crystal report Document στο project.
- Πήγαινε στα properties του ReportDocument1 και κάνε copy to output directory: Always.
(Με αυτόν τον τρόπο το editing του report μπορεί να γίνει και από κάποιον που έχει κάποιον crystal editor ή το VS).
Από εδώ και περα μπορείς είτε να κάνεις connect κατ ευθείαν με την βάση μέσα από το report, είτε να του δώσεις κάποιο class ή dataset σαν Datasource.
Και στις δύο περιπτώσεις δεν χρειάζεται να έχεις ήδη δημιουργήσει κάποιο data relation μεταξύ των πινάκων γιατί γίνεται και μέσα από τον designer του Crystal Report.
Το πως και αν θα εμφανίζεται κάποιο object (Section, field, label κλπ) στα crystal μπορεί να γίνει με πολλούς τρόπους, ε'ιτε με την εμφάνιση επιλογών από παραμέτρους είτε με την χρήση Formulas.
Σπάνια θα αντιμετωπίσεις κάποια περίπτωση που δεν καλύπτεται εύκολα με τα crystal και σου συνιστώ να τα χρησιμοποιήσεις ανεπιφύλακτα.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.Shared
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim report As New ReportDocument()
report.Load(Application.StartupPath & "\" & "CrystalReport1.rpt")
'' report.SetDataSource() ...
report.ExportToDisk(ExportFormatType.Xml, Application.StartupPath & "\" & "Export.xml")
Me.CrystalReportViewer1.ReportSource = report
End Sub
End Class |