منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[VB.NET] شباب الفزعة من فضلكم الكود سابقا شغال من يومين والحين مايشتغل - نسخة قابلة للطباعة

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



شباب الفزعة من فضلكم الكود سابقا شغال من يومين والحين مايشتغل - 0theghost0 - 10-09-17

كود التنقيص

كود :
Using conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
           conn.Open()
           For Each row As DataGridViewRow In DataGridView1.Rows
               If row.Cells(0).Value Is Nothing Then Exit For
               Using cmd As New OleDbCommand("UPDATE Equpment SET [Equ_Qantity]=[Equ_Qantity] -1 WHERE Equ_ID=@Equ_ID", conn)
                   cmd.Parameters.AddWithValue("@Equ_Qantity", row.Cells(2).Value.ToString)
                   cmd.ExecuteNonQuery()
               End Using
           Next
           conn.Close()
       End Using
من يومين شغال والحين مادري ويش فيه ما يشتغل

اين الخلل واذا ارتم ارسال لكم المثال راح ارسله ليكم


RE: شباب الفزعة من فضلكم الكود سابقا شغال من يومين والحين مايشتغل - أبو نوره - 10-09-17

مرحبا اخى

PHP كود :
Using conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
           
conn.Open()
           For 
Each row As DataGridViewRow In DataGridView1.Rows
               
If row.Cells(0).Value Is Nothing Then Exit For
               
Using cmd As New OleDbCommand("UPDATE [Equpment] SET [Equ_Qantity]=[Equ_Qantity] - @Equ_Qantity WHERE [Equ_ID]=@Equ_ID"conn)
                   
cmd.Parameters.AddWithValue("@Equ_Qantity"val(row.Cells(2).Value) )
                   
cmd.Parameters.AddWithValue("@Equ_ID"val(row.Cells(0).Value) )
                   
cmd.ExecuteNonQuery()
               
End Using
           Next
           conn
.Close()
       
End Using 



RE: شباب الفزعة من فضلكم الكود سابقا شغال من يومين والحين مايشتغل - 0theghost0 - 10-09-17

عندي خلل بسيط في كود بعد الترجيع :

عندما اقوم بعملية الحفظ يتم الحفظ لكن العدد المرجع لايتم اضافته :

الكود :
كود :
Using conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")

           conn.Open()
           For Each itm As ListViewItem In ListView1.Items
               If itm.SubItems(0).Text Is Nothing Then Exit For
               Using cmd As New OleDbCommand("UPDATE Equpment SET [Equ_Qantity]=[Equ_Qantity] +1 WHERE Equ_ID=@Equ_ID", conn)
                   cmd.Parameters.AddWithValue("@Equ_Qantity", itm.SubItems(2).Text.ToString)
                   cmd.ExecuteNonQuery()
               End Using
           Next
           conn.Close()
       End Using
كود الحفظ للترجيع :
كود :
Using conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")
           conn.Open()
           Dim sql As String =
                   "INSERT INTO [Return]" &
                   "( Cus_Balance, Cus_Name, Cus_Private_Number, Cus_Address, Cus_Car, Cus_Telephone_Number, Equ_Name, Equ_Qantity, Equ_Price, Rent_Date, Ret_Date )" &
                   "VALUES" &
                   "( @Cus_Balance, @Cus_Name, @Cus_Private_Number, @Cus_Address, @Cus_Car, @Cus_Telephone_Number, @Equ_Name, @Equ_Qantity, @Equ_Price, @Rent_Date, @Ret_Date )"
           Using cmd As New OleDbCommand(sql, conn)
               For Each itm As ListViewItem In ListView1.Items
                   cmd.Parameters.Clear()
                   cmd.Parameters.AddWithValue("@Cus_Balance", ComboBox1.Text.ToString)
                   cmd.Parameters.AddWithValue("@Cus_Name", TextBox1.Text.ToString)
                   cmd.Parameters.AddWithValue("@Cus_Private_Number", TextBox2.Text.ToString)
                   cmd.Parameters.AddWithValue("@Cus_Address", TextBox3.Text.ToString)
                   cmd.Parameters.AddWithValue("@Cus_Car", TextBox4.Text.ToString)
                   cmd.Parameters.AddWithValue("@Cus_Telephone_Number", TextBox5.Text.ToString)
                   cmd.Parameters.AddWithValue("@Equ_Name", itm.SubItems(0).Text)
                   cmd.Parameters.AddWithValue("@Equ_Qantity", itm.SubItems(1).Text)
                   cmd.Parameters.AddWithValue("@Equ_Price", TextBox6.Text.ToString)
                   cmd.Parameters.AddWithValue("@Rent_Date", itm.SubItems(2).Text)
                   cmd.Parameters.AddWithValue("@Ret_Date", DateTimePicker1.Value.ToString)
                   cmd.ExecuteNonQuery()
               Next
           End Using
           conn.Close()
       End Using
       SumCount()
       MessageBox.Show("We have been successfully Date", "Congratulations", MessageBoxButtons.OK, MessageBoxIcon.Information)
