تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] دمج عمودين بالداتاجريد فيو
#1
السلام عليكم ورحمة الله
اريد دمج عمودين من قاعدة البيانات اكسيس بعمود واحد بالداتاجريد فيو
العمودين اسم الصنف - ورقم الموديل
حاولت بالطريقة دية ومبيظهرش شيء مش عارف المشكلة من الاستعلام ولا اية ؟

كود :
 Using cmd As OleDbCommand = New OleDbCommand("SELECT TOP 10 (TYPE_NAME +'  '+ TYPE_MODEL) AS NAME_MODEL ,TYPE_QUALITY,TYPE_NUMB  FROM  TYPE_TB ORDER BY TYPE_QUALITY ASC", con)
           Using DataAdapter = New OleDbDataAdapter(cmd)
               ds.Clear()
               DataAdapter.Fill(ds, "TYPE_TB")
               DATAGRID_BILLTYPE.DataSource = ds
               DATAGRID_BILLTYPE.DataMember = "TYPE_TB"
               DataAdapter.Dispose()
               con.Close()
           End Using
       End Using
     
 DATAGRID_BILLTYPE.Columns(0).Width = 0
       DATAGRID_BILLTYPE.Columns(1).Width = 60
       DATAGRID_BILLTYPE.Columns(2).Width = 60

       '
       DATAGRID_BILLTYPE.Columns(0).HeaderText = "الاسم الموديل"
       DATAGRID_BILLTYPE.Columns(1).HeaderText = "الجودة"
       DATAGRID_BILLTYPE.Columns(2).HeaderText = "العدد"

       DATAGRID_BILLTYPE.Columns(0).ReadOnly = True
       DATAGRID_BILLTYPE.Columns(1).ReadOnly = True
       DATAGRID_BILLTYPE.Columns(2).ReadOnly = True
الرد
تم الشكر بواسطة: ابراهيم ايبو
#2
وعليكم السلام ورحمة الله وبركاته
المطلوب واضح لكن هل تقصد ان يكون عمود من القريدفيو يشمل صفين ؟!
اذا نعم فلا تقم بتعيين مصدر البيانات للقريدفيو وانما قم بتعبئتها صف صف من المصدر.

هل تقصد هكذا؟


PHP كود :
       dg.Rows.Clear()
 
       Dim dt As New DataTable
        Using con 
As New OleDb.OleDbConnection("provider=microsoft.ace.oledb.12.0;data source=" CurDir() & "\db.accdb")
 
           Using da As New OleDb.OleDbDataAdapter("select * from tb"con)

 
               da.Fill(dt)

 
               For i As Integer 0 To dt.Rows.Count 1
                    Dim row 
As String "ID: " dt.Rows(i).Item(0) & " NAME: " dt.Rows(i).Item(1) & " Mobile: " dt.Rows(i).Item(2)
 
                   dg.Rows.Add(row)
 
               Next
            End Using
        End Using 
dg = DataGridView


الملفات المرفقة
.zip   MergeTwoCol.zip (الحجم : 33.58 ك ب / التحميلات : 6)
الرد
تم الشكر بواسطة: محمد اسماعيل , tryold , tryold , ابراهيم ايبو
#3
(22-08-19, 09:41 PM)سعود كتب : وعليكم السلام ورحمة الله وبركاته
المطلوب واضح لكن هل تقصد ان يكون عمود من القريدفيو يشمل صفين ؟!
اذا نعم فلا تقم بتعيين مصدر البيانات للقريدفيو وانما قم بتعبئتها صف صف من المصدر.

هل تقصد هكذا؟


PHP كود :
       dg.Rows.Clear()
 
       Dim dt As New DataTable
        Using con 
As New OleDb.OleDbConnection("provider=microsoft.ace.oledb.12.0;data source=" CurDir() & "\db.accdb")
 
           Using da As New OleDb.OleDbDataAdapter("select * from tb"con)

 
               da.Fill(dt)

 
               For i As Integer 0 To dt.Rows.Count 1
                    Dim row 
As String "ID: " dt.Rows(i).Item(0) & " NAME: " dt.Rows(i).Item(1) & " Mobile: " dt.Rows(i).Item(2)
 
                   dg.Rows.Add(row)
 
               Next
            End Using
        End Using 
dg = DataGridView

ولنفترض ان طبيعة الاعمدة كالاتي :

اسم الصنف 1|  موديل الصنف 2| الجودة 3| عدد 4  عمود

حذاء رياضي  | اديداس |  اصلي  |  30
حذاء رياضي  | نايك |  اصلي  |  40

المطلو ب كالاتي
دمج عمودين بعمود واحد او خليتين بواحدة


الاسم 1- الموديل1  | الجودة 2| عدد 3

حذاء رياضي - ايداس |  اصلي  |  30

حذاء رياضي - نايك    |  اصلي  |  40
الرد
تم الشكر بواسطة: ابراهيم ايبو
#4
إقتباس :ولنفترض ان طبيعة الاعمدة كالاتي :

اسم الصنف 1|  موديل الصنف 2| الجودة 3| عدد 4  عمود

حذاء رياضي  | اديداس |  اصلي  |  30
حذاء رياضي  | نايك |  اصلي  |  40

المطلو ب كالاتي 
دمج عمودين بعمود واحد او خليتين بواحدة 


الاسم 1- الموديل1  | الجودة 2| عدد 3

حذاء رياضي - ايداس |  اصلي  |  30
حذاء رياضي - نايك    |  اصلي  |  40
انت غير بالكود كما تريد المهم تتضح الفكرة الاساسية وهي عدم ربط القريدفيو بالمصدر وانما بهذه الطريقة.
الرد
تم الشكر بواسطة: محمد اسماعيل , ابراهيم ايبو
#5
(22-08-19, 10:14 PM)سعود كتب :
إقتباس :ولنفترض ان طبيعة الاعمدة كالاتي :

اسم الصنف 1|  موديل الصنف 2| الجودة 3| عدد 4  عمود

حذاء رياضي  | اديداس |  اصلي  |  30
حذاء رياضي  | نايك |  اصلي  |  40

المطلو ب كالاتي 
دمج عمودين بعمود واحد او خليتين بواحدة 


الاسم 1- الموديل1  | الجودة 2| عدد 3

حذاء رياضي - ايداس |  اصلي  |  30
حذاء رياضي - نايك    |  اصلي  |  40
انت غير بالكود كما تريد المهم تتضح الفكرة الاساسية وهي عدم ربط القريدفيو بالمصدر وانما بهذه الطريقة.

جميل جدا زيادة لما تفضلت بتعديل بسيط جدا وفقا لطريقتك لافادة من يدخل الموضوع :
كود دمج عمودين او اكثر بواحد

كود :
DATAGRID_BILLTYPE.Rows.Clear()
       Dim dt As New DataTable
       Using con As New OleDb.OleDbConnection("provider=microsoft.ace.oledb.12.0;data source=" & CurDir() & "\db.accdb")
           Using da As New OleDb.OleDbDataAdapter("select * from tb", con)

               da.Fill(dt)

               For i As Integer = 0 To dt.Rows.Count - 1
                   Dim CELL0 As String = "ID: " & dt.Rows(i).Item(0) & " NAME: " & dt.Rows(i).Item(1) & " Mobile: " & dt.Rows(i).Item(2)
                   Dim CELL1 As String = " Mobile: " & dt.Rows(i).Item(2)
                   DATAGRID_BILLTYPE.Rows.Add(CELL0, CELL1)

               Next
           End Using
       End Using

في طلب بسيط انا حذفت مصدر البيانات بالداتاجريد اريد معرفة ما الخطا بالكود الخاص بي :



كود :
Using cmd As OleDbCommand = New OleDbCommand("SELECT TOP 10 (TYPE_NAME +'  '+ TYPE_MODEL) AS NAME_MODEL ,TYPE_QUALITY,TYPE_NUMB  FROM  TYPE_TB ORDER BY TYPE_QUALITY ASC", con)
          Using DataAdapter = New OleDbDataAdapter(cmd)
              ds.Clear()
              DataAdapter.Fill(ds, "TYPE_TB")
              DATAGRID_BILLTYPE.DataMember = "TYPE_TB"
              DataAdapter.Dispose()
              con.Close()
          End Using
      End Using
   
DATAGRID_BILLTYPE.Columns(0).Width = 0
      DATAGRID_BILLTYPE.Columns(1).Width = 60
      DATAGRID_BILLTYPE.Columns(2).Width = 60

      '
      DATAGRID_BILLTYPE.Columns(0).HeaderText = "الاسم الموديل"
      DATAGRID_BILLTYPE.Columns(1).HeaderText = "الجودة"
      DATAGRID_BILLTYPE.Columns(2).HeaderText = "العدد"

      DATAGRID_BILLTYPE.Columns(0).ReadOnly = True
      DATAGRID_BILLTYPE.Columns(1).ReadOnly = True
      DATAGRID_BILLTYPE.Columns(2).ReadOnly = True

الرد
تم الشكر بواسطة: ابراهيم ايبو , سعود


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [VB.NET] استعلام متقدم لعرض البيانات بالداتاجريد فيو محمد اسماعيل 4 636 27-04-21, 04:26 PM
آخر رد: messry
  ممكن كود مجموع ضرب عمودين (هناك صورة مرفقة) sofiane-phy 2 791 29-10-20, 10:31 AM
آخر رد: sofiane-phy
  [VB.NET] البحث بالداتاجريد عن القيمة الاقرب محمد اسماعيل 2 816 21-12-19, 10:19 PM
آخر رد: محمد اسماعيل
  [VB.NET] مشكلة اضافة بوتن لكل خلية بالداتاجريد فيو محمد اسماعيل 4 1,071 21-12-19, 12:34 AM
آخر رد: محمد اسماعيل
  [VB.NET] البحث بالداتاجريد عن القيمة الاقرب محمد اسماعيل 0 601 13-12-19, 03:22 AM
آخر رد: محمد اسماعيل
  تغيير الليست بكس بالداتاجريد فيو محمد خيري 5 1,456 15-02-19, 09:09 PM
آخر رد: princelovelorn
  [سؤال] مقارنة بين عمودين في datagridview nashnoush 1 1,405 15-11-18, 12:56 AM
آخر رد: nashnoush
  [سؤال] كود جمع او ضرب عمودين فى datagridview atef_020 17 11,928 14-08-18, 08:56 PM
آخر رد: elgokr
  سؤال : عن داتا قريد تقسيم قيمة الى عمودين abid 5 1,696 13-10-16, 04:40 AM
آخر رد: abid
  [SQL] أريد استعلام يجمع بين حقلين من عمودين مختلفين في txbox biloo20 7 2,945 23-03-16, 01:57 AM
آخر رد: boudyonline

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


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