27-03-14, 12:42 PM
السلام عليكم
انظر الى البرنامج المرفق وعدل علية حسب المطلوب
يمكنك تعديل من 0 الى -1 اذا كانت الداتا جرد مغلقة(اي لا يسمح بتعديل عليها كالاضافة والتعديل)
لانشاء جدول مشابه للموجود في الداتا سيت(في هذا المثال هناك فقط 2كولوم)
وجلب البيانات من الداتا جرد
لارسال الجدول السابق الى الكرستال ريبورت
وفتح فورم الطباعة الذي يحتوي على كريستال فيور
اما بخصوص طباعة كل سجل بصفحة
موجودة في الكرستال ريبورت وتتم بترك 24 سم اذا كانت A4
لاحظ الكرستال ريبورت
انظر الى البرنامج المرفق وعدل علية حسب المطلوب
كود :
If DataTable1DataGridView.RowCount = 0 Then
MessageBox.Show("لا يوجد بيانات للطباعة")
Return
End Ifكود :
dt = New DataTable
dt.TableName = "grid"
dt.Columns.Clear()
Dim first_name As DataColumn = New DataColumn("name")
first_name.DataType = System.Type.GetType("System.String")
dt.Columns.Add(first_name)
Dim second_name As DataColumn = New DataColumn("phone")
second_name.DataType = System.Type.GetType("System.String")
dt.Columns.Add(second_name)
Dim dr As DataRow
Dim i As Integer
For i = 0 To Me.DataTable1DataGridView.RowCount - 2
dr = dt.Rows.Add
'ملاحظة يجب ان يكون اسم الكولوم مشابة للموجود في الداتا سيت
dr.Item("name") = Me.DataTable1DataGridView.Item(0, i).Value.ToString
dr.Item("phone") = Me.DataTable1DataGridView.Item(1, i).Value.ToString
Next iوجلب البيانات من الداتا جرد
كود :
Dim e1 As New CrystalReport1
e1.SetDataSource(dt)
print.CrystalReportViewer1.ReportSource = e1
print.CrystalReportViewer1.RefreshReport()
print.ShowDialog()وفتح فورم الطباعة الذي يحتوي على كريستال فيور
اما بخصوص طباعة كل سجل بصفحة
موجودة في الكرستال ريبورت وتتم بترك 24 سم اذا كانت A4
لاحظ الكرستال ريبورت