الرجاء اخباري اين الخطأ


RE: شباب الفزعة من فضلكم الكود سابقا شغال من يومين والحين مايشتغل - أبو نوره - 10-09-17

مرحبا اخى

اعتقد ان ما تخصم من المخزون مباشره


RE: شباب الفزعة من فضلكم الكود سابقا شغال من يومين والحين مايشتغل - 0theghost0 - 10-09-17

هذا مو حق خصم هذا بعد الخصم اريد الترجيع المفروض اذا كان المنتج 100 حبة وتم استئجار حبة واحدة يحصل 99 حبة المتبقية
وبعد الترجيع يرجع حبة فيكون عدد المنتج المتوفر 100

العملية تكون :
اثناء الخصم
100-1 = 99
اثناء الترجيع
1+99=100

وهكذا


RE: شباب الفزعة من فضلكم الكود سابقا شغال من يومين والحين مايشتغل - ممدوح الخطيب - 11-09-17

أخي العزيز أرسل مثال أفضل للتعديل علية وتوضيح المشكلة والحل


RE: شباب الفزعة من فضلكم الكود سابقا شغال من يومين والحين مايشتغل - 0theghost0 - 11-09-17

تم رفع المثال اخي الفاضل مثل ماطلبت


RE: شباب الفزعة من فضلكم الكود سابقا شغال من يومين والحين مايشتغل - ممدوح الخطيب - 11-09-17

أعتقد المشكلة لعدم الحفظ الكميات بعد التعديل انك بتعمل التعديل بناءا على رقم المعدة وهو غير موجود باللست فيو
PHP كود :
Sub SumCount()
        
Using conn As New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\Database1.accdb;Persist Security Info=False;")

            
conn.Open()
            For 
Each itm As ListViewItem In ListView1.Items
                
If itm.SubItems(0).Text Is Nothing Then Exit For
                
Using cmd As New OleDbCommand("UPDATE Equpment SET [Equ_Qantity]=[Equ_Qantity] +1 WHERE Equ_name=@Equ_ID"conn)
                    
cmd.Parameters.AddWithValue("@Equ_Qantity"itm.SubItems(0).Text.ToString)
                    
cmd.ExecuteNonQuery()
                
End Using
            Next
            conn
.Close()
        
End Using
    End Sub 



RE: شباب الفزعة من فضلكم الكود سابقا شغال من يومين والحين مايشتغل - 0theghost0 - 11-09-17

اخي الفاضل

لقد قام بالترجيع بشكل جيد ولكن هناك خطأ بسيط

الزبون قد استأجر 20 حبة لماذا يقم بإضافة حبة واحدة والكمية المتوفرة هي 100 فيكون 101 بدل مايكون 120 حبة ؟؟


RE: شباب الفزعة من فضلكم الكود سابقا شغال من يومين والحين مايشتغل - 0theghost0 - 15-09-17

لحد الأن اقوم بالبحث ولم اوصل للحل