vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Crystal Reports über ADO.NET und Schema.XSD, Fehler in crdb_adoplus.dll 
Autor: Schin
Datum: 12.10.04 16:19

Hallo zusammen,

ich möchte gerne einen Report mit unabhängigen Daten bestücken und in dem Viewer anzeigen.
Ich habe ein Druckmodul dass von verschiedenen Programmen aufgerufen werden kann und Daten (in einer Collection) einem Report (später aus der DB lesbar) übergeben werden können.

Folgende Vorgehensweise:

Im Druckmodul deklarier ich 2 Collections (Detaildaten als Array, weil mehrere Sätze) und 1 Dataset mit 2 Tabellen.
    Public colDetaildaten() As Collections.Specialized.StringCollection
    Public colKopfdaten As Collections.Specialized.StringCollection
    Private dsDruckdaten As DataSet
    Private dtKopftabelle As DataTable
    Private dtDetailTabelle As DataTable
            dsDruckdaten = New DataSet("Druckdaten")
            dtKopftabelle = dsDruckdaten.Tables.Add("Kopfdaten")
            dtDetailTabelle = dsDruckdaten.Tables.Add("Detaildaten")
Dann gehe ich die Collections durch und erstelle dynamisch die einzelnen Spalten der Tabellen. zB
dtKopftabelle.Columns.Add(colKopfdaten.Item(intC), Type.GetType( _
  "System.String"))
Das ganze natürlich in einer Schleife und ebenfalls mit den Detaildaten.
Dann erstelle ich mit dem erstelllten DatasetSchema eine XSD Datei, um dann mit meinem Reportdesigner auf diese Datei (temporär) zuzugreifen. Ich habe somit im Designer meine (in der Collection übergebenen) Feldnamen zur Verfügung.
dsDruckdaten.WriteXmlSchema("C:\Temp\Schemadatei.xsd"))
Danach fülle ich mein Dataset mit Daten, ich gehe also wiederum die beiden Collections durch und fülle die Tabellen.
Code spare ich mir mal hier, da soweit eigentlich alles funktioniert:

Collection sind einwandfrei übergeben worden, Dataset ist einwandfrei gefüllt, Schemdatei ist erstellt!

In meiner Form hab ich den Viewer und Report (fix, später zur Laufzeit)
Public rptReport As New myReport()
Friend WithEvents crvViewer As _
  CrystalDecisions.Windows.Forms.CrystalReportViewer
Diese beiden bestücke ich wie folgt:
                rptReport.SetDataSource(dsDruckdaten)
               crvViewer.ReportSource = .rptReport
soweit immer noch alles OK, der Report hat seine Datasource, der Viewer hat seinen Report.

....Wenn ich aber jetzt die Form anzeigen will (ShowDialog) dann kracht es gewaltig:

Eine nicht behandelte Ausnahme des Typs 'System.ExecutionEngineException' ist in crdb_adoplus.dll aufgetreten.

Programm stürzt ab. Entwicklungsumgebung muss teilweise mit Task Manager beendet werden!!

Ist meine Vorgehensweise wirklich so ungewöhnlich? Im Internet hab ich zu diesem Fehler nichts gefunden. Kann man mein Problem (ich wil Daten , datenbankunabhängig, zur Laufzeit übergeben). Kann man das vielleicht auch anders lösen?

Vielen Dankk für Eure Unterstützung
Bester Gruß
Schin
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Crystal Reports über ADO.NET und Schema.XSD, Fehler in crdb_...940Schin12.10.04 16:19

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel