بسم الله الرحمن الرحيم
السلام وعليكم ورحمة الله تعالى وبركاته اليكم هذه المشاركة المتواضعة لانشاء تقرير شبه تلقائى بواسطة data report designer واتمنا المشاركة فى تطويرها ان امكن ذلك
الآن سابدا فى شرح تفاصيل البرنامج:-
الهدف منه عرض حقول لجدول معين على هيئة تقرير
متطلبات البرنامج:-
*- قاعدة البيانات (Nwind.mdb) المرفقة مع الفجول بيسك ستة
(vb6)
الآن اليك كود البرنامج:-
1- الآن افتح مشروع قياسى جديد سياخذ الاسم التلقائى form1
2 - اضف 2.0 Project>Refrence>MicroSoft ActiveX data Object
3- قم بوضع زر امر على النموذج
4- من القائمة Project أنقر على Add Data Report ( اذا لم تجد ه قم باضافته من Refrences
ومن ثم حدد v6.0 ( MicroSoft Data Report Designer (بعد ذلك قم بالنقر على Add Data Report)
5- افتح ناذة الخصائص الخاصة Data Report (يمكن فتح نافذة الخصائص بالنقر على الزر F4 ومن ثم اختر خصائص)
6- قم بتغير الخاصية Name من Data Report1 الى Rep
7- قم بوضع مربعى نص على التقرير
8 - قم بلصق الكود التالى فى الحدث Click الخاص ب(Command1) :-
Private Sub Command1_Click()
Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim cmd As New ADODB.Command
Dim q As Integer
Dim intCtrl As Integer
Dim x As Integer
Dim z As Integer
Dim str As String
x = 0
q = 0
z = 0
cn.Open "Provider=Microsoft.Jet.OLEDB.3.51;" &_
"Data Source=c:Program FilesMicrosoft Visual StudioVb98Nwind.mdb;"
With cmd
.ActiveConnection = cn
.CommandType = adCmdText
.CommandText = "Select FirstName, Lastname from Employees"""
.Execute
End With
With rs
.ActiveConnection = cn
.CursorLocation = adUseClient
.Open cmd
End With
With Rep
.Hide
Set .DataSource = rs
.DataMember = ""
With .Sections("Section1").Controls
For intCtrl = 1 To .Count
If TypeOf .Item(intCtrl) Is RptLabel Then
.Item(intCtrl).Caption = rs.Fields(q).Name & " :"
MsgBox .Item(intCtrl).Caption
q = q + 1
End If
If TypeOf .Item(intCtrl) Is RptTextBox Then
.Item(intCtrl).DataMember = ""
.Item(intCtrl).DataField = rs(z).Name
z = z + 1
End If
Next intCtrl
End With
.Refresh
.Show
End With
End Sub
7- قم بلصق الكود التالى فى Load :-
Private Sub Form_Load()
Command1.Caption = "Show Report"
End Sub
ولاتنسونى من دعواتكم الصالحة