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

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : كيف اجعل زر الحفظ يقوم بعمل حفظ وتعديل فى نفس الوقت (/showthread.php?tid=28677)

الصفحات: 1 2 3 4


كيف اجعل زر الحفظ يقوم بعمل حفظ وتعديل فى نفس الوقت - atef_020 - 18-02-19

السلام عليكم ورحمة الله وبركاتة مشرفى واعضاء المنتدى الكرام 

لدى فورم لادخال الاصناف اريد فى زر الحفظ ان يقوم عمليتن حفظ اذا كان الصنف جديد او تعديل اذا كان هذا االصنف موجود مسبقا 
ودا كود الحفظ 
PHP كود :
  Dim strqury As String "Insert into  t1([code],[name],[cost],[price],[supl],[unit],[Tax],[Ds],[Exper],[DateItem],[DeprtNUM],[priceFtax],[Stock_ORD],[costFtax],[Q_RAITAL],[BOX],[COST_R])values(@code,@name,@cost,@price,@supl,@unit,@Tax,@Ds,@Exper,@DateItem,@DeprtNUM,@Stock_ORD,@priceFtax,@costFtax,@Q_RAITAL,@BOX,@COST_R)"

 
       cmd = New OleDb.OleDbCommand(strqurycon)
 
       cmd.Parameters.Add(New OleDbParameter("@code"OleDbType.VarChar)).Value T4.Text
        cmd
.Parameters.Add(New OleDbParameter("@name"OleDbType.VarChar)).Value T6.Text
        cmd
.Parameters.Add(New OleDbParameter("@cost"OleDbType.Currency)).Value T7.Text
        cmd
.Parameters.Add(New OleDbParameter("@price"OleDbType.Currency)).Value T8.Text
        cmd
.Parameters.Add(New OleDbParameter("@supl"OleDbType.VarChar)).Value TextBox7.Text
        cmd
.Parameters.Add(New OleDbParameter("@unit"OleDbType.VarChar)).Value ComboBox1.Text
        cmd
.Parameters.Add(New OleDbParameter("@Tax"OleDbType.Integer)).Value T16.Text
        cmd
.Parameters.Add(New OleDbParameter("@Ds"OleDbType.Currency)).Value T15.Text
        cmd
.Parameters.Add(New OleDbParameter("@Exper"OleDbType.Date)).Value d2.Value.Date
        cmd
.Parameters.Add(New OleDbParameter("@DateItem"OleDbType.Date)).Value t23.Value.Date
        cmd
.Parameters.Add(New OleDbParameter("@DeprtNUM"OleDbType.VarChar)).Value TextBox15.Text
        cmd
.Parameters.Add(New OleDbParameter("@Stock_ORD"OleDbType.Currency)).Value T12.Text
        cmd
.Parameters.Add(New OleDbParameter("@priceFtax"OleDbType.Currency)).Value T20.Text
        cmd
.Parameters.Add(New OleDbParameter("@costFtax"OleDbType.Currency)).Value t19.Text
        cmd
.Parameters.Add(New OleDbParameter("@Q_RAITAL"OleDbType.Currency)).Value T9.Text
        cmd
.Parameters.Add(New OleDbParameter("@BOX"OleDbType.Currency)).Value T10.Text
        cmd
.Parameters.Add(New OleDbParameter("@COST_R"OleDbType.Currency)).Value T11.Text
        cmd
.Parameters.Add(New OleDbParameter("@QTY"OleDbType.Integer)).Value 0
        con
.Open()
 
       cmd.ExecuteNonQuery()
 
       MsgBox("تمت العملية بنجاح "MsgBoxStyle.Information"الاضافة")
 
       clear()
 
       con.Close()
 
       Exit Sub 
وعندى فى شاشة المشتريات زر ترحيل الفاتورة 
اريد فى زر ترحيل الفاتورة اذا كانت هذه الفاتورة لم يتم فضها من قبل بدلا من ان اقوم بحفظ ثم ارجع الى الفاتورة ليتم ترحيلها فعند الضعط على زر ترحيل يقوم بالحفظ ثم الترحيل ...........
وجزاكم الله خيرا .... وتحياتى للجميع


