تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
ممكن حل للمشكلة هدي
#1
السلام عليكم
عند التعديل علي فورم الاصناف تظهر معاي هدي الريسالة ياريت حل للمشكلة




كود التعديل

PHP كود :
Private Sub BtnEdit_Click(sender As ObjectAs EventArgsHandles BtnEdit.Click
        Update_Items
(ItemID.TextItemBarcode.TextItemName.TextItemGroup.TextItemCompany.TextItemPlace.TextItemPrice.TextItemQty.TextItemLimit.TextItemMaxDiscound.TextItemEran.TextItemDate.ValueItemTime.ValueItemUser.Text)
 
       Load_Items()
 
   End Sub 

كود التعديل 2
PHP كود :
Public Sub Update_Items(ByVal ItemID AS LongByVal ItemBarcode AS String,ByVal ItemName AS String,ByVal ItemGroup AS String,ByVal ItemCompany AS String,ByVal ItemPlace AS String,ByVal ItemPrice AS DecimalByVal itemQty As DecimalByVal ItemLimit As DecimalByVal ItemMaxDiscound As DecimalByVal ItemEran As Decimal,ByVal ItemDate AS DateTime,ByVal ItemTime AS DateTime,ByVal ItemUser AS String)
 
     Dim Cmd As New OledbCommand
With Cmd
.Connection Con
.CommandType CommandType.Text
            
.CommandText "Update Items Set ItemID = @ItemID,ItemBarcode = @ItemBarcode,ItemName = @ItemName,ItemGroup = @ItemGroup,ItemCompany = @ItemCompany,ItemPlace = @ItemPlace,ItemPrice = @ItemPrice,ItemQty = @ItemQty,ItemLimit = @ItemLimit,ItemMaxDiscound = @ItemMaxDiscound,ItemEran = @ItemEran,ItemDate = @ItemDate,ItemTime = @ItemTime,ItemUser = @ItemUser"
 
           .Parameters.AddWithValue("@ItemID"OleDbType.Integer ).Value ItemID
.Parameters.AddWithValue("@ItemBarcode"OleDbType.VarWChar ).Value ItemBarcode
.Parameters.AddWithValue("@ItemName"OleDbType.VarWChar ).Value ItemName
.Parameters.AddWithValue("@ItemGroup"OleDbType.VarWChar ).Value ItemGroup
.Parameters.AddWithValue("@ItemCompany"OleDbType.VarWChar ).Value ItemCompany
.Parameters.AddWithValue("@ItemPlace"OleDbType.VarWChar ).Value ItemPlace
.Parameters.AddWithValue("@ItemPrice"OleDbType.Double ).Value ItemPrice
.Parameters.AddWithValue("@ItemQty"OleDbType.Double ).Value ItemQty
.Parameters.AddWithValue("@ItemLimit"OleDbType.Double ).Value ItemLimit
.Parameters.AddWithValue("@ItemMaxDiscound"OleDbType.Double ).Value ItemMaxDiscound
.Parameters.AddWithValue("@ItemEran"OleDbType.Double ).Value ItemEran
.Parameters.AddWithValue("@ItemDate"OleDbType.Date ).Value ItemDate
.Parameters.AddWithValue("@ItemTime"OleDbType.Date ).Value ItemTime
.Parameters.AddWithValue("@ItemUser"OleDbType.VarWChar ).Value ItemUser

End With
If Con.State 1 Then Con.Close()
Con.Open()
Cmd.ExecuteNonQuery()
Con.Close()
MsgBox("تم تعديل السجل بنجاح"MsgBoxStyle.Information"تعديل")
Cmd Nothing
End Sub 
الرد }}}
تم الشكر بواسطة:
#2
السلام عليكم ورحمة الله وبركاته
احي الكريم 
انت لم تضع حقل الشرط الذي سيتم بموجبه اختيار السجل لتعديله وهو هنا   ItemID  
الامر الاخر في جملة التعديل نضع كل الحقول التي سيتم التعديل عليها اولا ثم حقل الشرط في النهاية
تفضل التعديل
كود :
 Public Sub Update_Items(ByVal ItemBarcode As String, ByVal ItemName As String, ByVal ItemGroup As String, ByVal ItemCompany As String, ByVal ItemPlace As String, ByVal ItemPrice As Decimal, ByVal itemQty As Decimal, ByVal ItemLimit As Decimal, ByVal ItemMaxDiscound As Decimal, ByVal ItemEran As Decimal, ByVal ItemDate As DateTime, ByVal ItemTime As DateTime, ByVal ItemUser As String, ByVal ItemID As Integer)
       Dim Cmd As New OledbCommand
       With Cmd
           .Connection = Con
           .CommandType = CommandType.Text
           .CommandText = "Update Items Set ItemBarcode = @ItemBarcode,ItemName = @ItemName,ItemGroup = @ItemGroup,ItemCompany = @ItemCompany,ItemPlace = @ItemPlace,ItemPrice = @ItemPrice,ItemQty = @ItemQty,ItemLimit = @ItemLimit,ItemMaxDiscound = @ItemMaxDiscound,ItemEran = @ItemEran,ItemDate = @ItemDate,ItemTime = @ItemTime,ItemUser = @ItemUser Where ItemID = @ItemID"

           .Parameters.AddWithValue("@ItemBarcode", OleDbType.VarWChar).Value = ItemBarcode
           .Parameters.AddWithValue("@ItemName", OleDbType.VarWChar).Value = ItemName
           .Parameters.AddWithValue("@ItemGroup", OleDbType.VarWChar).Value = ItemGroup
           .Parameters.AddWithValue("@ItemCompany", OleDbType.VarWChar).Value = ItemCompany
           .Parameters.AddWithValue("@ItemPlace", OleDbType.VarWChar).Value = ItemPlace
           .Parameters.AddWithValue("@ItemPrice", OleDbType.Double).Value = ItemPrice
           .Parameters.AddWithValue("@ItemQty", OleDbType.Double).Value = itemQty
           .Parameters.AddWithValue("@ItemLimit", OleDbType.Double).Value = ItemLimit
           .Parameters.AddWithValue("@ItemMaxDiscound", OleDbType.Double).Value = ItemMaxDiscound
           .Parameters.AddWithValue("@ItemEran", OleDbType.Double).Value = ItemEran
           .Parameters.AddWithValue("@ItemDate", OleDbType.Date).Value = ItemDate
           .Parameters.AddWithValue("@ItemTime", OleDbType.Date).Value = ItemTime
           .Parameters.AddWithValue("@ItemUser", OleDbType.VarWChar).Value = ItemUser
           .Parameters.AddWithValue("@ItemID", OleDbType.Integer).Value = ItemID

       End With
       If Con.State = 1 Then Con.Close()
       Con.Open()
       Cmd.ExecuteNonQuery()
       Con.Close()
       MsgBox("تم تعديل السجل بنجاح", MsgBoxStyle.Information, "تعديل")
       Cmd = Nothing
   End Sub

 تعديل كود الزر

كود :
Private Sub BtnEdit_Click(sender As Object, e As EventArgs) Handles BtnEdit.Click
       Update_Items(ItemBarcode.Text, ItemName.Text, ItemGroup.Text, ItemCompany.Text, ItemPlace.Text, Convert.ToDecimal(ItemPrice.Text), Convert.ToDecimal(ItemQty.Text), Convert.ToDecimal(ItemLimit.Text), Convert.ToDecimal(ItemMaxDiscound.Text), Convert.ToDecimal(ItemEran.Text), ItemDate.Value, ItemTime.Value, ItemUser.Text, Convert.ToInt32(ItemID.Text))
       Load_Items()
   End Sub

ملاحظة : كان لديك اختلاف ايضا في نوع حقل الاي دي حيث تم تعريفه في سطر اسم تعريف الصب من نوع long  وفي الباراميتر integer  تم تعديله عدله في قاعدة البيانات ليتوافق ايضا

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







الرد }}}
تم الشكر بواسطة: ابو روضة
#3
جزاك الله خيرا تم جل المشكلة وربي يعطيك مزيدا من العلم والتقدم سلمت يداك
الرد }}}
تم الشكر بواسطة: ابو روضة , ابراهيم ايبو
#4
الحمد لله والشكر لله
ولك اخي الكريم
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد }}}
تم الشكر بواسطة:



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


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