منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[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=47714)



مشكلة في كود حفظ الفاتورة - senussi_gtR - 29-12-23

السلام عليكم

بعد مشاهدة دروس الأستاذ / خالد السعداني بارك الله فيه على شرح الواضح وتعلمة من الكثير
حولة بناء برنامج بنفس الفكر لكن الكود يحفظ بيانات في جدول فاتورة وتافصيلها يظهر تحويل نوع بيانات من
stringالىinteger حاولة فيها وعدلة كود ولم اصل الي حل  هل ممكن احد يفيدني بالحل وشرحه
وعندي استفسار هل يمكن اضافة حلقة for  بحيث تعدل بيانات الكمية في جدول مستودع
استحدم في vb.net 2019 للبرمجة و قاعدة بيانات Access
شكرا للجميع

PHP كود :
Try
 
           Dim strInsert As String "Insert Into Invoiceout (Invoicen, det)
                                                 values (@Invoicen, @det)"

 
           Dim cmd As New OleDb.OleDbCommand(strInsertcn)
 
           cmd.Parameters.Add(New OleDb.OleDbParameter("@Invoicen"OleDb.OleDbType.VarChar)).Value TB0.Text
            cmd
.Parameters.Add(New OleDb.OleDbParameter("@det"OleDb.OleDbType.Date)).Value DTiicker2.Value.Date

            cmd
.ExecuteNonQuery()
 
           ' رقم فاتور
            cmd = New OleDb.OleDbCommand("select max(Invoiceb) from Invoiceout", cn)
            Dim dr As OleDb.OleDbDataReader = cmd.ExecuteReader
            dr.Read()
            Dim ID_Order As Integer = dr(0)
            dr.Close()
            '
Add Order Details
            Dim Pro
rfncomtypexpxxxnto As Integer
            Dim Qty 
As Double
            
'تفصيل الفاتورة
            strInsert = "insert into outgoing (invoicee,rfna,product,quantity,company,type,expired,uoxx,notes) 
                                  VALUES (@invoicee,@rfna,@product,@quantity,@company,@type,@expired,@uoxx,@notes)"
            For i As Integer = 0 To DGV1.RowCount - 1
                rfn = DGV1.Rows(i).Cells(1).Value
                Pro = DGV1.Rows(i).Cells(2).Value
                com = DGV1.Rows(i).Cells(3).Value
                xxx = DGV1.Rows(i).Cells(4).Value
                Qty = DGV1.Rows(i).Cells(5).Value
                typ = DGV1.Rows(i).Cells(6).Value
                exp = DGV1.Rows(i).Cells(7).Value
                nto = DGV1.Rows(i).Cells(8).Value

                cmd = New OleDb.OleDbCommand(strInsert, cn)
                cmd.Parameters.Add(New OleDb.OleDbParameter("@invoicee", OleDb.OleDbType.Integer)).Value = ID_Order
                cmd.Parameters.Add(New OleDb.OleDbParameter("@rfna", OleDb.OleDbType.Integer)).Value = rfn
                cmd.Parameters.Add(New OleDb.OleDbParameter("@product", OleDb.OleDbType.Integer)).Value = Pro
                cmd.Parameters.Add(New OleDb.OleDbParameter("@quantity", OleDb.OleDbType.Integer)).Value = Qty
                cmd.Parameters.Add(New OleDb.OleDbParameter("@company", OleDb.OleDbType.VarChar)).Value = com
                cmd.Parameters.Add(New OleDb.OleDbParameter("@expired", OleDb.OleDbType.Date)).Value = exp
                cmd.Parameters.Add(New OleDb.OleDbParameter("@type", OleDb.OleDbType.Integer)).Value = typ
                cmd.Parameters.Add(New OleDb.OleDbParameter("@uoxx", OleDb.OleDbType.Integer)).Value = xxx
                cmd.Parameters.Add(New OleDb.OleDbParameter("@notes", OleDb.OleDbType.Integer)).Value = nto
                cmd.ExecuteNonQuery()
            Next
            MsgBox("تمت الإضافة بنجاح", MsgBoxStyle.Information, "الإضاقة")
        Catch ex As Exception
            MsgBox("Error: " & ex.Message, MsgBoxStyle.Critical)
        End Try 



RE: مشكلة في كود حفظ الفاتورة - تركي الحلواني - 31-12-23

