تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
أحتاج كود اعادة ترقيم حقل المسلسل بعد حذف صف ما في الجدول
#6
(09-09-17, 04:26 AM)سعود كتب : لقد جربت فكرة طرات في بالي وهي اضافة عمود ليس ترقيم تلقائي وهذه الفكرة
كود :
Public Class Form1
   Dim str As String = "provider=microsoft.ace.oledb.12.0;data source=|DataDirectory|\db.accdb"
   Dim con As New OleDb.OleDbConnection(str)
   Dim dt As DataTable
   Dim da As OleDb.OleDbDataAdapter
   Dim cmd As OleDb.OleDbCommandBuilder

   Private Function gid() As Integer
       Try
           Dim cm As New OleDb.OleDbCommand("select Last(tid) from tb", con)
           If con.State = ConnectionState.Closed Then con.Open()
           Return cm.ExecuteScalar
       Catch ex As Exception
           Return Nothing
       End Try
   End Function

   Private Sub gd()
       ListBox1.DataSource = Nothing
       dt = New DataTable
       da = New OleDb.OleDbDataAdapter("select * from tb", con)
       cmd = New OleDb.OleDbCommandBuilder(da)
       da.Fill(dt)
       ListBox1.DataSource = dt
       ListBox1.DisplayMember = "tid"
   End Sub
   Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
       gd()
   End Sub

   Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
       Dim row As DataRow = dt.NewRow
       row(0) = gid() + 1
       dt.Rows.Add(row)
       da.Update(dt)
       gd()
       ListBox1.SelectedIndex = ListBox1.Items.Count - 1
   End Sub

   Private Sub Button2_Click(sender As System.Object, e As System.EventArgs) Handles Button2.Click
       If ListBox1.SelectedIndex < 0 Then MsgBox("اختر الرقم المراد حذفه من القائمة", MsgBoxStyle.Critical, "") : Return

       dt.Rows(ListBox1.SelectedIndex).Delete()
       da.Update(dt)
       gd()
   End Sub

   Private Sub Button3_Click(sender As System.Object, e As System.EventArgs) Handles Button3.Click
       ListBox1.DataSource = Nothing

       For r As Integer = 0 To dt.Rows.Count - 1
           Dim row As DataRow = dt.Rows(r)
           row.BeginEdit()
           row(0) = r
           row.EndEdit()
           da.Update(dt)
       Next
       gd()
   End Sub
End Class


الفكرة تدور حول تحديث الرقم الخاص بعمود الترقيم ...لقد استخدمت عمود واحد فقط لانه مدار الفكرة .

الدالة بالكود لم استخدمها مع اني كتبتها 
كود :
Private Function gid() As Integer
       Try
           Dim cm As New OleDb.OleDbCommand("select Last(tid) from tb", con)
           If con.State = ConnectionState.Closed Then con.Open()
           Return cm.ExecuteScalar
       Catch ex As Exception
           Return Nothing
       End Try
   End Function

هذا ما كنت أفكر فيه بالفعل ( اضافة عمود ليس ترقيم تلقائي ) 
جزاك الله خيرا أخي الكريم / سعود
أسأل الله العظيم أن يجزيك خيرا في الدنيا والآخرة
الرد }}}
تم الشكر بواسطة: سعود


الردود في هذا الموضوع
RE: أحتاج كود اعادة ترقيم حقل المسلسل بعد حذف صف ما في الجدول - بواسطة Abdelazez.Ahmad - 09-09-17, 01:24 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [VB.NET] ترقيم داتا كريت فيو EMADW 1 343 21-04-25, 11:52 PM
آخر رد: Taha Okla
  [VB.NET] السلام عليكم لدي جدول فرعي وارد تحديث الجدول الرئيسي raedre22 2 369 06-07-24, 12:50 PM
آخر رد: raedre22
  [VB.NET] اعادة توجيه للرابط ميدو الفنان 2 355 05-06-24, 02:18 PM
آخر رد: ميدو الفنان
  كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل سنة mram3242 15 6,966 02-06-24, 08:25 PM
آخر رد: atefkhalf2004
  احتاج كود اعادة الترقيم في السنة الجديدة ranosh 3 777 27-11-23, 01:25 AM
آخر رد: justforit
  ممكن كود ترقيم تلقائي في الداتا غريد فيو المبرمج البسيط 16 11,699 08-11-23, 01:44 AM
آخر رد: الحزين اليماني
  [VB.NET] كيف يمكنني إعداد ترقيم تلقائي ويتجدد الترقيم في كل يوم Osama_NY 8 3,402 04-11-23, 01:42 PM
آخر رد: الحزين اليماني
  اريد ترقيم الداتا جريد فيو سمير جمال 10 5,800 29-04-23, 02:01 AM
آخر رد: lar
  فحص الاسماء الموجودة في الجدول من خلال الداتا جريد فيو yosif 5 1,097 22-04-23, 07:57 PM
آخر رد: yosif
  ترقيم تلقائي في الداتا جريد فيو مرتبط بجدول في قاعدة البيانات yosif 1 951 17-04-23, 07:03 AM
آخر رد: Taha Okla

التنقل السريع :


يقوم بقرائة الموضوع: