الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

ما الخطأ في كود الحفظ الآتي

بدأه ميدو صلاح في 11 مايو 2010 · 3 رد · 770 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أخواني السلام عليكم ورحمة الله

أنا لدي مشكلة في كود حفظ سجلات بناء على شرط تحقق من وجود قيمة داخل تكست بوكس أو لا

فمثلا إذا كان هناك قيمة قيمة داخل تكست بوكس txtmada1 يقوم بحفظ هذا السجل أما إذا كان التكست بوكس فارغ فلم يحفظه وينتقل إلى التكست بوكس التالي

وإذا كان هناك قيمة قيمة داخل تكست بوكس txtmada2 يقوم بحفظ هذا السجل

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

فكيف أقوم بهذه العملية وتسهيلا للأمر فوضعت صورة للمشكلة وجزاكم الله خيرا

504811206.jpg

علما بأني مستخدم فيجوال بيسك دوت نت 2005 وقاعدة بيانات أكسس 2003

وهذا الكود هو

        Dim issql As String = "SELECT * FROM accountrelay WHERE stno LIKE '" + txtst.Text + "' And sanadno LIKE '" + txtsanadno.Text + "'"
        Dim isds As New DataSet
        Dim isda As New OleDbDataAdapter(issql, Cn)
        isda.Fill(isds, "accountrelay")

        If cmbost.Text = "" Or cmbosaf.Text = "" Or cmbofasl.Text = "" Or txtsanadno.Text = "" Or cmbomethod.Text = "" Then
            MsgBox("يجب إكمال البيانات", MsgBoxStyle.Critical, "رسالة خطأ")
            Exit Sub
        ElseIf Me.BindingContext(isds, "accountrelay").Count > 0 And bAdd = True Then
            MsgBox("رقم السند واسم الطالب قيد الاستخدام جرب آخر !!!", MsgBoxStyle.Critical, "خطأ")
            Enable(True)
        Else
            Dim cmdB As New OleDbCommandBuilder(Da)
            Dim addRow As DataRow
            If bAdd = True Then
                If txtmada1.Text <> " " Then
                    addRow = Ds.Tables("accountrelay").NewRow
                    addRow.Item("stno") = Trim(txtst.Text)
                    addRow.Item("alsaf") = Trim(txtsaf.Text)
                    addRow.Item("maddabalance1") = Trim(txtbalance1.Text)
                    Ds.Tables("accountrelay").Rows.Add(addRow)
                    Da.Update(Ds, "accountrelay")
                End If
                If txtmada2.Text <> " " Then
                    addRow = Ds.Tables("accountrelay").NewRow
                    addRow.Item("stno") = Trim(txtst.Text)
                    addRow.Item("alsaf") = Trim(txtsaf.Text)
                    addRow.Item("maddabalance1") = Trim(txtbalance1.Text)
                    Ds.Tables("accountrelay").Rows.Add(addRow)
                    Da.Update(Ds, "accountrelay")
                End If 
                Ds.Tables("accountrelay").Rows.Add(addRow)
                Da.Update(Ds, "accountrelay")
                MsgBox("تمت عملية الحفظ بنجاح")
            Else
                With Ds.Tables("accountrelay").Rows(RowP)
                    .Item("stno") = Trim(txtst.Text)
                    .Item("alsaf") = Trim(txtsaf.Text)
                    .Item("alfasl") = Trim(txtfasl.Text)
                    .Item("paydate") = CDate(Trim(dtpicker.Text))
                    .Item("sanadno") = Trim(txtsanadno.Text)
                    .Item("payment") = Trim(txtpayment.Text)
                    .Item("balance") = Trim(txtbalance.Text)
                    .Item("method") = Trim(cmbomethod.Text)
                    .Item("bankname") = Trim(txtbankname.Text)
                    .Item("bankbranch") = Trim(txtbankbranch.Text)
                    .Item("maddano1") = Trim(txtmada11.Text)
                    .Item("maddapayment1") = Trim(txtpayment1.Text)
                    .Item("maddabalance1") = Trim(txtbalance1.Text)
                End With
                Da.Update(Ds, "accountrelay")
                MsgBox("تمت عملية حفظ تعديلات السجل الحالي " & RowP)
            End If
        End If
        Enable(True)
        ViewRecord(RowP)
        Ds.Clear()
        Da.Fill(Ds, "accountrelay")
        GiveNumber()

تم تعديل هذه المشاركة بواسطة ميدو صلاح في 11 مايو 2010 في 11:34

#2

غير هذا

If txtmada1.Text <> " " Then

الي

If txtmada1.Text <> string.empty Then

#3
سمير ابراهيم كتب:

غير هذا

If txtmada1.Text <> " " Then

الي

If txtmada1.Text <> string.empty Then

أشكرك أخي سمير بارك الله فيك ولكني جربت ما ذكرته ولا يوجد جديد نفس المشكلة أرجو إذا كان هناك أي طريق آخر لحل المشكلة وشاكر جدا

#4
Dim addRow As DataRow
If bAdd = True Then
If txtmada1.Text <> string.empty Then
addRow = Ds.Tables("accountrelay").NewRow
addRow.Item("stno") = Trim(txtst.Text)
addRow.Item("alsaf") = Trim(txtsaf.Text)
addRow.Item("maddabalance1") = Trim(txtbalance1.Text)
Ds.Tables("accountrelay").Rows.Add(addRow)
Da.Update(Ds, "accountrelay")
End If
If txtmada2.Text <> string.empty Then
addRow = Ds.Tables("accountrelay").NewRow
addRow.Item("stno") = Trim(txtst.Text)
addRow.Item("alsaf") = Trim(txtsaf.Text)
addRow.Item("maddabalance1") = Trim(txtbalance1.Text)
Ds.Tables("accountrelay").Rows.Add(addRow)
Da.Update(Ds, "accountrelay")
End If

MsgBox("تمت عملية الحفظ بنجاح")

تم تعديل هذه المشاركة بواسطة سمير ابراهيم في 12 مايو 2010 في 12:18

مواضيع مشابهة