السيد الفاضل
هناد داتا جريد بها الاصناف كالتالي
الصنف العدد
5 A
6 b
3 A
2 A
8 B
يكون العرض بالجريد الثاني هو
10 A
14 B
dim sum as integer
for i=1 to datagridview1.row.count-1
ما الكود اللي ناقص
ممكن اجمع صنف لكن كيف اخليه يجمع كل الاصناف
next
قم بعمل إستعلام وإستخدم Group By الصنف -------------- وعبارة SUM في حقل العدد -----> (العدد)SUM
أو إستخدم تقنية LINQ
انت لم تذكر اسم الجدول ولا اسماء الاعمدة ولكن
استخدم الكود التالى فى الاستعلام لعل تكون مبسط معك
كود :
Select SUM(NAME3DD), NAME2, NAME3 FROM NAMETABLE GROUP BY NAME4
فكل ما عليك عمله هو تغيير مسميات كلاً من
NAME3DD = اسم عمود العدد
NAME2, NAME3 = اسماء باقي الاعمدة
NAME4 = وهو اسم عمود الصنف
يارب الشرح يكون مبسط
بالتوفيق
حضراتكم البيانات معروضة في جريد وهي اصناف فاتورة الهدف هو عمل تجميع لكل صنف وعرض البيانات في جريد اخري اي .ليس هناك استعلام لكي اعمل له جروب اتمني ان اكون عرضت المشكلة بشكل سليم
طيب أخي لماذا لا تضع الكود الذي تستخدمة وأسماء الحقول في الـ DataGridView لكي نعطيك الحل !!!!
لماذا تنتظر أن نخترع لك أسماء جديدة وكود جديد ...
بسط الموضوع من البداية ......
بسط الموضوع ......
حضرتك انا حبيتاوفر الوقت لخضراتكم. لكن الاعمدة هي
Id .,group , name ,qty , prc , total
ذود المجموعة الصنف كمية. سعر قيمة
شكرا لكم
(15-05-18, 12:29 AM)atefkhalf2004 كتب : [ -> ]حضراتكم البيانات معروضة في جريد وهي اصناف فاتورة الهدف هو عمل تجميع لكل صنف وعرض البيانات في جريد اخري اي .ليس هناك استعلام لكي اعمل له جروب اتمني ان اكون عرضت المشكلة بشكل سليم
طالما أن البيانات معروضة لابد أن لها مصدر
و يمكنك أن تقوم بعمل الاستعلام على المصدر
او اذا تعذر ذلك فيمكنك أن تقوم بالتجميع عند ادخال الصن الى الفاتورة
او ان تقوم بعمل حلقة تكرارية للمرور على صفوف الداتا جريد و تجميل الاصناف
و ان تعذر اى مما سبق
يفضل ارفاق الكود حتى يكون الامر اكثر وضوحا و يتمكن الاخوة من مساعدتك
(15-05-18, 01:11 AM)atefkhalf2004 كتب : [ -> ]حضرتك انا حبيت اوفر الوقت لخضراتكم. لكن الاعمدة هي
Id .,group , name ,qty , prc , total
ذود المجموعة الصنف كمية. سعر قيمة
شكرا لكم
أخي إعلم أنه لا يوفر الوقت أبداً .....
لو وضعت الكود في مشاركتك الأولى لوجدت الحل في المشاركة الثانية ......
ضع الكود الذي تستخدمة أنت ...... هل هي صعبة عليك .... نسخ ... لصق ... فقط ...
أليك أخى هذا الاستعلام
باعتبار أن الداتاجريد لديك اسمها
DataGridView1
كود :
Dim query = From row In DataGridView1.Rows.Cast(Of DataGridViewRow)() Group row By Item = row.Cells(0).Value Into ItemGroup = Group
Select New With {Key Item, Key .Count = ItemGroup.Count(Function(r) r.Cells(1).Value), Key .sum = ItemGroup.Sum(Function(r) r.Cells(1).Value)}
هذا الاستعلام يقوم بتجميع الجقل الأول و يعطيك العدد داخل المجموعة و مجموع الصف الثانى
و لعرض النتائج بالدات جريد الثانية و ليكن اسمه
DataGridView2
كود :
DataGridView2.DataSource = query.ToArray
بالتوفيق
(15-05-18, 12:29 AM)atefkhalf2004 كتب : [ -> ]حضراتكم البيانات معروضة في جريد وهي اصناف فاتورة الهدف هو عمل تجميع لكل صنف وعرض البيانات في جريد اخري اي .ليس هناك استعلام لكي اعمل له جروب اتمني ان اكون عرضت المشكلة بشكل سليم
(15-05-18, 01:11 AM)atefkhalf2004 كتب : [ -> ]حضرتك انا حبيتاوفر الوقت لخضراتكم. لكن الاعمدة هي
Id .,group , name ,qty , prc , total
ذود المجموعة الصنف كمية. سعر قيمة
شكرا لكم
الامر بسيط جداً اخى الكريم فقط تحتاج لتركيز لكي تستوعب طريقة عمل المطلوب
مثلاً DataGridView1 انت عملت الربط خاصتها طرية من الاثنين
اما عن طريق الكود كتابياً أو من خلال الربط بقاعدة البيانات
عايزك من بداية هنا تنسي تماماً DataGridView1 وتخيل انك بتبداء من جديد
وهتعمل واحد باسم DataGridView2
لحد هنا جميل كده
تعال نفس الطريقة اللى انت تعاملت بيها مع DataGridView1 وطبها مع DataGridView2
بمعنى لو كنت عامل الربط عن طريق كود الاستعلام فاستخدم كود الاستعلام اللى سبق وكتبته
طيب ولو كان عن طريق الربط بقاعدة البيانات كل ما عليك فعله انشاء بقاعدة البيانات ملف view
وتضع فيه كود الاستعلام فى sql واحفظ view ده باى اسم وبعد كده فى DataGridView2
بدل ما تحدد اسم الجدول بقاعدة البيانات لا ستقوم بتحديد view اللى انت عملتها جديدة
اتمنى اكون بسط عليك الفكرة
ى حالة الصعوبة وعدم الوصول للفكرة
اضع صورة للشكل لديك
ويفضل ان قمت بارفاق السورس بالمرفقاق
تحياتى لك