تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
تجميع العناصر المتشابهة في الداتاجريد الاولي في جريد ثانية
#21
(15-05-18, 10:12 PM)atefkhalf2004 كتب : اسف للتاخير   لما اضغط button1 يعمل البيانات في جريد2    شكرا كثيرا لكم


تفضل اخى الفاضل الطريقة بنائاً على مشروعك


أولاً انت عندك داخل منطقة الاكواد SUB باسم
كود :
Sub fillcombo4()

كل الفكرة هيتم انشاء واحد تانى بنفس الفكرة وهيكون كوده التالى

كود :
Sub fillcombo3()

       If objconn.State = ConnectionState.Closed Then objconn.Open()
       Sql = "SELECT MAX(invon), MAX(invdat), invcmn, SUM(invtol), MAX(sup_no), MIN(invser), MAX(invdiscount), MAX(invnettotal), MAX(supcod) FROM adpurhd GROUP BY invcmn"
       Dp = New OleDbDataAdapter(Sql, objconn)
       Dp.Fill(ds, "adpurhd")
       objconn.Close()
       ComboBox4.DataBindings.Clear()
       ComboBox4.Items.Clear()
       For i As Integer = 0 To Me.BindingContext(ds, "adpurhd").Count - 1
           Dim AddStr As String = ds.Tables("adpurhd").Rows(i).Item("invon").ToString
           If AddStr <> "" Then ComboBox4.Items.Add(AddStr)
       Next
       ComboBox4.Text = ""

   End Sub

حتى الان جميل ومفيش اى مشكلة

شفت الكود اللى انت عملته فى منطقة Form1_Load
كل اللى انا عملته اخت منه نسخة 
ورحت على الزر المطلوب عند الضغط عليه يعرض طريقة الداتا

وقم بوضع الكود التالى بداخل (Button1_Click)
كود :
fillcombo3()
       tempTable.Columns.Add("المجموعة", GetType(String))
       tempTable.Columns.Add("الشركة", GetType(String))

       tempTable.Columns.Add("كود الصنف", GetType(Integer))

       tempTable.Columns.Add("رقم الصنف", GetType(String))

       tempTable.Columns.Add("اسم الصنف", GetType(String))
       tempTable.Columns.Add("الوحدة", GetType(String))
       tempTable.Columns.Add("الكمية", GetType(Decimal))
       tempTable.Columns.Add("السعر", GetType(Decimal))
       tempTable.Columns.Add("الاجمالي", GetType(Decimal))
       tempTable.Columns.Add("الخصم", GetType(Decimal))
       Me.DataGridView2.AutoGenerateColumns = False
       Me.DataGridView2.AllowUserToResizeColumns = False
       Me.DataGridView2.DataSource = tempTable

ايه الاختلاف هنا بين لما المشروع يفتح وبين لما اضغط على الزر فقط جملة
كود :
ى منطقة Load
fillcombo4()

فى منطقة Button
fillcombo3()

طيب انت محتاج تخلى لما المشروع يفتح يعرض فى DataGridView1 الداتا كلها
ولما اضغط على الزر يعرض الداتا جروب فى DataGridView2

كل الفكرة السطر ده
كود :
Me.DataGridView2.DataSource = tempTable

قم بتغيير رقم 2 ما بين 1 و 2
حسب ترتيباتك

اتمنى تكون الفكرة بسيطة والشرح واضح

وانا اسف لم اقدر اعمل على مشروعك وتعديل الكود وارفاق الملف بالمرفقات
أولاً احبب دائماً التعليم وان تستفيد من الفكرة والطريقة
ثانياً اختلاف اصدار النسخة الى عندك وعندى

تمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة:
#22
للاسف أخى أنت تصعب الأمور على نفسك 

عموما هذا الكود سيعطيك ما تريد بشكل بسيط 

كود :
   Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
       Dim query = From row In DataGridView2.Rows.Cast(Of DataGridViewRow)() Group row By رقم_الصنف = row.Cells(3).Value Into ItemGroup = Group
                   Select New With {Key .المجموعة = ItemGroup.Min(Function(r) r.Cells(0).Value),
                                    Key .الشركة = ItemGroup.Min(Function(r) r.Cells(1).Value),
                                    Key رقم_الصنف,
                                    Key .اسم_الصنف = ItemGroup.Min(Function(r) r.Cells(4).Value),
                                    Key .الوحدة = ItemGroup.Min(Function(r) r.Cells(5).Value),
                                    Key .الكمية = ItemGroup.Sum(Function(r) r.Cells(6).Value),
                                    Key .السعر = ItemGroup.Min(Function(r) r.Cells(7).Value),
                                    Key .الاجمالي = ItemGroup.Sum(Function(r) r.Cells(8).Value),
                                    Key .الخصم = ItemGroup.Average(Function(r) r.Cells(9).Value)}
       DataGridView1.AutoGenerateColumns = False
       DataGridView1.DataSource = query.ToArray
   End Sub


فقط غير اسم عمودى رقم الصنف و اسم الصنف الى الاسم الموجود بالكود (استحدم _ بدلا من المسافة )
الرد }}}
تم الشكر بواسطة:
#23
شكرا لكم جميعا  افدتوني وافدتم الجميع  شكرا لكم
الرد }}}
تم الشكر بواسطة:
#24
بسم الله الرحمن الرحيم
منذ حذفي لمشاركتي الاولى وانا اجهد عقلي و احاول لكي اجد حل مناسب لطلب الاخ ....واول خيط عرفت من خلاله الحل وهي ضمن ردود الاخوة هنا بارك الله فيهم وهي عبارة group by فجربت كود استعلام بسيط وتم المطلوب.

قاعدة بياناتي باسم db
جدول1 باسم tb1
جدول2 باسم tb2

محتوى الجدول الاول كما ترون بالصورة التالية:

و الجدول الاخر:


عمود n في جدول2 هو المطلوب  مجموعه عبر sum بشرط تساوي عمود tb1 بجدول tb2 مع عمود tid بجدول tb1

المهم النتيجة هكذا

والتالي اجراء زر الامر
PHP كود :
Private Sub Button1_Click(sender As ObjectAs EventArgsHandles Button1.Click
        Using con 
As New OleDb.OleDbConnection("provider=microsoft.ace.oledb.12.0;data source=db.accdb")
 
           ' Using da As New OleDb.OleDbDataAdapter("select  [tb1.tname],[tb2.n] from tb1,tb2 where [tb2.tb1]=[tb1.tid]", con)
            Using da As New OleDb.OleDbDataAdapter("select tb1.tname, sum(tb2.n)  from tb1,tb2 where tb2.tb1=tb1.tid group by tname", con)
                Using dt As New DataTable
                    da.Fill(dt)
                    d.DataSource = dt
                    d.Columns(0).HeaderText = "الاسم"
                    d.Columns(1).HeaderText = "عدد الابناء"
                End Using
            End Using
        End Using
    End Sub 


الملفات المرفقة
.zip   JustMakingExample.zip (الحجم : 212.18 ك ب / التحميلات : 49)
الرد }}}
تم الشكر بواسطة: عبدالله الدوسري , elgokr
#25
(16-05-18, 03:43 AM)سعود كتب :
بسم الله الرحمن الرحيم
منذ حذفي لمشاركتي الاولى وانا اجهد عقلي و احاول لكي اجد حل مناسب لطلب الاخ ....واول خيط عرفت من خلاله الحل وهي ضمن ردود الاخوة هنا بارك الله فيهم وهي عبارة group by فجربت كود استعلام بسيط وتم المطلوب.

قاعدة بياناتي باسم db
جدول1 باسم tb1
جدول2 باسم tb2

محتوى الجدول الاول كما ترون بالصورة التالية:

و الجدول الاخر:


عمود n في جدول2 هو المطلوب  مجموعه عبر sum بشرط تساوي عمود tb1 بجدول tb2 مع عمود tid بجدول tb1

المهم النتيجة هكذا

والتالي اجراء زر الامر
PHP كود :
Private Sub Button1_Click(sender As ObjectAs EventArgsHandles Button1.Click
        Using con 
As New OleDb.OleDbConnection("provider=microsoft.ace.oledb.12.0;data source=db.accdb")
 
           ' Using da As New OleDb.OleDbDataAdapter("select  [tb1.tname],[tb2.n] from tb1,tb2 where [tb2.tb1]=[tb1.tid]", con)
            Using da As New OleDb.OleDbDataAdapter("select tb1.tname, sum(tb2.n)  from tb1,tb2 where tb2.tb1=tb1.tid group by tname", con)
                Using dt As New DataTable
                    da.Fill(dt)
                    d.DataSource = dt
                    d.Columns(0).HeaderText = "الاسم"
                    d.Columns(1).HeaderText = "عدد الابناء"
                End Using
            End Using
        End Using
    End Sub 
بص ياجميل
انا باعمل برنامخ مخزن عشان اضيف فيه الاصناف باستخدام اكسس
عملت جدول اسمه items
فيه الاعدمة التالية
code-date-itemsname-price-lowitems-quantity
العمود
lowitems
ببيخزن الكمية الللي مش ينفع يقل عنها المخزون من الصنف
يعني لو وصلت الكمية ليه يبقي يدي انظار او يعطي رسالة ادذار او يتم عرض العناصر اللي وصلت للحد الادني في داتا جريد فيو
يعني زي minimum
انا كنت باستعمل الجملة دي للاستعلام بشرط
select * from items where lowitems > 50

ودي مش هتنفع لان الشرط ده غلط
يعني في صنف الحد الادني ليه 50 قطعة وصنف 100 وصنف 200 وهكذا
يعني الشرط لازم يكون حسب كل صف
ارجو تكون وضحت شوية
الرد }}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  جمع وترتيب الحقول المتشابهة فى الجريد فيو Lathe1 0 34 أمس, 01:16 PM
آخر رد: Lathe1
  مشكلة فى جمع عمود فى داتا جريد فيو احمد خطاب 3 168 06-03-24, 07:49 PM
آخر رد: احمد خطاب
  حذف الاسطر الفارغه من الداتا جريد فيو اليوم السابع 3 2,383 03-03-24, 12:57 AM
آخر رد: مصمم هاوي
  كيفية جمع أرقام عمود فى الداتا جريد فيو بناءاً على بيانات معينة heem1986 5 241 25-02-24, 11:26 PM
آخر رد: heem1986
  كيفية تنفيذ امر عند التعليم على checkbox بالداتا جريد فيو heem1986 2 164 21-02-24, 01:37 AM
آخر رد: heem1986
Information [VB.NET] حذف كل العناصر التي تاتي بعد عنصر الذي احدده listbox mervandz 3 290 10-11-23, 07:12 PM
آخر رد: justforit
  انتقال المؤشر بين الخلايا في نفس الصف في الداتا جريد فيو fares_mohammed 2 472 03-11-23, 09:57 PM
آخر رد: fares_mohammed
  يوجد مشكلة عند تحميل البيانات فى كمبوبوكس داخل داتا جريد new_programer 2 477 17-10-23, 06:51 PM
آخر رد: new_programer
Photo [سؤال] تجميع قيم العناصر المتشابهة في الداتا جريد فيو علاء الكبابي 6 587 13-08-23, 01:00 PM
آخر رد: تركي الحلواني
  [سؤال] دمج جدولين في داتا جريد فيو alhuraibi 0 364 04-08-23, 12:08 AM
آخر رد: alhuraibi

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم