تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] مساعدة في إكمال كود 3 أزرار (حذف-بحث-تعديل)
#1
السلام عليكم و رحمة الله و بركاته

في المرفقات مشروعي صغير لإدارة عيادة طبية صغيرة،
قاعدة بيانات أكسس
Visual 2013

توقفت في برمجة زر
البحث - الحذف - و التعديل

المشروع في مرفقات

لو أحد يمكنه مساعدتي.



الملفات المرفقة
.zip   DrAoussat.zip (الحجم : 130.78 ك ب / التحميلات : 27)
الرد }}}
تم الشكر بواسطة: عبد العزيز البسكري
#2
وعليكم السلام...
ما رأيك أن تراسلني واتس واتابع معك حتى تنهي المشروع؟؟
واتس: 201115740074+
المبرمج لا يفكر في المشكلة بل في الحل!!
الرد }}}
#3
يا بني يا أسامة .. خلينا نتعلم معكم هنا أفضل .. لماذا تحرمنا من أفكارك على الخاص
قناتنا على اليوتوب
الرد }}}
تم الشكر بواسطة: اسامه الهرماوي , shone1
#4
أنا كنت بس عايز أفهم الفكرة وأبسطهاله, لأن الموقع مبيرداش يفتح من الشغل ولازم أفتحة على vpn.
وانا بكون متواجد في البيت يوم في الاسبوع, فقولت وقت منا فاضي أفهمه, وتقبل تحياتي أستاذي عبدالعزيز.

على العموم إنظر للمشروع في المرفقات هو سهل ومبسط وهيساعدك في حاجات كتير.


الملفات المرفقة
.rar   المستوصف.rar (الحجم : 813.88 ك ب / التحميلات : 85)
المبرمج لا يفكر في المشكلة بل في الحل!!
الرد }}}
تم الشكر بواسطة: عبد العزيز البسكري , HUNTER25 , tryold , baha , baha
#5
(30-09-20, 11:42 PM)اسامه الهرماوي كتب : وعليكم السلام...
ما رأيك أن تراسلني واتس واتابع معك حتى تنهي المشروع؟؟
واتس: 201115740074+

نعم ساراسلك في واتياب بإذن الله ..

فكرة مشروعي ..

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

فورم الاول وضعته يعرض لي المرضى
الفورم 2 لاضافة مريض جديد

الى ال الان تمام

حصلت

في الفورم الاول
لم اعرف ابرمج زر البحث
زر التعديل
و زر حذف

الى هنا ارى ان المشروع يكفيني بصورته

ثم جاءتني فكرة اضيف 
تاريخ و وقت اضافة سجل مريض جديد
و في حالة تعديل (اذا المريض اعاد الفحص مرة اخرى) يقوم بتحديث التاريخ و وقت الفحص.

(ملاحظة لست مبرمج متقدم يعني ..انا طبيب. و لي هواية في البرمجة منذ الصغر مع فجوال بيسك ..لكن لم اتقدم فيه كثيرا)

و جزاك الله خيرا
الرد }}}
تم الشكر بواسطة:
#6
(30-09-20, 11:55 PM)اسامه الهرماوي كتب : أنا كنت بس عايز أفهم الفكرة وأبسطهاله, لأن الموقع مبيرداش يفتح من الشغل ولازم أفتحة على vpn.
وانا بكون متواجد في البيت يوم في الاسبوع, فقولت وقت منا فاضي أفهمه, وتقبل تحياتي أستاذي عبدالعزيز.

على العموم إنظر للمشروع في المرفقات هو سهل ومبسط وهيساعدك في حاجات كتير.

الله الموفّق و الله المستعان يا أصيل يا غالي
تحياتي واحتراماتي
قناتنا على اليوتوب
الرد }}}
تم الشكر بواسطة: اسامه الهرماوي
#7
في مثالي (المرفقات في الموضوع)

جعلت فورم1 .. فيه عرض بيانات الجدول في TextBox خاصة بكل حقل

لما اضغط زر add ياخذني الى form2 
بنفس texboxes ..لاضيف مريض جديد الى الجدول 

الى حد الان كل شيء اشتغل معي تمام ..

الان مشكلتي 
1. زر Delete (في الفورم 1) ..اريده ان يحذف البيانات التي تكون ظاهرة اثناء ضغط الزر.

2. زر التعديل Edit (في الفورم 1) اريده يفتحلي الفورم 2 و يظهرلي البيانات نفسها اللي كانت ظاهرة في الفورم 1 اثناء الضغط على زر edit .للتعديل عليها .و حفظها مكان البيانات السابقة (تماما مثل فكرة مشروع "مستوصف")

3. زر البحث في فورم 1 .. اريد اضيف امام textbox لما اكتب اسم المريض يظهر لي بياناته في الفورم 1 نفسها.


جزاكم الله خيرا
الرد }}}
تم الشكر بواسطة:
#8
عدلت لك الكود بناء على طريقة مساعدة أحد الأعضاء لي سابقا

هذا كود الفورم 1
كود :
Imports System.Data.OleDb

Public Class Form1

   Dim ConStr As String = ("Provider=Microsoft.jet.oledb.4.0;" & "Data source =" & Application.StartupPath & "\MyData.mdb")
   Dim Conn As New OleDbConnection(ConStr)

   Dim DataTable1 As New DataTable
   Dim SQLStr As String = "SELECT * From Table1"
   Dim DataAdapter1 As OleDbDataAdapter

   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       DataAdapter1 = New OleDbDataAdapter(SQLStr, Conn)
       DataAdapter1.Fill(DataTable1)

       TextBox1.DataBindings.Add("Text", DataTable1, "Nom")
       TextBox2.DataBindings.Add("Text", DataTable1, "Prenom")
       TextBox3.DataBindings.Add("Text", DataTable1, "Age")
       TextBox4.DataBindings.Add("Text", DataTable1, "Adresse")
       TextBox5.DataBindings.Add("Text", DataTable1, "Tel")
       TextBox6.DataBindings.Add("Text", DataTable1, "Groupage")
       TextBox7.DataBindings.Add("Text", DataTable1, "atcd")
       TextBox8.DataBindings.Add("Text", DataTable1, "Observation")
       TextBox9.DataBindings.Add("Text", DataTable1, "Traitement")

       ChangePosition()
   End Sub

   Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
       Me.BindingContext(DataTable1).Position += 1
       ChangePosition()
   End Sub

   Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
       Me.BindingContext(DataTable1).Position -= 1
       ChangePosition()
   End Sub

   Public Sub ChangePosition()
       Label4.Text = Me.BindingContext(DataTable1).Position + 1 & "/" & Me.BindingContext(DataTable1).Count
       If Me.BindingContext(DataTable1).Position >= 0 Then
           Button6.Enabled = True
           Button8.Enabled = True
       Else
           Button6.Enabled = False
           Button8.Enabled = False
       End If
   End Sub

   Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
       Me.Hide()

       Using frm2 As New Form2
           frm2.Button4.Text = "Ajouter"
           frm2.DataTable1 = Me.DataTable1
           frm2.BindingContext = Me.BindingContext
           frm2.BindingContext(DataTable1).AddNew()
           Me.Hide()
           If frm2.ShowDialog() = Windows.Forms.DialogResult.OK Then
               Me.BindingContext(DataTable1).EndCurrentEdit()
               If DataUpdate() Then
                   DataUpdate()
                   DataTable1.Clear()
                   DataAdapter1.Fill(DataTable1)
                   Me.BindingContext(DataTable1).Position = Me.BindingContext(DataTable1).Count - 1
                   ChangePosition()
                   MsgBox("تمت الإضافة و الحفظ بنجاح")
               End If
           Else
               Me.BindingContext(DataTable1).CancelCurrentEdit()
           End If
       End Using

       Me.Show()
   End Sub

   Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
       If MsgBox("هل تريد الحذف؟", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
           Me.BindingContext(DataTable1).RemoveAt(Me.BindingContext(DataTable1).Position)
           DataUpdate()
           ChangePosition()
       End If
   End Sub

   Private Sub Button8_Click(sender As System.Object, e As System.EventArgs) Handles Button8.Click
       Me.Hide()

       Using frm2 As New Form2
           frm2.Button4.Text = "Modifier"

           frm2.DataTable1 = Me.DataTable1
           frm2.BindingContext = Me.BindingContext
           If frm2.ShowDialog() = Windows.Forms.DialogResult.OK Then
               Me.BindingContext(DataTable1).EndCurrentEdit()
               If DataUpdate() Then
                   MsgBox("تم التعديل و الحفظ بنجاح")
               End If
           Else
               Me.BindingContext(DataTable1).CancelCurrentEdit()
           End If
       End Using

       Me.Show()
   End Sub

   Private Function DataUpdate() As Boolean
       Try
           Me.BindingContext(DataTable1).EndCurrentEdit()
           Dim save As New OleDbCommandBuilder(DataAdapter1)
           DataAdapter1.Update(DataTable1)
           DataTable1.AcceptChanges()
           Return True
       Catch ex As Exception
           MsgBox(ex.Message)
           Return False
       End Try
   End Function

   Private Sub Button7_Click(sender As System.Object, e As System.EventArgs) Handles Button7.Click
       Dim nom = InputBox("Entrez le nom:")
       If nom.Trim <> "" Then
           Dim i As Integer
           For i = 0 To DataTable1.Rows.Count - 1
               If DataTable1.Rows(i)("Nom").ToString.ToLower.Contains(nom.ToLower) Then
                   Me.BindingContext(DataTable1).Position = i
                   ChangePosition()
                   Exit Sub
               End If
           Next
           If i = DataTable1.Rows.Count Then
               MsgBox("لا يوجد")
           End If
       End If
   End Sub

End Class

هذا كود الفورم 2
كود :
Public Class Form2

   Public DataTable1 As DataTable

   Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       TextBox1.DataBindings.Add("Text", DataTable1, "Nom")
       TextBox2.DataBindings.Add("Text", DataTable1, "Prenom")
       TextBox3.DataBindings.Add("Text", DataTable1, "Age")
       TextBox4.DataBindings.Add("Text", DataTable1, "Adresse")
       TextBox5.DataBindings.Add("Text", DataTable1, "Tel")
       TextBox6.DataBindings.Add("Text", DataTable1, "Groupage")
       TextBox7.DataBindings.Add("Text", DataTable1, "atcd")
       TextBox8.DataBindings.Add("Text", DataTable1, "Observation")
       TextBox9.DataBindings.Add("Text", DataTable1, "Traitement")
   End Sub

   Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
       If TextBox1.Text.Trim = "" Then
           MsgBox("Entrez le nom")
           Exit Sub
       End If
       Me.DialogResult = Windows.Forms.DialogResult.OK
   End Sub

   Private Sub Button3_Click(sender As System.Object, e As System.EventArgs) Handles Button3.Click
       Close()
   End Sub

End Class

أنتظر ردك ................................................
الرد }}}
تم الشكر بواسطة: ابو روضة , HUNTER25 , اسامه الهرماوي , shone1
#9
(06-10-20, 05:35 PM)hatan كتب : عدلت لك الكود بناء على طريقة مساعدة أحد الأعضاء لي سابقا

