PDA

View Full Version : سوال: ارسال اطلاعات دیتا گرید به کریستال ریپورت



hosseinbarnamenevis
پنج شنبه 15 فروردین 1392, 01:12 صبح
خیلی گشتم اما روش خوب و کاملی ندیدم
کسی میتونه کمک کنه؟

damanpak
پنج شنبه 15 فروردین 1392, 01:44 صبح
سلام
یک نمونه برنامه ساده به همراه بانک بزار تا گزارش گیریت رو کمک کنیم
بانکت اس کیو ال 2000 یا 2008 و یا اکسس باشه بهتره

123s0ran
پنج شنبه 15 فروردین 1392, 16:58 عصر
سلام دوست عزیز شما با این کدی که گذاشتم راحت می تونید گزارش گیری انجام بدید و حتی روی گزارشتون فیلتر سازی انجام بدید...


Dim sqlcmd As String

Select Case ComboBox1.SelectedIndex
Case Is = 0
sqlcmd = "Select * from blit where name like N'%" & TextBox1.Text & "%'"
Case Is = 1
sqlcmd = "Select * from blit where fname like N'%" & TextBox1.Text & "%'"
Case Is = 2
sqlcmd = "Select * from blit where maqsad like N'%" & TextBox1.Text & "%'"
Case Is = 3
sqlcmd = "Select * from blit where data like N'%" & TextBox1.Text & "%'"
End Select

ad = New SqlDataAdapter(sqlcmd, cnnString)
dt = New DataTable
ad.Fill(dt)

Dim Report As Form1 = New Form1

Dim mReport As CrystalReport1 = New CrystalReport1

mReport.SetDataSource(dt)

Report.CrystalReportViewer1.ReportSource = mReport

Report.ShowDialog()

alinux031
جمعه 24 آبان 1392, 10:39 صبح
سلام دوست عزیز شما با این کدی که گذاشتم راحت می تونید گزارش گیری انجام بدید و حتی روی گزارشتون فیلتر سازی انجام بدید...


Dim sqlcmd As String

Select Case ComboBox1.SelectedIndex
Case Is = 0
sqlcmd = "Select * from blit where name like N'%" & TextBox1.Text & "%'"
Case Is = 1
sqlcmd = "Select * from blit where fname like N'%" & TextBox1.Text & "%'"
Case Is = 2
sqlcmd = "Select * from blit where maqsad like N'%" & TextBox1.Text & "%'"
Case Is = 3
sqlcmd = "Select * from blit where data like N'%" & TextBox1.Text & "%'"
End Select

ad = New SqlDataAdapter(sqlcmd, cnnString)
dt = New DataTable
ad.Fill(dt)

Dim Report As Form1 = New Form1

Dim mReport As CrystalReport1 = New CrystalReport1

mReport.SetDataSource(dt)

Report.CrystalReportViewer1.ReportSource = mReport

Report.ShowDialog()

من یک سوال داشتم دیتابیسی که برای crystalreport1 اکسپرت می کنیم باید چی باشه؟

behrooz69
چهارشنبه 29 آبان 1392, 03:36 صبح
بیا داداشم با این کد مشکلت حل می شه . من یه گرید دارم که توش با یه تکس باکس بر اساس نام مشتری جستجو می کنم و اطلاعاتی که جستجو کرده رو تو کریستال نشون می دم .
کد ارسال به کریستال :
If TxtSearchByNameMoshtari.Text = String.Empty Then
MsgBox("لطفا نام مشتری را مشخص كنيد", vbExclamation + vbOKOnly, "پيام")
TxtSearchByNameMoshtari.Focus()
Exit Sub
End If

'// chap gozaresh bar asas name moshtari dar vorod kala = filter by name moshtari \\
Dim rpt As New CReportInsert
Dim myconnection As SqlConnection
Dim mycommand As New SqlCommand
Dim myda As New SqlDataAdapter
Dim myds As New SardkhoneDataSet
Try
myconnection = New SqlConnection(My.Settings.conn)
mycommand.Connection = myconnection
mycommand.CommandText = "SELECT * from TblVorodKala WHERE(NameMoshtari=@NameMoshtari)"
mycommand.Parameters.Add("@NameMoshtari", SqlDbType.NVarChar, 50).Value = TxtSearchByNameMoshtari.Text

mycommand.CommandType = CommandType.Text
myda.SelectCommand = mycommand
myda.Fill(myds, "TblVorodKala")
rpt.SetDataSource(myds)
rpt.SetParameterValue("behrooz", LblTarikhJari.Text)
FrmGozareshgiriVorodKala.CrystalReportViewer1.Repo rtSource = rpt
FrmGozareshgiriVorodKala.ShowDialog()

Catch ex As Exception
MessageBox.Show(ex.Message, "error", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try

کد جستجو و نمایش تو دیتاگرید ویو با فیلتر:
TblVorodKalaBindingSource.Filter = "NameMoshtari Like '*" & TxtSearchByNameMoshtari.Text & "*'"
اینجا اومدم فیلتر کردم گفتم که اسم های مشتری که شبیه تکس باکس نام مشتریمه رو نشون بده .

اگه توضیحی خواستی بگو توضیح بدم .