السلام عليكم
اخواني الاعزائي اسعد الله يومكم بكل الخير
لدي مشكلة في ظهور اسم الصنف في اكثر من صنف
المفروض يظهر الصنف عند طلبه اكثر من مرة في سطر واخد !
والمشكلة الاخرى عند نزول القيمة الافتراضية للصنف 1
لا يقوم بالعملية الحسابية الا في اول سطر
وعند الضغط في الداتا جريد فيو يقوم بالعملية بالكامل !
للعلم أقوم بتنزيل الأصناف عن طريق مربع نص فقط ، وبالبحث عن طريق البار كود
فاتورة المبيعات عبارة عن جدول استعلام بين الاصناف وجدول الحركات المشترك وفيه فاتورة المبيعات
طلب اخير
اريد ادخال الاصناف بالاسم من تكست بوكس آخر وعند احتيار الصنف ينزل للداتا وبقيمة افتراضية 1
الصور في المرفقات
وبارك الله فيكم
بالنسبة لموضوع البحث صارتلي مشكلة
عندما اقوم بكتابة أول حرف من الصنف تتم اضافته للداتا
يعني مثلا ف == فول
مثلا مستقبلا سجلت عدة اصناف تحت مسمى حليب اطفال - حليب نيدو
ستحدث مشكلة في البحث !
لكن السؤال الاول القصد منه المفروض عند طلب صنف يظهر في سطر واحد وليس عدة اسطر !
مع اني غيرت خصائص الصنف في قاعدة البيانات وسويتله عدم تكرار
لكن ماتزال نفس المشكلة
ولا تزال لدي مشكلة عندما ينزل اول صنف يقوم بالعملية الحسابية ولكن في البقية يجب الضغط ع الداتا حتي يقوم بالعملية الحسابية
20-11-17, 09:20 PM (آخر تعديل لهذه المشاركة : 20-11-17, 09:24 PM {2} بواسطة ملهمـ.)
بارك الله فيمن اجاب
لكن لا تزال لدي نفس المشكلة
يقوم بالعملية الحسابية في اول سطر فقط وعند الضغط داخل الداتا يقوم بالعملية كاملة
ومشكلة اسم الصنف لا يكون في نفس السطر وانما في سطر جديد
كود العملية الحسابية مرفق وتم وضعه في sub ووضعه في الفورم لود وفي الداتا جريد
الرجاء حل المشكلة
اخي سندباد وجدت حل لمشكلة الاصناف في احد المواضيع ووجدت كود لجعل نفس اسم الصنف يكون في سطر واحد
ولكن عند طلب الصنف يظهر 0 ويجب طلبه مرة اخرى حتي يقوم بالتحديث ويعطيك رقم 1 أريد ان ينزل الصنف عند طلبه من اول مرة رقم "1"
المشكلة الثانية التي لدي الان هي العملية الحسابية
اول سطر تحدث فيه العملية الحسابية
وفي الاسطر الاخرى العملية الحسابية لا تعمل بل يجب الضغط على كل سطر حتى تحدث
وللعلم العملية الحسابية موجودة في حدث الفورم والسيل اند ايديت للداتا
المشكلة الان في العملية الحسابية
22-11-17, 02:55 AM (آخر تعديل لهذه المشاركة : 22-11-17, 02:58 AM {2} بواسطة ملهمـ.)
كود العملية الحسابية لفاتورة مبيعات
لكن الكود لا يعمل الا عند الضغط على الداتا جريد فيو
اريد ان اجعل الكود يقوم بالعملية الحسابية عند نزول الاصناف بدون الضغط داخل الداتا جريد فيو
Public Sub Salecalc()
Try
'اجمالي البيع
'total = qty*price
DataGridView1(7, DataGridView1.CurrentRow.Index).Value = Val(DataGridView1(6, DataGridView1.CurrentRow.Index).Value) * Val(DataGridView1(2, DataGridView1.CurrentRow.Index).Value)
'اجمالي الربح
'totalb = total - (total * Qty)
DataGridView1(9, DataGridView1.CurrentRow.Index).Value = Val(DataGridView1(7, DataGridView1.CurrentRow.Index).Value) - (Val(DataGridView1(7, DataGridView1.CurrentRow.Index).Value) * (Val(DataGridView1(8, DataGridView1.CurrentRow.Index).Value) / 100))
'اجمالي الشراء
DataGridView1(11, DataGridView1.CurrentRow.Index).Value = Val(DataGridView1(10, DataGridView1.CurrentRow.Index).Value) * DataGridView1(6, DataGridView1.CurrentRow.Index).Value
' الأرباح
' earn = total - totalb
DataGridView1(12, DataGridView1.CurrentRow.Index).Value = Val(DataGridView1(9, DataGridView1.CurrentRow.Index).Value) - DataGridView1(11, DataGridView1.CurrentRow.Index).Value
Dim total, totalb, count, earn As Double
For i As Integer = 0 To DataGridView1.Rows.Count - 1
total = total + Val(DataGridView1(9, DataGridView1.Rows(i).Index).Value)
totalb = totalb + Val(DataGridView1(11, DataGridView1.Rows(i).Index).Value)
count = DataGridView1.Rows.Count
earn = total - totalb
'percent = (1 - (totalb / total)) * 100
Next
SaleTotal.Text = total
'SaleTotalS.Text = totalb
SaleItemCount.Text = count
SaleEarn.Text = earn
'SaleMines.Text = Math.Round(percent, 2)
Catch ex As Exception
End Try
==============
المشكلة الاخرى في كود البحث
عند البحث على نفس الصنف في نفس الفاتورة يقوم بوضعه في سطر اخر ولا يقوم بجمعه في سطر واحد
وعند طلب صنف معين يقوم بوضع قيمة 0 للصنف وعند الطلب مرة اخرى تنزل القيمة 1 ولا يقوم بالعملية الحسابية الا عند تحرير الداتا جريد
أريد جعل القيمة بدل الصفر تنزل رقم 1
Using dp As New OleDb.OleDbDataAdapter("SELECT * FROM [Items] WHERE [ItemBarCode] = @Code", con)
dp.SelectCommand.Parameters.AddWithValue("@Code", TxtSearch.Text)
Dim dt_itm As New DataTable
If dp.Fill(dt_itm) > 0 Then
Dim r As DataRow = dt_itm.Rows(0)
DataGridView1.ClearSelection()
Dim dgvRow As DataGridViewRow = (From x In Me.DataGridView1.Rows Where x.Cells(0).Value = r("ItemBarCode")).SingleOrDefault
If IsNothing(dgvRow) Then