تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] طلب اضافة السجلات بالترتيب بزيادة رقم الكود بمقدار واحد فقط
#1
السلام عليكم ورحمة الله وبركاته

احبابي في الله

كيف يمكنني  اضافة السجلات بالترتيب بزيادة رقم الكود بمقدار واحد فقط على اخر سجل

مثال : لو عندنا اسماء التلاميذ  ورقم كود التلميذ  والسن والنتيجة

 محمد        1          15سنة           50 درجة
احمد          2          13سنة           48درجة
هاني          3          12سنة           49درجة

اريد اضافة سجل جديد 

بمجرد الضغط على زر اضافة طالب  يظهر في خانة رقم الكود 4 اوتوماتيك ثم اقوم انا بإدخال الاسم والسن والدرجة ثم اضغط على زر حفظ

ولو اردت اضافة سجل اخر            يظهر رقم الكود 5 اوتوماتيكيا  وهكذا

 مرفق مثال للتعديل
Smile Smile Smile Smile Smile


الملفات المرفقة
.zip   Students add.zip (الحجم : 121.47 ك ب / التحميلات : 17)
 

"" بارك الله لكل من استفاد و أفاد بعلمه ""
hamada salah
الرد }}}}
تم الشكر بواسطة:
#2
انا دخلت على المثال ولم اجد كود واحد حتى استطيع ان أفيدك بالشكل المطلوب .. 


على كل حال التكست بوكس حق الرقم  جعلته لاتستطيع التعديل عليه عشان ياخذ الرقم تلقائي .

كود :
txtCode.Text = DataSet1.Tables("tbl_Students").Compute("Max(std_Code)", "std_Code >= 0") + "1"


تفضل مثالك مع التعديل


الملفات المرفقة
.rar   Students add.rar (الحجم : 94.28 ك ب / التحميلات : 27)
الرد }}}}
تم الشكر بواسطة: hamada salah90
#3
السلام عليكم أخي العزيز ورحمة الله وبركاته

المرفق بعد التعديل :  
.rar   khodor1985 - Sudents_Add.rar (الحجم : 109.82 ك ب / التحميلات : 12)

الأكواد :
قم بالإعلان عن المتغيرات التالية :
PHP كود :
 Dim con As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Data.accdb")
 
   Dim cmd As OleDbCommand
    Dim da 
As OleDbDataAdapter
    Dim ds 
As DataSet
    Dim sqlstr 
As String 

زر الإضافة :
PHP كود :
 Try
            txtName
.Clear()
 
           txtAge.Clear()
 
           txtDegree.Clear()
 
           con.Open()
 
           sqlstr "SELECT MAX(std_Code) +1 FROM tbl_Students"
 
           cmd = New OleDbCommand(sqlstrcon)
 
           da = New OleDbDataAdapter(cmd)
 
           ds = New DataSet
            ds
.Clear()
 
           da.Fill(ds"tbl_Students")

 
           txtCode.Text ds.Tables("tbl_Students").Rows(0).Item(0).ToString()

 
           con.Close()
 
       Catch ex As Exception
            If con
.State ConnectionState.Open Then con.Close()
 
           MsgBox(ex.Message)
 
       End Try 

زر الحفظ :
PHP كود :
Try
 
           con.Open()

 
           sqlstr "INSERT INTO tbl_Students(std_Code,std_Name,std_Age,std_Degree) " _
                     
"Values(@std_Code,@std_Name,@std_Age,@std_Degree)"

 
           cmd = New OleDbCommand(sqlstrcon)
 
           With cmd.Parameters
                
.Add("@std_Code"OleDbType.Integer).Value IIf(txtCode.Text.Trim.Length 0System.DBNull.ValuetxtCode.Text)
 
               .Add("@std_Name"OleDbType.VarWChar).Value IIf(txtName.Text.Trim.Length 0System.DBNull.ValuetxtName.Text)
 
               .Add("@std_Age"OleDbType.VarWChar).Value IIf(txtAge.Text.Trim.Length 0System.DBNull.ValuetxtAge.Text)
 
               .Add("@std_Degree"OleDbType.VarWChar).Value IIf(txtDegree.Text.Trim.Length 0System.DBNull.ValuetxtDegree.Text)
 
           End With

            cmd
.ExecuteNonQuery()
 
           MsgBox("Record Saved Successfully")

 
           con.Close()

 
           txtCode.Clear()
 
           txtName.Clear()
 
           txtAge.Clear()
 
           txtDegree.Clear()

 
       Catch ex As Exception
            If con
.State ConnectionState.Open Then con.Close()
 
           MsgBox(ex.Message)
 
       End Try 

صورة عن المشروع :

   

أتمنى لك التوفيق

الطريقة الثانية في زيادة رقم الكود بمقدار واحد :
المرفق بعد التعديل :
.rar   khodor1985 - 1 - Sudents_Add.rar (الحجم : 110.29 ك ب / التحميلات : 17)

زر الإضافة :
PHP كود :
Try
 
           txtName.Clear()
 
           txtAge.Clear()
 
           txtDegree.Clear()
 
           con.Open()
 
           sqlstr "SELECT * FROM tbl_Students"
 
           cmd = New OleDbCommand(sqlstrcon)
 
           da = New OleDbDataAdapter(cmd)
 
           ds = New DataSet
            ds
.Clear()
 
           da.Fill(ds"tbl_Students")

 
           Dim max As Integer
            max 
ds.Tables("tbl_Students").Rows.Count
            txtCode
.Text CStr(max) + 1

            con
.Close()
 
       Catch ex As Exception
            If con
.State ConnectionState.Open Then con.Close()
 
           MsgBox(ex.Message)
 
       End Try 

صورة عن الكود :
   

أتمنى لك التوفيق

الطريقة الثالثة : زيادة رقم بمقدار واحد من خلال BindingSource ويمكن استخدامها أيضا مع CurrencyManage ومع BindingManagerBase :
المرفق بعد التعديل :
.rar   khodor1985- 2 - Sudents_Add.rar (الحجم : 110.45 ك ب / التحميلات : 29)

زر الإضافة : (يستحسن أن يسمى جديد وليس زر الإضافة وزر الحفظ بالإضافة)
PHP كود :
Try
 
           txtName.Clear()
 
           txtAge.Clear()
 
           txtDegree.Clear()
 
           con.Open()
 
           sqlstr "SELECT * FROM tbl_Students"
 
           cmd = New OleDbCommand(sqlstrcon)
 
           da = New OleDbDataAdapter(cmd)
 
           ds = New DataSet
            ds
.Clear()
 
           da.Fill(ds"tbl_Students")

 
           bs = New BindingSource
            bs
.DataSource ds.Tables("tbl_Students")

 
           Dim max As Integer
            max 
bs.Count
            txtCode
.Text CStr(max) + 1

            con
.Close()
 
       Catch ex As Exception
            If con
.State ConnectionState.Open Then con.Close()
 
           MsgBox(ex.Message)
 
       End Try 
صور عن الكود المعدل :
   

أتمنى لك التوفيق

إعلم أخي العزيز أن علم المنطق لا يجيب على الأسئلة، فإذا عرض سؤال على عالم الكيمياء أو عالم الفيزياء أو عالم البرمجة فإن المنطق لن يجيب على كل تلك الأسئلة، فعلم المنطق هو الذي يعلم عالم الكيمياء والفيزياء والرياضيات والمبرمج كيف يجيب على تلك الأسئلة، بمعنى آخر يعلمه كيف يرتب ويركب تلك المعلومات ثم كيف يختار المادة أو المعلومة الصحيحة والمناسبة للإجابة على السؤال.

بناء عليه، علم المنطق هو علم يبحث عن القواعد العامة للتفكير الصحيح، فالنتيجة والغاية والفائدة من علم المنطق هو "التفكير الصحيح".

خلاصة :
إن الشيء يفعل فعله بشروط :
وجود المقتضي
تحقق الشرط
فقدان المانع

لكي يستطيع العقل الإدراك بالشكل الصحيح لا بد من وجود القوة، والقوة هي الذهن ، والذهن هو بمقام الشرط الأول "المقتضي"، والشرط الثاني "تحقق الشرط" هو ترتيب المعلومات واختيارها، والشرط الثالث "فقدان المانع" هو الجهل أو التعالي أو التعنت أو الإستبداد بالراي إلى آخره.

أتمنى لك التوفيق
الرد }}}}
تم الشكر بواسطة: Adrees , hamada salah90
#4
(03-04-16, 09:19 AM)khodor1985 كتب : السلام عليكم أخي العزيز ورحمة الله وبركاته

المرفق بعد التعديل :  

الأكواد :
قم بالإعلان عن المتغيرات التالية :
PHP كود :
 Dim con As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Data.accdb")
 
   Dim cmd As OleDbCommand
    Dim da 
As OleDbDataAdapter
    Dim ds 
As DataSet
    Dim sqlstr 
As String 

زر الإضافة :
PHP كود :
 Try
            txtName
.Clear()
 
           txtAge.Clear()
 
           txtDegree.Clear()
 
           con.Open()
 
           sqlstr "SELECT MAX(std_Code) +1 FROM tbl_Students"
 
           cmd = New OleDbCommand(sqlstrcon)
 
           da = New OleDbDataAdapter(cmd)
 
           ds = New DataSet
            ds
.Clear()
 
           da.Fill(ds"tbl_Students")

 
           txtCode.Text ds.Tables("tbl_Students").Rows(0).Item(0).ToString()

 
           con.Close()
 
       Catch ex As Exception
            If con
.State ConnectionState.Open Then con.Close()
 
           MsgBox(ex.Message)
 
       End Try 

زر الحفظ :
PHP كود :
Try
 
           con.Open()

 
           sqlstr "INSERT INTO tbl_Students(std_Code,std_Name,std_Age,std_Degree) " _
                     
"Values(@std_Code,@std_Name,@std_Age,@std_Degree)"

 
           cmd = New OleDbCommand(sqlstrcon)
 
           With cmd.Parameters
                
.Add("@std_Code"OleDbType.Integer).Value IIf(txtCode.Text.Trim.Length 0System.DBNull.ValuetxtCode.Text)
 
               .Add("@std_Name"OleDbType.VarWChar).Value IIf(txtName.Text.Trim.Length 0System.DBNull.ValuetxtName.Text)
 
               .Add("@std_Age"OleDbType.VarWChar).Value IIf(txtAge.Text.Trim.Length 0System.DBNull.ValuetxtAge.Text)
 
               .Add("@std_Degree"OleDbType.VarWChar).Value IIf(txtDegree.Text.Trim.Length 0System.DBNull.ValuetxtDegree.Text)
 
           End With

            cmd
.ExecuteNonQuery()
 
           MsgBox("Record Saved Successfully")

 
           con.Close()

 
           txtCode.Clear()
 
           txtName.Clear()
 
           txtAge.Clear()
 
           txtDegree.Clear()

 
       Catch ex As Exception
            If con
.State ConnectionState.Open Then con.Close()
 
           MsgBox(ex.Message)
 
       End Try 

صورة عن المشروع :



أتمنى لك التوفيق

الطريقة الثانية في زيادة رقم الكود بمقدار واحد :
المرفق بعد التعديل :

زر الإضافة :
PHP كود :
Try
 
           txtName.Clear()
 
           txtAge.Clear()
 
           txtDegree.Clear()
 
           con.Open()
 
           sqlstr "SELECT * FROM tbl_Students"
 
           cmd = New OleDbCommand(sqlstrcon)
 
           da = New OleDbDataAdapter(cmd)
 
           ds = New DataSet
            ds
.Clear()
 
           da.Fill(ds"tbl_Students")

 
           Dim max As Integer
            max 
ds.Tables("tbl_Students").Rows.Count
            txtCode
.Text CStr(max) + 1

            con
.Close()
 
       Catch ex As Exception
            If con
.State ConnectionState.Open Then con.Close()
 
           MsgBox(ex.Message)
 
       End Try 

صورة عن الكود :


أتمنى لك التوفيق

الطريقة الثالثة : زيادة رقم بمقدار واحد من خلال BindingSource ويمكن استخدامها أيضا مع CurrencyManage ومع BindingManagerBase :
المرفق بعد التعديل :

زر الإضافة : (يستحسن أن يسمى جديد وليس زر الإضافة وزر الحفظ بالإضافة)
PHP كود :
Try
 
           txtName.Clear()
 
           txtAge.Clear()
 
           txtDegree.Clear()
 
           con.Open()
 
           sqlstr "SELECT * FROM tbl_Students"
 
           cmd = New OleDbCommand(sqlstrcon)
 
           da = New OleDbDataAdapter(cmd)
 
           ds = New DataSet
            ds
