كيف اجعل زر الحفظ يقوم بعمل حفظ وتعديل فى نفس الوقت - 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(strqury, con) 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.Object, ByVal e As System.EventArgs) Handles 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.Text) Then MessageBox.Show("سعر التكلفة أكبر من سعر البيع", "رسالة تأكيد", MessageBoxButtons.OK, MessageBoxIcon.Error) Exit Sub End If If Val(T7.Text) = Val(T8.Text) Then MessageBox.Show("سعر البيع يساوي سعر التكلفة", "رسالة تأكيد", MessageBoxButtons.OK, MessageBoxIcon.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 String, code As String, t4 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(SqlStr, con) 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 String, code As String, t4 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(SqlStr, con) 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 String, code As String, t4 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(SqlStr, con) 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(SqlSt, con) 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)
فرغ الداتا سيت أو الداتاتيبل ليتم التعبئة بالمعلومات الجديدة .
|