且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

如何在vb.net中的Windows窗体应用程序中加载repx文件

更新时间:2023-12-06 10:07:04

 [VB.NET]在弹出窗口中打开 
私有 Sub CreateReport( ByVal ReportPath As String


' 加载报告
Dim 报告作为 DevExpress.XtraReports.UI.XtraReport()
report.LoadLayout(ReportPath)


' 读取.repx文件所需的表(名称)
Dim reportDataSet As DataSet = TryCast (report.DataSource,DataSet)
Dim newDataSet 作为 DataSet(reportDataSet.DataSetName)


' 从当前连接加载DataTables
对于 每个 dt As DataTable reportDataSet.Tables()
Dim newDataTable As DataTable = LoadDataTable(dt.TableName())
newDataSet.Tables.Add(newDataTable)
Next


' 设置新数据源
report.DataSource = newDataSet


' 显示报告
PrintControl1.PrintingSystem = report.PrintingSystem
report.PrintingSystem.SetCommandVisibility(DevExpress.XtraPrinting.PrintingSystemCommand.Parameters,DevExpress.XtraPrinting.CommandVisibility.None)
report.CreateDocument( True

End


私有 功能 LoadDataTable( ByVal tableName As String ) As DataTable

Dim cmd As 新an> OleDb.OleDbCommand( SELECT * FROM& tableName,conn)
Dim dt As New DataTable(tableName)

conn.Open()
dt.Load(cmd.ExecuteReader)
conn.Close()
返回 dt

结束 功能


Please tell me how to load repx file in windows form application in vb.net code language... Please it's very urgent please anyone tell me..

[VB.NET]Open in popup window
    Private Sub CreateReport(ByVal ReportPath As String)

        ' Load Report
        Dim report As New DevExpress.XtraReports.UI.XtraReport()
        report.LoadLayout(ReportPath)


        ' Read Tables(names), that are needed for the .repx-File
        Dim reportDataSet As DataSet = TryCast(report.DataSource, DataSet)
        Dim newDataSet As New DataSet(reportDataSet.DataSetName)


        ' Load DataTables from current Connection
        For Each dt As DataTable In reportDataSet.Tables()
            Dim newDataTable As DataTable = LoadDataTable(dt.TableName())
            newDataSet.Tables.Add(newDataTable)
        Next


        ' Set New DataSource
        report.DataSource = newDataSet


        ' Show Report
        PrintControl1.PrintingSystem = report.PrintingSystem
        report.PrintingSystem.SetCommandVisibility(DevExpress.XtraPrinting.PrintingSystemCommand.Parameters, DevExpress.XtraPrinting.CommandVisibility.None)
        report.CreateDocument(True)

    End Sub


    Private Function LoadDataTable(ByVal tableName As String) As DataTable

        Dim cmd As New OleDb.OleDbCommand("SELECT * FROM " & tableName, conn)
        Dim dt As New DataTable(tableName)

        conn.Open()
        dt.Load(cmd.ExecuteReader)
        conn.Close()
        Return dt

    End Function