05-10-19, 05:52 AM
(آخر تعديل لهذه المشاركة : 05-10-19, 08:39 AM {2} بواسطة asemshahen5.)
(05-10-19, 05:31 AM)asemshahen5 كتب : اصنع تقرير جديد ضع به ما تريد في قسم الديتال و اسند له الداتا سورس نفس الداتا سورس الخاصة بلداتا غريد فيو ليكون كالتالي :
و عند المعاينة يكون كالتالي :
او اعمل لوب على حقول الجدول و اطبع مباشرة او معاينة كود :
PHP كود :
Private Sub Button10_Click(sender As Object, e As EventArgs) Handles Button10.Click
If MsgBox("هل تريد معاينة الطباعة", MsgBoxStyle.YesNo, "") = MsgBoxResult.Yes Then
For i = 0 To DataGridView1.Rows.Count - 2
Dim Frm As New RptForm
Dim rpt As New RptCard
Dim dt As New DataTable
dt.Clear()
dt = LoadDataTable("select * From TestTable where ID=" & DataGridView1.Rows(i).Cells(0).Value)
rpt.SetDataSource(dt)
Frm.CrystalReportViewer1.ReportSource = rpt
Frm.CrystalReportViewer1.Refresh()
Frm.Show()
Next
Else
For i = 0 To DataGridView1.Rows.Count - 2
Dim rpt As New RptCard
rpt.SetDataSource(LoadDataTable("select * From TestTable where id=" & DataGridView1.Rows(i).Cells(0).Value))
Dim prnt As New System.Drawing.Printing.PrinterSettings
'prnt.PrinterName = "إسم الطابعة"'
rpt.PrintToPrinter(prnt, New System.Drawing.Printing.PageSettings(prnt), False)
Next
End If
End Sub
Public Function LoadDataTable(SqlStr As String) As DataTable
Dim DT As New DataTable
Dim da As New SqlClient.SqlDataAdapter(SqlStr, Con)
da.Fill(DT)
Return DT
End Function
مشكور اخي الفاضل asemshahen5 على مجهودك ووقتك
لكن حين لصقت الكود فى المشروع الخاص بي وعدلت الجزء لاول ظهر خطاء فى الجز الثاني
هل لاني استخدم قاعدة بيانات اكسس
الجزء الذي به الخطاء
كود :
Dim DT As New DataTable
Dim da As New SqlClient.SqlDataAdapter(SqlStr, Con)
da.Fill(DT)
Return DT
End Function