منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : تجميع العناصر المتشابهة في الداتاجريد الاولي في جريد ثانية
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2 3
السيد الفاضل

هناد داتا جريد بها الاصناف  كالتالي

الصنف    العدد
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 = اسم عمود العدد
NAME2NAME3 = اسماء باقي الاعمدة
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 اللى انت عملتها جديدة

اتمنى اكون بسط عليك الفكرة

ى حالة الصعوبة وعدم الوصول للفكرة
اضع صورة للشكل لديك
ويفضل ان قمت بارفاق السورس بالمرفقاق

تحياتى لك
الصفحات : 1 2 3