RE: كيف اجعل زر الحفظ يقوم بعمل حفظ وتعديل فى نفس الوقت - princelovelorn - 18-02-19

وعليكم السلام ورحمة الله وبركاته

الفكرة كالتالي

هاتضع كود الحفظ في أجراء خاص به  save()
وكود التعديل في أجراء خاص به  Edit()

وهاتنشئ دالة بسيطة  تستعلم عن كود الصنف   مثلا اسمها ( checkcode)
لو موجود  ترجع true   
لو غير موجود ترجع ب false

في زر الحفظ هايتم وضع التالي

كود :
  Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

       If checkcode = True Then
           ' في حالة كود الصنف موجود
           Edit()
       Else
           ' في حالة كود الصنف غير موجود
           Save()

       End If

   End Sub

ونفس الفكرة للسؤال الثاني
هاتستخدم دالة ( checkcode)
للفاتورة 
بس طبعا هاتعدل جملة الاستعلام للفاتورة

تمنياتي لك بالتوفيق والنجاح



RE: كيف اجعل زر الحفظ يقوم بعمل حفظ وتعديل فى نفس الوقت - atef_020 - 18-02-19

(18-02-19, 08:11 PM)princelovelorn كتب :
وعليكم السلام ورحمة الله وبركاته

الفكرة كالتالي

هاتضع كود الحفظ في أجراء خاص به  save()
وكود التعديل في أجراء خاص به  Edit()

وهاتنشئ دالة بسيطة  تستعلم عن كود الصنف   مثلا اسمها ( checkcode)
لو موجود  ترجع true   
لو غير موجود ترجع ب false

في زر الحفظ هايتم وضع التالي

كود :
  Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click

       If checkcode = True Then
           ' في حالة كود الصنف موجود
           Edit()
       Else
           ' في حالة كود الصنف غير موجود
           Save()

       End If

   End Sub

ونفس الفكرة للسؤال الثاني
هاتستخدم دالة ( checkcode)
للفاتورة 
بس طبعا هاتعدل جملة الاستعلام للفاتورة

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


RE: كيف اجعل زر الحفظ يقوم بعمل حفظ وتعديل فى نفس الوقت - princelovelorn - 18-02-19

(18-02-19, 11:00 PM)atef_020 كتب : اشكرك اخى الكريم ........ولكن كيف انشى استعلاما اذا كان كود الصنف موجود ام لا تحياتى لك ....

الحمد لله والشكر لله
استخدم الدالة التالية

كود :
Public Function CheckCode() As Boolean
       Dim sql = "select * from t1 where code ='" & (t4.text) & "'"

       Dim adp As New Sql.SQLDataAdapter(sql, con)
       Dim ds As New DataSet
       adp.Fill(ds)
       Dim dt = ds.Tables(0)
       If dt.Rows.Count = 0 Then
           MsgBox("الكود غير موجود")
           CheckCode = False
       Else
           MsgBox("الكود موجود")
           CheckCode = True
       End If

       Return CheckCode()
   End Function

تمنياتي لك بالتوفيق والنجاح



RE: كيف اجعل زر الحفظ يقوم بعمل حفظ وتعديل فى نفس الوقت - atef_020 - 19-02-19

(18-02-19, 11:20 PM)princelovelorn كتب :
(18-02-19, 11:00 PM)atef_020 كتب : اشكرك اخى الكريم ........ولكن كيف انشى استعلاما اذا كان كود الصنف موجود ام لا تحياتى لك ....

الحمد لله والشكر لله
استخدم الدالة التالية

كود :
Public Function CheckCode() As Boolean
       Dim sql = "select * from t1 where code ='" & (t4.text) & "'"

       Dim adp As New Sql.SQLDataAdapter(sql, con)
       Dim ds As New DataSet
       adp.Fill(ds)
       Dim dt = ds.Tables(0)
       If dt.Rows.Count = 0 Then
           MsgBox("الكود غير موجود")
           CheckCode = False
       Else
           MsgBox("الكود موجود")
           CheckCode = True
       End If

       Return CheckCode()
   End Function

تمنياتي لك بالتوفيق والنجاح

اشكرك اخى المحترم على الاهتمام الرد 
ولكن ظهرت الرسالة دى 
[attachment=20911]

وانا استخدمت كود الحفظ هذا 
PHP كود :
  Private Sub bsave_Click(ByVal sender As System.ObjectByVal e As System.EventArgsHandles bsave.Click


        If con
.State ConnectionState.Open Then con.Close()


 
       If T4.Text "" Then
            T6
.Text ""
 
           T2.Text ""
 
           T8.Text ""
 
           T3.Text ""
 
           TextBox7.Text ""
 
           ComboBox1.Text ""
 
       End If

 
       If Val(T7.Text) > Val(T8.TextThen
            MessageBox
.Show("سعر التكلفة أكبر من سعر البيع""رسالة تأكيد"MessageBoxButtons.OKMessageBoxIcon.Error)
 
           Exit Sub
        End 
If
 
       If Val(T7.Text) = Val(T8.TextThen
            MessageBox
.Show("سعر البيع يساوي سعر التكلفة""رسالة تأكيد"MessageBoxButtons.OKMessageBoxIcon.Error)
 
           Exit Sub
        End 
If
 
     
        If CheckCode
() = True Then
            
' في حالة كود الصنف موجود
            Edit()
        Else
            ' 
في حالة كود الصنف غير موجود
            Save
()

 
       End If


 
   End Sub 



RE: كيف اجعل زر الحفظ يقوم بعمل حفظ وتعديل فى نفس الوقت - boudyonline - 19-02-19

اخي الفاضل
راجع الكود المشار إليه في الخطأ

اسم Data set الذي اخترته هو ds1
ثم في جملة fill كتبت ds


RE: كيف اجعل زر الحفظ يقوم بعمل حفظ وتعديل فى نفس الوقت - atef_020 - 19-02-19

(19-02-19, 03:00 PM)boudyonline كتب : اخي الفاضل
راجع الكود المشار إليه في الخطأ

اسم Data set الذي اخترته هو ds1
ثم في جملة fill كتبت ds

نفس الخطاء اخى الكريم 
[attachment=20912]


RE: كيف اجعل زر الحفظ يقوم بعمل حفظ وتعديل فى نفس الوقت - asemshahen5 - 19-02-19

إستخدم داتا تابل بدل الداتا سيت مع مراعاة وضعه في مديول ليتم استخدامه في أكثر من فورم :

PHP كود :
   Public Function CheckCode(t1 As Stringcode As Stringt4 As String) As Boolean
        Dim dt 
As New DataTable
        Dim SqlStr 
As String "select * from " t1 " where " code " ='" t4 "'"
 
       If Con.State ConnectionState.Closed Then Con.Open()
 
       Dim adp As New SqlClient.SqlDataAdapter(SqlStrcon)
 
       adp.Fill(dt)
 
       If dt.Rows.Count 0 Then
            MsgBox
("الكود غير موجود")
 
           CheckCode False
        Else
            MsgBox
("الكود موجود")
 
           CheckCode True
        End 
If
 
       If Con.State ConnectionState.Open Then Con.Close()
 
       Return CheckCode
    End 
Function 



RE: كيف اجعل زر الحفظ يقوم بعمل حفظ وتعديل فى نفس الوقت - atef_020 - 20-02-19

(19-02-19, 06:15 PM)asemshahen5 كتب : إستخدم داتا تابل بدل الداتا سيت مع مراعاة وضعه في مديول ليتم استخدامه في أكثر من فورم :

PHP كود :
   Public Function CheckCode(t1 As Stringcode As Stringt4 As String) As Boolean
        Dim dt 
As New DataTable
        Dim SqlStr 
As String "select * from " t1 " where " code " ='" t4 "'"
 
       If Con.State ConnectionState.Closed Then Con.Open()
 
       Dim adp As New SqlClient.SqlDataAdapter(SqlStrcon)
 
       adp.Fill(dt)
 
       If dt.Rows.Count 0 Then
            MsgBox
("الكود غير موجود")
 
           CheckCode False
        Else
            MsgBox
("الكود موجود")
 
           CheckCode True
        End 
If
 
       If Con.State ConnectionState.Open Then Con.Close()
 
       Return CheckCode
    End 
Function 

اشكرك اخونا الكريم على الاهتمام والرد .......ولكن يوجد خطاء ويعطن هذه الرسالة 
PHP كود :
Argument not specified for parameter 'code' of 'Public Function CheckCode(t1 As String, code As String, t4 As String) As Boolean' 

(20-02-19, 11:20 AM)atef_020 كتب :
(19-02-19, 06:15 PM)asemshahen5 كتب : إستخدم داتا تابل بدل الداتا سيت مع مراعاة وضعه في مديول ليتم استخدامه في أكثر من فورم :

PHP كود :
   Public Function CheckCode(t1 As Stringcode As Stringt4 As String) As Boolean
        Dim dt 
As New DataTable
        Dim SqlStr 
As String "select * from " t1 " where " code " ='" t4 "'"
 
       If Con.State ConnectionState.Closed Then Con.Open()
 
       Dim adp As New SqlClient.SqlDataAdapter(SqlStrcon)
 
       adp.Fill(dt)
 
       If dt.Rows.Count 0 Then
            MsgBox
("الكود غير موجود")
 
           CheckCode False
        Else
            MsgBox
("الكود موجود")
 
           CheckCode True
        End 
If
 
       If Con.State ConnectionState.Open Then Con.Close()
 
       Return CheckCode
    End 
Function 

اشكرك اخونا الكريم على الاهتمام والرد .......ولكن يوجد خطاء ويعطن هذه الرسالة 
PHP كود :
Argument not specified for parameter 'code' of 'Public Function CheckCode(t1 As String, code As String, t4 As String) As Boolean' 

قمت بتعديل الكود والحمد لله شغال تمام
PHP كود :
Public Function CheckCode() As Boolean
        Dim dt 
As New DataTable
        Dim SqlSt 
As String "select * from  t1  where code='" T4.Text "'"
 
       If Con.State ConnectionState.Closed Then Con.Open()
 
       Dim adp As New OleDb.OleDbDataAdapter(SqlStcon)
 
       adp.Fill(dt)
 
       If dt.Rows.Count 0 Then
            MsgBox
("الكود غير موجود")
 
           CheckCode False
        Else
            MsgBox
("الكود موجود")
 
           CheckCode True
        End 
If
 
       If Con.State ConnectionState.Open Then Con.Close()
 
       Return CheckCode
    End 
Function 

ولكن اذا قمت بتعديل كود الصنف فى التعديل يعنى مثلا ادخلت صنف بكود 112 فعندما اضغط 112 بيظهر بيانات هذا الصنف فاذا غيرت هذا الكود من 112 الى 115 مثلا فاجد انة ادخل كود 115 ولم يلغى 112.. اريد عندما اعدل كود الصنف يقوم بمسح البيانات القديمة ......وتحياتى للجميع 


RE: كيف اجعل زر الحفظ يقوم بعمل حفظ وتعديل فى نفس الوقت - asemshahen5 - 20-02-19

أعتذر عن التأخر بالرد و لكن الخطأ بسيط ضع بدل t1 اسم الجدول و بدل code اسم العامود و بدل t4 القيمة المراد البحث عنها ليكون الكود كالتالي :

PHP كود :
CheckBox1.Checked CheckCode("t1""code"t4.text

فرغ الداتا سيت أو الداتاتيبل ليتم التعبئة بالمعلومات الجديدة .