ولكن يظهر لي خطا لما اضغط على زر البحث ارفقت صورة الخطا
وهذا الكود اللي استخدمته
كود:
Imports System.Data.OleDb
Public Class Form1
Dim cn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=mydata.accdb")
Dim da As New OleDbDataAdapter
Dim dt As New DataTable
Private Sub DataGridView1_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
da = New OleDbDataAdapter("select * from table1", cn)
da.Fill(dt)
Me.DataGridView1.DataSource = dt
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
dt.Clear()
da = New OleDbDataAdapter("select * from table1 where data_1 between #" & DateTimePicker1.Value & "# and #" & DateTimePicker2.Value & " #", cn)
da.Fill(dt)
Me.DataGridView1.DataSource = dt
End Sub
End Class
05-08-17, 06:36 PM (آخر تعديل لهذه المشاركة : 05-08-17, 06:42 PM {2} بواسطة مبرمج مبتدا.)
سويت نفس اعداداتك باقي المشكله موجوده
(05-08-17, 06:10 PM)khodor1985 كتب : لقد تم معالجة المشروع بناء لطلبك :
المشروع بعد التعديل :
الكود بعد التعديل عليه :
PHP كود :
sqlstr = "Select * From table1 Where data_1 between @start and @end" cmd = New OleDbCommand(sqlstr, cn) cmd.Parameters.Add("@start", OleDbType.Date).Value = DateTimePicker1.Value.Date cmd.Parameters.Add("@end", OleDbType.Date).Value = DateTimePicker2.Value.Date da = New OleDbDataAdapter(cmd) dt = New DataTable("table1") dt.Clear() da.Fill(dt)
Me.DataGridView1.DataSource = dt
جاري التجربه وراجع
أتمنى لك التوفيق
(05-08-17, 06:10 PM)khodor1985 كتب : لقد تم معالجة المشروع بناء لطلبك :
المشروع بعد التعديل :
الكود بعد التعديل عليه :
PHP كود :
sqlstr = "Select * From table1 Where data_1 between @start and @end" cmd = New OleDbCommand(sqlstr, cn) cmd.Parameters.Add("@start", OleDbType.Date).Value = DateTimePicker1.Value.Date cmd.Parameters.Add("@end", OleDbType.Date).Value = DateTimePicker2.Value.Date da = New OleDbDataAdapter(cmd) dt = New DataTable("table1") dt.Clear() da.Fill(dt)
Public Class Form1 Dim cn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=mydata.accdb") Dim da As New OleDbDataAdapter Dim dt As New DataTable
Private Sub DataGridView1_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load da = New OleDbDataAdapter("select * from table1", cn) da.Fill(dt) Me.DataGridView1.DataSource = dt
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click dt.Clear() da = New OleDbDataAdapter("select * from table1 where data_1 between @fromdate and @todate", cn) da.SelectCommand.Parameters.AddWithValue("@fromdate", DateTimePicker1.Value.Date) da.SelectCommand.Parameters.AddWithValue("@todate", DateTimePicker2.Value.Date) da.Fill(dt) Me.DataGridView1.DataSource = dt End Sub End Class
05-08-17, 07:56 PM (آخر تعديل لهذه المشاركة : 05-08-17, 07:58 PM {2} بواسطة سعود.)
اجعل تنسيق التاريخ فالقاعدة على تاريخ قصير
واكتب بالكود
dtp.value.toshortdatestring
كود :
da = New OleDbDataAdapter("select * from table1 where [data_1] between #" & DateTimePicker1.Value.ToShortDateString & "# and #" & DateTimePicker2.Value.ToShortDateString & "#", cn)
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
السلام عليكم ورحمة الله
واضح من الرسالة ان التاريخ لديك تاريخ هجري وهو غير متوافق مع البحث كقيمة منطقية للتاريخ ولتفادي هذه المشكلة فقد جعلت التاريخ بالتاريخ الميلادي
فحمل المرفق وجرب وابلغنا بالنتيجة
والله الموفق
06-08-17, 12:30 AM (آخر تعديل لهذه المشاركة : 06-08-17, 12:35 AM {2} بواسطة مبرمج مبتدا.)
(05-08-17, 09:29 PM)محمود بكرى كتب : السلام عليكم ورحمة الله
واضح من الرسالة ان التاريخ لديك تاريخ هجري وهو غير متوافق مع البحث كقيمة منطقية للتاريخ ولتفادي هذه المشكلة فقد جعلت التاريخ بالتاريخ الميلادي
فحمل المرفق وجرب وابلغنا بالنتيجة
والله الموفق
ماقصرت يالغالي ولكن للاسف البرنامج اللي انا عامله كامل لابد ان يكون التاريخ فيه بالهجري اما الميلادي شغال تمام
(05-08-17, 07:43 PM)أبو نوره كتب : مرحبا اخي
جرب هذا التعديل
PHP كود :
Imports System.Data.OleDb
Public Class Form1 Dim cn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=mydata.accdb") Dim da As New OleDbDataAdapter Dim dt As New DataTable
Private Sub DataGridView1_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load da = New OleDbDataAdapter("select * from table1", cn) da.Fill(dt) Me.DataGridView1.DataSource = dt
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click dt.Clear() da = New OleDbDataAdapter("select * from table1 where data_1 between @fromdate and @todate", cn) da.SelectCommand.Parameters.AddWithValue("@fromdate", DateTimePicker1.Value.Date) da.SelectCommand.Parameters.AddWithValue("@todate", DateTimePicker2.Value.Date) da.Fill(dt) Me.DataGridView1.DataSource = dt End Sub End Class
(05-08-17, 07:56 PM)سعود كتب : اجعل تنسيق التاريخ فالقاعدة على تاريخ قصير
واكتب بالكود
dtp.value.toshortdatestring
كود :
da = New OleDbDataAdapter("select * from table1 where [data_1] between #" & DateTimePicker1.Value.ToShortDateString & "# and #" & DateTimePicker2.Value.ToShortDateString & "#", cn)
اخي الغالى قاعدة البيانات لن تتعامل مع التاريخ الهجري سجل التاريخ بها ميلادي وتعامل معاه هجري عادي من خلال الفورم او اي كانت طريقتك المهم يسجل بالميلادي وان اتبع ذلك الاسلوب فى برامجي كما فى الصورة