Работа с Crystal Report NET

3942494f

Подключение отчета через объектную модель пространства CrystalDecisions.Web


В качестве отклика на нажатие мыши кнопки btnFile введем следующую функцию:

Private Sub btnFile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles

btnFile.Click

Dim log As New TableLogOnInfo    Dim ci As New ConnectionInfo

    ci.ServerName = ConfigurationSettings.AppSettings("server")     ci.DatabaseName = ConfigurationSettings.AppSettings("database")     ci.UserID = ConfigurationSettings.AppSettings("user")     ci.Password = ConfigurationSettings.AppSettings("password")     log.ConnectionInfo = ci

    Dim tbs As Tables     Dim tb As

Engine.Table    Dim rDoc As New ReportDocument     rDoc.Load(Server.MapPath("reports\connectDatabase.rpt"))     crDataBase.ReportSource = rDoc

    tbs = rDoc.Database.Tables     tb = tbs(0)     log = tb.LogOnInfo     log.ConnectionInfo = ci

    tb.ApplyLogOnInfo(log)     crDataBase.DataBind()     crDataBase.Visible = True

End Sub

Данная функция по имени файла загружает отчет в объект crDataBase. Отличие от предыдущего пример состоит в том, что у объекта crDataBase отключена возможность отображения результатов выборки по страницам.

Для этого в панели инструментов Propertires объекта crDataBase установим поля DisplayGroupTree, DisplayToolBar,EnableDrillDown,SeparatePages   в false.

  Значения полей следующие

Подключение отчета через объектную модель пространства CrystalDecisions.Web

DisplayGroupTree

Включает\выключает отображение дерева детализации выборки

DisplayToolBar

Включает\выключает отображение панели инструментов отчета

EnableDrillDown

Включает\выключает возможность детализации отчета

SeparatePages

Включает\выключает разбиение на страницы отчета

В качестве отклика на нажатие мыши кнопки btnEngine введем следующую функцию:

Private Sub

btnEngine_Click(ByVal sender As

System.Object, ByVal e As

System.EventArgs) Handles btnEngine.Click

Dim log As New TableLogOnInfo Dim ci As New

ConnectionInfo

ci.ServerName = ConfigurationSettings.AppSettings("server") ci.DatabaseName = ConfigurationSettings.AppSettings("database") ci.UserID = ConfigurationSettings.AppSettings("user") ci.Password = ConfigurationSettings.AppSettings("password") log.ConnectionInfo = ci

Dim tbs As

Tables Dim tb As Engine.Table Dim rDoc As New connectDatabase

tbs = rDoc.Database.Tables tb = tbs(0) log = tb.LogOnInfo log.ConnectionInfo = ci tb.ApplyLogOnInfo(log)

crDataBase.ReportSource = rDoc crDataBase.DataBind() crDataBase.Visible = True

End Sub

Единственное отличие в данном примере вышеуказанного метода подключения состоит в методе инициализации объекта отчета

Dim rDoc As New connectDatabase

tbs = rDoc.Database.Tables

В данном случае документ отчета инициализируется объектом класса connectionDatabase, имя которого совпадает с именем файла отчета.



Содержание раздела