.Clear()
 
           da.Fill(ds"tbl_Students")

 
           bs = New BindingSource
            bs
.DataSource ds.Tables("tbl_Students")

 
           Dim max As Integer
            max 
bs.Count
            txtCode
.Text CStr(max) + 1

            con
.Close()
 
       Catch ex As Exception
            If con
.State ConnectionState.Open Then con.Close()
 
           MsgBox(ex.Message)
 
       End Try 
صور عن الكود المعدل :


أتمنى لك التوفيق

إعلم أخي العزيز أن علم المنطق لا يجيب على الأسئلة، فإذا عرض سؤال على عالم الكيمياء أو عالم الفيزياء أو عالم البرمجة فإن المنطق لن يجيب على كل تلك الأسئلة، فعلم المنطق هو الذي يعلم عالم الكيمياء والفيزياء والرياضيات والمبرمج كيف يجيب على تلك الأسئلة، بمعنى آخر يعلمه كيف يرتب ويركب تلك المعلومات ثم كيف يختار المادة أو المعلومة الصحيحة والمناسبة للإجابة على السؤال.

بناء عليه، علم المنطق هو علم يبحث عن القواعد العامة للتفكير الصحيح، فالنتيجة والغاية والفائدة من علم المنطق هو "التفكير الصحيح".

خلاصة :
إن الشيء يفعل فعله بشروط :
وجود المقتضي
تحقق الشرط
فقدان المانع

لكي يستطيع العقل الإدراك بالشكل الصحيح لا بد من وجود القوة، والقوة هي الذهن ، والذهن هو بمقام الشرط الأول "المقتضي"، والشرط الثاني "تحقق الشرط"  هو ترتيب المعلومات واختيارها، والشرط الثالث "فقدان المانع"  هو الجهل أو التعالي أو التعنت أو الإستبداد بالراي إلى آخره.

أتمنى لك التوفيق

لا استطيع التعبير لك عن مدى شكري أخي العزيز  Smile Smile 

وكل ما استطيع ان اقوله لك  "بارك الله لك وزادك علما على علمك"

Smile Smile Smile Smile Smile Smile Smile Smile Smile Smile Smile Smile Smile Smile Smile
 

"" بارك الله لكل من استفاد و أفاد بعلمه ""
hamada salah
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  طلب مساعدة في اضافة save & restore trakktour 8 139 أمس, 03:16 AM
آخر رد: trakktour
  [VB.NET] مشكلة نقل الكود من Form2 الي Form1 3asfa~mdmra 2 83 17-02-17, 02:44 AM
آخر رد: الماجيك مسعد
  توليد الادوات في FlowLayoutPanel بواسطة الكود وحذفها (تم ارفاق المشروع) اليوم مبتدئة وغداً محترفة 16 385 13-02-17, 07:43 AM
آخر رد: اليوم مبتدئة وغداً محترفة
  ما الفرق بين اضافة قاعدة البيانات عن طريق الكود و اضافى قاعدة البيانات عن طريق add ne noway 1 64 12-02-17, 08:06 PM
آخر رد: مساعدة
  [VB.NET] مشكلة مع datagridview لا تعرض السجلات الجديدة الا بعد اقفال البرنامج darklibya88 3 154 01-02-17, 04:01 PM
آخر رد: جابر
  كيف اضافة ازرار مثل هذا Mohamed20 3 124 27-01-17, 07:59 PM
آخر رد: مساعدة
  [VB.NET] تعديل بيسط على الكود ليصيح جاهزآ 3asfa~mdmra 0 86 27-01-17, 06:01 PM
آخر رد: 3asfa~mdmra
  [VB.NET] رجاء تصحيح الكود التالي dubai.eig 4 126 25-01-17, 03:02 PM
آخر رد: مساعدة
  [VB.NET] ممكن حل مشكلة الكود MOSTAFA.KAMEL 1 187 22-01-17, 09:37 PM
آخر رد: MOSTAFA.KAMEL
  [سؤال] ما هو الخطأ في الكود التالي .. أرجو المساعدة abo_alaa315 0 74 22-01-17, 02:27 PM
آخر رد: abo_alaa315

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


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم