03-08-20, 08:02 PM
(آخر تعديل لهذه المشاركة : 03-08-20, 09:19 PM {2} بواسطة ابراهيم ايبو.)
السلام عليكم اخي خالد
من اجل الفانكشن الذي يجلب اكبر قيمة من حقل الاي دي ويضيف لها 1
اولا عد الى قاعدة البيانات حيث تصميم الجدول قم بازالة Primary key عن حقل الاي دي ان كان موجود ثم غير نوع الحقل من AutoNumber الى Number ثم اعد Primary key اليه
واكتب هذا الفنكشن لجلب رقم الاي دي
الان لكي نستخدمه يجب عند الضغط على زر جديد الذي يقوم بتفريغ كل الحقول وحقل الاي دي سيضع فيه القيمة العائدة من الفنكشن
اكتب هذا الصب لتفريغ الادوات
الان في زر جديد استدعي صب تفريغ الادوات
وبالتوفيق
ملاحظة: بعد عمل ماسبق يجب الانتباه الى جملة الحفظ واضافة حقل الايدي في جملة الحفظ مع الباراميتر لاننا في السابق عندما كان حقل الاي دي ترقيم تلقائي
كانت مهمة اضافة الترقيم من مهام قاعدة البيانات نفسها
من اجل الفانكشن الذي يجلب اكبر قيمة من حقل الاي دي ويضيف لها 1
اولا عد الى قاعدة البيانات حيث تصميم الجدول قم بازالة Primary key عن حقل الاي دي ان كان موجود ثم غير نوع الحقل من AutoNumber الى Number ثم اعد Primary key اليه
واكتب هذا الفنكشن لجلب رقم الاي دي
كود :
Public Function MaxID_ozenat() As DataTable
Dim Query As String = "Select IIF(MAX(ezn_ID) IS Null,1,MAX(ezn_ID)+1) From ozenat"
Dim Cmd As New OleDbCommand()
Dim dt As New dataTable()
dt.Clear()
Cmd = New OleDbCommand(Query, Con)
Dim da As New OleDbDataAdapter(Cmd)
da.Fill(dt)
Return (dt)
End Functionاكتب هذا الصب لتفريغ الادوات
كود :
Public Sub Cleardata_ozenat()
Txt_ezn_ID.Text = ""
Txt_ezn_code.Text = ""
Dtp_ezn_date.Value = Now.ToString("dd/MM/yyyy")
Txt__reson.Text = ""
Txt__pro_code.Text = ""
Txt__pro_name.Text = ""
Txt__qty.Text = ""
Txt__user_name.Text = ""
Txt_ezn_code.focus()
Txt_ezn_ID.Text = MaxId_ozenat.Rows(0)(0)
End Subكود :
Cleardata_ozenat()ملاحظة: بعد عمل ماسبق يجب الانتباه الى جملة الحفظ واضافة حقل الايدي في جملة الحفظ مع الباراميتر لاننا في السابق عندما كان حقل الاي دي ترقيم تلقائي
كانت مهمة اضافة الترقيم من مهام قاعدة البيانات نفسها
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات
