السلام عليكم
وجدة كود ولكن لم يعمل لدي فبحثت طويلا ان انواع الاكواد وسورسات جاهزة لوضيفه الكود هذا ولكن للأسف لم اوفق في الحصول على سورس .
الكود
كود :
Using conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
conn.Open()
TextBox5.Text = Database1DataSet.Rent_Equipment.Compute("max(Ren_NO)", Nothing)
End Using
وضيفة الكود :
انه يقرأ اخر رقم موجود :
مثلا :
ان هناك اخر رقم موجود رقم 10 فالكود يعطيني رقم 11 ليتم المواصلة
للعلم الكود لم يعمل عندي الرجاء ثم الرجاء لمن عنده كود سهل وبسيط الرجاء وضعه هنا ليتم الاستفادة من الاكواد
اما الكود الثاني :
كود :
Dim C As Control
For Each C In Me.Controls
If TypeOf C Is TextBox Then
C.Text = ""
End If
Next
TextBox1.Text = obj.SelectMaxValue("tbl_employees", "empid")
لم استوعبه ابدا ويقال انه يعمل بشكل جيد ولكن لم افهم طريقته ليعمل لدي ارجو التوضيح لهذا الكود او جعله ابسط بكثير من التعقيدات الموجودة
غير ما يلزم فى هذا الكود
PHP كود :
Dim cmd2 As New OleDbCommand
cmd2.CommandType = CommandType.Text
cmd2.Connection = Con
cmd2.CommandText = "select max (number) from [numberr] "
Con.Open()
Dim a As Integer = cmd2.ExecuteScalar
Con.Close()
TextBox3.Text = a
شكرا اخي على مجهودك ولكن هناك خطأ
الكود
Using conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
Dim cmd2 As New OleDbCommand
cmd2.CommandType = CommandType.Text
cmd2.Connection = conn
cmd2.CommandText = "select max (Ren_NO) from [Rent_Equipment] "
conn.Open()
Dim a As Integer = cmd2.ExecuteScalar
conn.Close()
TextBox5.Text = a
End Using
مكان الخطأ
Dim a As Integer = cmd2.ExecuteScalar
عنوان الخطأ
An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll
Additional information: Invalid SQL statement; expected 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT', or 'UPDATE'.
فهل انا وضع شيء ليس في مكانه ؟؟
لم افهم الكود وعندما وضعته لاحظت ان ليس هناك شيء معين لوضع الرقم التلقائي فيه واريد وضع الرقم داخل TextBox5.Text هل يمكنك شرحه لي لاني لم افهمه صحيح واكيف يعمل تلقائي من غير زر يعمل ؟؟
أفرض أن لدينا ما يلي
قاعدة بيانات اسمها DataBase1
جدول أسمه Table1
وفيه حقل أسمه ID
نريد أخذ أخر قيمة نكتب الكود التالي في أي حدث نريد حدث ( تحميل النموذج - على زر أمر )
كود :
Dim sql As String = "select max(id)as maxid FROM Table1"
Dim DA As New OleDbDataAdapter(sql, Conn)
Dim DS As New DataSet
DA.Fill(DS, "Table1")
TextBox1.DataBindings.Add("text", DS, "Table1.MaxID")
هذه من إحدى الطرق وهناك طرق عده وإنما عرضت لك مثال
وإذا أردة أخر رقم زائد واحد أضف في نهاية الكود السابق السطر التالي
كود :
Me.TextBox1.Text += 1
الافضل تستخدم كود مناسب لنوع الربط المستخدم.
اشكرك على الجهد لكن يوجد خطأ
الكود
Using conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
conn.Open()
Dim sql As String = "select max(Ren_NO)as maxid FROM Rent_Equipment"
Dim DA As New OleDbDataAdapter(sql, conn)
Dim DS As New DataSet
DA.Fill(DS, "Rent_Equipment")
TextBox5.DataBindings.Add("text", DS, "Rent_Equipment.MaxID")
Me.TextBox1.Text += 1
End Using
مكان الخطا
Me.TextBox1.Text += 1
نوع الخطأ
An unhandled exception of type 'System.InvalidCastException' occurred in Microsoft.VisualBasic.dll
Additional information: Conversion from string "Ahmed Albasha" to type 'Double' is not valid.
(21-07-15, 08:51 PM)0theghost0 كتب : [ -> ]شكرا اخي على مجهودك ولكن هناك خطأ
الكود
Using conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
Dim cmd2 As New OleDbCommand
cmd2.CommandType = CommandType.Text
cmd2.Connection = conn
cmd2.CommandText = "select max (Ren_NO) from [Rent_Equipment] "
conn.Open()
Dim a As Integer = cmd2.ExecuteScalar
conn.Close()
TextBox5.Text = a
End Using
مكان الخطأ
Dim a As Integer = cmd2.ExecuteScalar
ضيف .string
عنوان الخطأ
An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll
Additional information: Invalid SQL statement; expected 'DELETE', 'INSERT', 'PROCEDURE', 'SELECT', or 'UPDATE'.
فهل انا وضع شيء ليس في مكانه ؟؟
"cmd.CommandText = "select isnull(MAX((Patient_ID)+1),1) from Tb_PatientData
Dim x As Integer = cmd.ExecuteScalar
txt_ID.Text = x
هذه الفكرة من اخونا المهندس خالد السعدني
مسامحة شباب شكلي بدوخكم وياي ترى الكود مثل الشيء
الكود
Using conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
conn.Open()
Dim cmd As New OleDbCommand
Dim sql As String = "Select Case isnull(MAX((Ren_NO) + 1), 1) from Rent_Equipment"
Dim x As Integer = cmd.ExecuteScalar
TextBox5.Text = x
End Using
مكان الخطأ
Dim x As Integer = cmd.ExecuteScalar
عنوان الخطأ
An unhandled exception of type 'System.InvalidOperationException' occurred in System.Data.dll
Additional information: ExecuteScalar: Connection property has not been initialized.
فهل من يستطيع مساعدتي
اتمنى وضع الكود بجميع محتوياته لا تضع لي نصف الكود او جزء بسيط منه انني مبتدأ في عالم البرمجة لذا اريد شيء استطيع قرائته وفهمه وافادة الاخارين منه
اتمنى انكم توقفون وياي ولاتنزعجون مني البرنامج الى استخدمه للتذكير فقط
Visual Basic 2015 RC
ما المقصود باخر رقم موجود ؟