السلام عليكم ورحمة الله وبركاته
لدي ثلاث جداول متصلة مع بعضها
الجدول الأول إسمه customerوبه الحقول الآتية :
ID ( المفتاح الأساسي )
Fname
Mname
Lname
Fdate (التاريخ)
Sdate (التاريخ)
mobile
address
area
Btype
price
الجدول الثاني إسمه payment مربوط مع الجدول الأول بحقل ID
ID
PID (المفتاح الأساسي )
Pname
price
Pdate (التاريخ)
note
الجدول الثالث إسمه material مربوط مع الجدول الثاني بحقل PID
PID
labours
item
quantity
unit
price
Mdate (التاريخ)
note
سؤالي : هل يمكن جعل حقل ID في الجدول الأول يكون الترقيم تلقائي عند إضافة سجل جديد ؟ وكذلك جعله invisible ؟
لو يمكن ذلك ، أريد معرفة الكود المناسب ؟
البرنامج المستخدم VB.net 2008 والداتا بيز access 2007
PHP كود :
' لجعل الداتا كريد فيو يقوم بالترقيم التلقائي
Dim a As Integer
Try
For a = 1 To control.DataGridView1.RowCount
control.DataGridView1.Rows(a - 1).Cells(4).Value = a
Next
Catch ex As Exception
End Try
اخي الكريم ان كنت تقصد الترقيم التلقائي في الداتا كريد فيو فتفضل الكود التالي
أولاً باركـ اللهـ فيكـ على الرد
كنت أقصد في الفورم بحد ذاتها ، حيث يتم إدخال الرقم تلقائيًا بالتسلسل حسب آخر سجل تم تسجيله
ومن خصائص textbox أستطيع جعل visible = fale عند تنفيذ البرنامج
بمعنى لا يظهر لي خانة ID عند تنفيذ البرنامج
بالنسبة لحقل ID في الداتا بيز فهو ترقيم تلقائي
نعم اخي تستطيع من خلال جملة for و انت تستند الى قاعدة البيانات في الترقيم صحيح ..... اليك الكود التالي
PHP كود :
Dim max As Integer
For counter As Integer = 0 To Table1.Rows.Count - 1
If Table1.Rows(counter).Item("user_id") > max Then
max = CInt(Table1.Rows(counter).Item("user_id"))
End If
Next
id_number.Text = CStr(max + 1)
ارجو ان يكون هذا هو طلبك .............. و اشكر الاخ الوليد على مساعدته للاخرين ......
أخي raoe-041 أشكرك جزيل الشكر على المساعدة
الكود عندما وضعته ظهر لي خطأ ( Table1 ) غير معرفة
فقمت بإضافة اسم قاعدة البيانات قبلها ومشى الحال وتم التخزين في قاعدة البيانات
ولكن حدث أمر بسيط وهو عند الضغط على الحفظ سجل جديد يظهر قيمة ID = 1 لكل السجلات الجديدة في الفورم
أما في قاعدة البيانات فالتسلسل مرتب بصورة صحيحة ،،،
هذا الكود بعد التعديل عليه
كود :
Dim max As Integer
For counter As Integer = 0 To PLYDataSet1.Table1.Rows.Count - 1
If PLYDataSet1.Table1.Rows(counter).Item("ID") > max Then
max = CInt(PLYDataSet1.Table1.Rows(counter).Item("ID"))
End If
Next
IDTextBox.Text = CStr(max + 1)
اخي الكريم Table هو اسم الجدول المراد الحفظ فيه و الاستناد على اخر سجل فيه و هل بالامكان ان تزودنا بصورة عن الخطأ و لماذا لا تستخدم lable في عملية اظهار الرقم التسلسلي ........... تحياتي
اخي الكريم الموضوع مش بحاجة كود
كالتالي:
2- عند الاضافة لا تدخل ال id بالكويري لانه الان يضيف تسلسلي
أخي raoe-041 لقد قمت بعمل label وظهرت النتيجة كما أريدها ،،، بارك الله فيك
أخي yousef أشكرك على المساعدة ،،،
سلام عليكم
قومت بوضع حقل ترقيم تلقائي pkفي قاعدة كسس واريدة في فيجول يكون مخف
hotel_name,hotel_mark,hotel_addrees
,id_host هاذا هو حقل ترقيم
اطبق علية كود اضافة وتعديل وحذف ...انا مبتدئ في فيجودةمني مساعل ات
نسيت باستخدام DataGridView