(29-12-23, 04:32 PM)senussi_gtR كتب :
السلام عليكم

بعد مشاهدة دروس الأستاذ / خالد السعداني بارك الله فيه على شرح الواضح وتعلمة من الكثير
حولة بناء برنامج بنفس الفكر لكن الكود يحفظ بيانات في جدول فاتورة وتافصيلها يظهر تحويل نوع بيانات من
stringالىinteger حاولة فيها وعدلة كود ولم اصل الي حل  هل ممكن احد يفيدني بالحل وشرحه
وعندي استفسار هل يمكن اضافة حلقة for  بحيث تعدل بيانات الكمية في جدول مستودع
استحدم في vb.net 2019 للبرمجة و قاعدة بيانات Access
شكرا للجميع

PHP كود :
Try
 
           Dim strInsert As String "Insert Into Invoiceout (Invoicen, det)
                                                 values (@Invoicen, @det)"

 
           Dim cmd As New OleDb.OleDbCommand(strInsertcn)
 
           cmd.Parameters.Add(New OleDb.OleDbParameter("@Invoicen"OleDb.OleDbType.VarChar)).Value TB0.Text
            cmd
.Parameters.Add(New OleDb.OleDbParameter("@det"OleDb.OleDbType.Date)).Value DTiicker2.Value.Date

            cmd
.ExecuteNonQuery()
 
           ' رقم فاتور
            cmd = New OleDb.OleDbCommand("select max(Invoiceb) from Invoiceout", cn)
            Dim dr As OleDb.OleDbDataReader = cmd.ExecuteReader
            dr.Read()
            Dim ID_Order As Integer = dr(0)
            dr.Close()
            '
Add Order Details
            Dim Pro
rfncomtypexpxxxnto As Integer
            Dim Qty 
As Double
            
'تفصيل الفاتورة
            strInsert = "insert into outgoing (invoicee,rfna,product,quantity,company,type,expired,uoxx,notes) 
                                  VALUES (@invoicee,@rfna,@product,@quantity,@company,@type,@expired,@uoxx,@notes)"
            For i As Integer = 0 To DGV1.RowCount - 1
                rfn = DGV1.Rows(i).Cells(1).Value
                Pro = DGV1.Rows(i).Cells(2).Value
                com = DGV1.Rows(i).Cells(3).Value
                xxx = DGV1.Rows(i).Cells(4).Value
                Qty = DGV1.Rows(i).Cells(5).Value
                typ = DGV1.Rows(i).Cells(6).Value
                exp = DGV1.Rows(i).Cells(7).Value
                nto = DGV1.Rows(i).Cells(8).Value

                cmd = New OleDb.OleDbCommand(strInsert, cn)
                cmd.Parameters.Add(New OleDb.OleDbParameter("@invoicee", OleDb.OleDbType.Integer)).Value = ID_Order
                cmd.Parameters.Add(New OleDb.OleDbParameter("@rfna", OleDb.OleDbType.Integer)).Value = rfn
                cmd.Parameters.Add(New OleDb.OleDbParameter("@product", OleDb.OleDbType.Integer)).Value = Pro
                cmd.Parameters.Add(New OleDb.OleDbParameter("@quantity", OleDb.OleDbType.Integer)).Value = Qty
                cmd.Parameters.Add(New OleDb.OleDbParameter("@company", OleDb.OleDbType.VarChar)).Value = com
                cmd.Parameters.Add(New OleDb.OleDbParameter("@expired", OleDb.OleDbType.Date)).Value = exp
                cmd.Parameters.Add(New OleDb.OleDbParameter("@type", OleDb.OleDbType.Integer)).Value = typ
                cmd.Parameters.Add(New OleDb.OleDbParameter("@uoxx", OleDb.OleDbType.Integer)).Value = xxx
                cmd.Parameters.Add(New OleDb.OleDbParameter("@notes", OleDb.OleDbType.Integer)).Value = nto
                cmd.ExecuteNonQuery()
            Next
            MsgBox("تمت الإضافة بنجاح", MsgBoxStyle.Information, "الإضاقة")
        Catch ex As Exception
            MsgBox("Error: " & ex.Message, MsgBoxStyle.Critical)
        End Try 

تفضل التعديل


RE: مشكلة في كود حفظ الفاتورة - senussi_gtR - 31-12-23

شكرا وبارك الله فيك اخي العزيز