كم أنت كبير أخي سعود
تعجز الكلمات وتتوارى الحروف ويخجل القلم ان يقف هذا الموقف,
فقد تخونه العبارات وتتشتت الجمل ويضيع المعنى ,ولا يصل الهدف ,
أشكرك لأنك أجتهدت لترد على سائل وتساعده
ولكنى لم استطيع فتح المشروع اعتقد انه تم تنفيذه بإصدار أعلى مما انا عليه
فانا اعمل على إصدار 2010
عموما أبشرك أخي فلقد وفقنى الله للوصول إلى الحل الصحيح
فكما تفضلت حضرتك في المثال الخاص بك
ان يتم البيع ويتم بعدها تحديث قاعدة البيانات بخصم الكميات المباعة من الكميات الموجود
-----
كان من السهل أن يتم هذا الإجراء بالنسبة إلى في حالة ما إذا كان المباع صنفا واحدا بهذا الكود
طيب إذا كان المباع أكثر من صنف ( أصناف مختلفة بكميات مختلفة )
قمت بإنشاء إجراء مخزن في الاكسيس كالاتى
قمت بكتابة الكود ووضعته في حلقة For ... next
ليصبح بهذا الشكل
esanf = جدول الأصناف في قاعدة البيانات
enum = حقل الكمية الموجود في جدول الاصناف وهو بيت القصيد
sanf = اسم الصنف المباع ويتم التطابق عليه من الداتا جريد فيو
MyMod.Me_SqlExecute = إجراء مخزن في مديول
وهو
عذرا للإطالة ......
واشكرك جدا
تعجز الكلمات وتتوارى الحروف ويخجل القلم ان يقف هذا الموقف,
فقد تخونه العبارات وتتشتت الجمل ويضيع المعنى ,ولا يصل الهدف ,
أشكرك لأنك أجتهدت لترد على سائل وتساعده
ولكنى لم استطيع فتح المشروع اعتقد انه تم تنفيذه بإصدار أعلى مما انا عليه
فانا اعمل على إصدار 2010
عموما أبشرك أخي فلقد وفقنى الله للوصول إلى الحل الصحيح
فكما تفضلت حضرتك في المثال الخاص بك
ان يتم البيع ويتم بعدها تحديث قاعدة البيانات بخصم الكميات المباعة من الكميات الموجود
-----
كان من السهل أن يتم هذا الإجراء بالنسبة إلى في حالة ما إذا كان المباع صنفا واحدا بهذا الكود
كود :
UPDATE kotob SET mojod = mojod - [?] WHERE (((tid = [?])))طيب إذا كان المباع أكثر من صنف ( أصناف مختلفة بكميات مختلفة )
قمت بإنشاء إجراء مخزن في الاكسيس كالاتى
قمت بكتابة الكود ووضعته في حلقة For ... next
ليصبح بهذا الشكل
كود :
For I As Integer = 0 To Me.dgv.Rows.Count - 1
Dim ecode As Int32 = CInt(Me.dgv.Rows(I).Cells(0).Value) 'تخزين الآي دي الخاص بالمادة
'جلب الكمية الحالية للمادة المحددة
Dim DsNowQ As New DataSet
MyMod.Me_DSFillText(DsNowQ, "Select enum From esanf where ecode=" & ecode & "", "esanf")
Dim NowQ As Double = CDbl(DsNowQ.Tables(0).Rows(0).Item(0))
Dim GridQ As Double = CDbl(Me.dgv.Rows(I).Cells(3).Value)
Dim NewQ As Double
NewQ = NowQ - GridQ
'البدء بعملية التعديل لجميع الأصناف بعاليه
MyMod.Me_SqlExecute("Update esanf Set enum =" & NewQ & " Where ecode= " & ecode & "", False)
Nextenum = حقل الكمية الموجود في جدول الاصناف وهو بيت القصيد
sanf = اسم الصنف المباع ويتم التطابق عليه من الداتا جريد فيو
MyMod.Me_SqlExecute = إجراء مخزن في مديول
وهو
كود :
If MsgState = True Then
If MsgBox(Msg, MyMod.Me_MsgQuestion, MyMod.Me_MsgCaption) = vbYes Then
Dim Cmd As New OleDbCommand(SqlStr, MyMod.Conn)
Cmd.CommandType = CommandType.Text
If MyMod.Conn.State = ConnectionState.Open Then MyMod.Conn.Close()
Conn.Open()
Cmd.ExecuteNonQuery()
MyMod.Conn.Close()
Cmd.Dispose()
End If
Return True
Else
Dim Cmd As New OleDbCommand(SqlStr, MyMod.Conn)
Cmd.CommandType = CommandType.Text
If MyMod.Conn.State = ConnectionState.Open Then MyMod.Conn.Close()
Conn.Open()
Cmd.ExecuteNonQuery()
MyMod.Conn.Close()
Cmd.Dispose()
End If
Return Trueعذرا للإطالة ......
واشكرك جدا