هذا كود الفورم 1
كود :
Imports System.Data.OleDb

Public Class Form1

   Dim ConStr As String = ("Provider=Microsoft.jet.oledb.4.0;" & "Data source =" & Application.StartupPath & "\MyData.mdb")
   Dim Conn As New OleDbConnection(ConStr)

   Dim DataTable1 As New DataTable
   Dim SQLStr As String = "SELECT * From Table1"
   Dim DataAdapter1 As OleDbDataAdapter

   Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       DataAdapter1 = New OleDbDataAdapter(SQLStr, Conn)
       DataAdapter1.Fill(DataTable1)

       TextBox1.DataBindings.Add("Text", DataTable1, "Nom")
       TextBox2.DataBindings.Add("Text", DataTable1, "Prenom")
       TextBox3.DataBindings.Add("Text", DataTable1, "Age")
       TextBox4.DataBindings.Add("Text", DataTable1, "Adresse")
       TextBox5.DataBindings.Add("Text", DataTable1, "Tel")
       TextBox6.DataBindings.Add("Text", DataTable1, "Groupage")
       TextBox7.DataBindings.Add("Text", DataTable1, "atcd")
       TextBox8.DataBindings.Add("Text", DataTable1, "Observation")
       TextBox9.DataBindings.Add("Text", DataTable1, "Traitement")

       ChangePosition()
   End Sub

   Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
       Me.BindingContext(DataTable1).Position += 1
       ChangePosition()
   End Sub

   Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
       Me.BindingContext(DataTable1).Position -= 1
       ChangePosition()
   End Sub

   Public Sub ChangePosition()
       Label4.Text = Me.BindingContext(DataTable1).Position + 1 & "/" & Me.BindingContext(DataTable1).Count
       If Me.BindingContext(DataTable1).Position >= 0 Then
           Button6.Enabled = True
           Button8.Enabled = True
       Else
           Button6.Enabled = False
           Button8.Enabled = False
       End If
   End Sub

   Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
       Me.Hide()

       Using frm2 As New Form2
           frm2.Button4.Text = "Ajouter"
           frm2.DataTable1 = Me.DataTable1
           frm2.BindingContext = Me.BindingContext
           frm2.BindingContext(DataTable1).AddNew()
           Me.Hide()
           If frm2.ShowDialog() = Windows.Forms.DialogResult.OK Then
               Me.BindingContext(DataTable1).EndCurrentEdit()
               If DataUpdate() Then
                   DataUpdate()
                   DataTable1.Clear()
                   DataAdapter1.Fill(DataTable1)
                   Me.BindingContext(DataTable1).Position = Me.BindingContext(DataTable1).Count - 1
                   ChangePosition()
                   MsgBox("تمت الإضافة و الحفظ بنجاح")
               End If
           Else
               Me.BindingContext(DataTable1).CancelCurrentEdit()
           End If
       End Using

       Me.Show()
   End Sub

   Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
       If MsgBox("هل تريد الحذف؟", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
           Me.BindingContext(DataTable1).RemoveAt(Me.BindingContext(DataTable1).Position)
           DataUpdate()
           ChangePosition()
       End If
   End Sub

   Private Sub Button8_Click(sender As System.Object, e As System.EventArgs) Handles Button8.Click
       Me.Hide()

       Using frm2 As New Form2
           frm2.Button4.Text = "Modifier"

           frm2.DataTable1 = Me.DataTable1
           frm2.BindingContext = Me.BindingContext
           If frm2.ShowDialog() = Windows.Forms.DialogResult.OK Then
               Me.BindingContext(DataTable1).EndCurrentEdit()
               If DataUpdate() Then
                   MsgBox("تم التعديل و الحفظ بنجاح")
               End If
           Else
               Me.BindingContext(DataTable1).CancelCurrentEdit()
           End If
       End Using

       Me.Show()
   End Sub

   Private Function DataUpdate() As Boolean
       Try
           Me.BindingContext(DataTable1).EndCurrentEdit()
           Dim save As New OleDbCommandBuilder(DataAdapter1)
           DataAdapter1.Update(DataTable1)
           DataTable1.AcceptChanges()
           Return True
       Catch ex As Exception
           MsgBox(ex.Message)
           Return False
       End Try
   End Function

   Private Sub Button7_Click(sender As System.Object, e As System.EventArgs) Handles Button7.Click
       Dim nom = InputBox("Entrez le nom:")
       If nom.Trim <> "" Then
           Dim i As Integer
           For i = 0 To DataTable1.Rows.Count - 1
               If DataTable1.Rows(i)("Nom").ToString.ToLower.Contains(nom.ToLower) Then
                   Me.BindingContext(DataTable1).Position = i
                   ChangePosition()
                   Exit Sub
               End If
           Next
           If i = DataTable1.Rows.Count Then
               MsgBox("لا يوجد")
           End If
       End If
   End Sub

End Class

هذا كود الفورم 2
كود :
Public Class Form2

   Public DataTable1 As DataTable

   Private Sub Form2_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       TextBox1.DataBindings.Add("Text", DataTable1, "Nom")
       TextBox2.DataBindings.Add("Text", DataTable1, "Prenom")
       TextBox3.DataBindings.Add("Text", DataTable1, "Age")
       TextBox4.DataBindings.Add("Text", DataTable1, "Adresse")
       TextBox5.DataBindings.Add("Text", DataTable1, "Tel")
       TextBox6.DataBindings.Add("Text", DataTable1, "Groupage")
       TextBox7.DataBindings.Add("Text", DataTable1, "atcd")
       TextBox8.DataBindings.Add("Text", DataTable1, "Observation")
       TextBox9.DataBindings.Add("Text", DataTable1, "Traitement")
   End Sub

   Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
       If TextBox1.Text.Trim = "" Then
           MsgBox("Entrez le nom")
           Exit Sub
       End If
       Me.DialogResult = Windows.Forms.DialogResult.OK
   End Sub

   Private Sub Button3_Click(sender As System.Object, e As System.EventArgs) Handles Button3.Click
       Close()
   End Sub

End Class

أنتظر ردك ................................................

ممتاز ... جزاك الله كل خير ... أعطيتنا أفكار جديدة جميلة
الرد }}}
تم الشكر بواسطة:
#10
(06-10-20, 05:35 PM)hatan كتب :
 لو يمكن. أزعجك مرة أخرى

جزاك الله خير

أضفت حقل للجدول فيه سعر الفحص لكل مريض ... و كذا تاريخ الفحص

لو يمكن
أضع 2  DateTimePick ... من تاريخ كذا إلى تاريخ كذا ...يعطيني مجموع الأسعار المدخلة في حقل السعر.
الرد }}}
تم الشكر بواسطة: shone1



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


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