Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Работа с данными

Страница:

 

  Вопрос: Отчет в CrystalReport!!!! Добавлено: 01.11.05 09:14  

Автор вопроса:  Денис | ICQ: 109593029 
Есть код формирования отчета:
Public connect As New SqlConnection
strSQL = "Select * from Nametable"
Dim MyDataAdapter As _
New SqlDataAdapter(strSQL, connect)
Dim MyDataSet As New DataSet("temp")
Dim MyTable As DataTable
connect.Open()
Try
MyDataAdapter.Fill(MyDataSet, "temp")
Catch ex As Exception
MsgBox(ex.Message)
connect.Close()
End Try
connect.Close()

MyTable = MyDataSet.Tables("temp")
Dim SetTable As New SetData.NameTable
dim i as int32

for i=0 to MyTable.Rows.Count-1
dim row as datarow = MyTable.Rows(i)
Dim NewRowSet As DataRow = SetTable.NewRow

NewRowSet(Pole1) = row(Pole11)
………
NewRowSet(PoleN) = row(PoleNN)

SetTable.Rows.Add(NewRowSet)
Next

Dim doc As New ReportDocument
doc.Load(Application.StartupPath + "\" + ReporName)
doc.SetDataSource(SetTable )
CrystalReportViewer.ReportSource = doc
Me.CrystalReportViewer.Refresh()


Все отлично работает формируется отчет. Но есть необходимость когда в ДатаСете заполняешь две таблицы:

Public connect As New SqlConnection
strSQL = “Select * from Nametable”
Dim MyDataAdapter As _
New SqlDataAdapter(strSQL, connect)
Dim MyDataSet As New DataSet("temp")
Dim MyTable As DataTable
connect.Open()
Try
MyDataAdapter.Fill(MyDataSet, "temp")
Catch ex As Exception
MsgBox(ex.Message)
connect.Close()
End Try
connect.Close()
MyTable = MyDataSet.Tables("temp")

Dim SetTable As New SetData.NameTable
Dim SetTable2 As New SetData.NameTable2

dim i as int32

for i=0 to MyTable.Rows.Count-1
dim row as datarow = MyTable.Rows(i)
Dim NewRowSet As DataRow = SetTable.NewRow
NewRowSet(Pole1) = row(Pole11)
………
NewRowSet(Pole5) = row(Pole55)
SetTable.Rows.Add(NewRowSet)
Next

for i=0 to MyTable.Rows.Count-1
dim row as datarow = MyTable.Rows(i)
Dim NewRowSet As DataRow = SetTable2.NewRow
NewRowSet(Pole6) = row(Pole66)
………
NewRowSet(Pole10) = row(Pole88)
SetTable2.Rows.Add(NewRowSet)
Next

Dim doc As New ReportDocument
doc.Load(Application.StartupPath + "\" + ReporName)
doc.SetDataSource(SetTable )
CrystalReportViewer.ReportSource = doc
Me.CrystalReportViewer.Refresh()

Соответсвенно макет отчета меняю. Отчет формируется на основе данных из двух таблиц. NameTable и NameTable2 имеют всязь один ко многим,

При просмотре отчета вылетает окно "DateBase Logon" где необходимо ввести Сервер, Базу, имя и пароль для подключения к таблицам NameTable и NameTable2. Подскажите как формировать отчет используя несколько таблиц в ДатаСете....

Ответить

  Ответы Всего ответов: 0  

Нет ответов

Страница:

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам