Solved

Compare rows from gridview1 to gridview2

Posted on 2009-07-04
8
568 Views
Last Modified: 2013-11-25
I have two gridview in a webpage, each get data from different source but they have two rows are are the same
Gridview1
Code    Boxes      
x1           100

GridView2
Code     Boxes
x1          120

Gridview updates Boxes automatically
so I want to compare this two numbers an get the results into another column on GridView2 called Difference  based on the  Code  listed on both grids. Any ideas
0
Comment
Question by:teogos
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
8 Comments
 
LVL 53

Expert Comment

by:Dhaest
ID: 24813698
How do you retrieve the data ? Is it in a dataset, ... ?
0
 

Author Comment

by:teogos
ID: 24813771
using the wizard to a SLQ connection   sqldatasource
0
 
LVL 53

Expert Comment

by:Dhaest
ID: 24813831
Compare 2 Gridview row values and write those who doesn't match
http://forums.asp.net/p/1236832/2247869.aspx
0
SharePoint Admin?

Enable Your Employees To Focus On The Core With Intuitive Onscreen Guidance That is With You At The Moment of Need.

 

Author Comment

by:teogos
ID: 24814003
Looks a good sample but I can see to get where is writing the difference
0
 

Author Comment

by:teogos
ID: 24815322
Perhaps the question was not understood,  
Grid1
code     boxes
x1          200
x2          100

Grid2
code      boxes
x1         300
x2          150

compare grid1  on code  to grid2 and   add a column on grid2
where it will show the difference on BOXES  from grid1  to grid2  base on CODE
0
 
LVL 53

Expert Comment

by:Dhaest
ID: 24820721
Can you show how you bind the data, because I think you'll need some comparision on level of your datainput (sqldatasource, objectdatasource, ...)
0
 
LVL 53

Accepted Solution

by:
Dhaest earned 500 total points
ID: 24820803
I've tested it with code below
        protected void Page_Load(object sender, EventArgs e)
        {
            DataTable dtGrid1 = new DataTable();
            dtGrid1.Columns.Add("Code", typeof(string));
            dtGrid1.Columns.Add("Boxes", typeof(int));
            DataTable dtGrid2 = new DataTable();
            dtGrid2.Columns.Add("Code", typeof(string));
            dtGrid2.Columns.Add("Boxes", typeof(int));
 
            // fill first datatable
            DataRow dr = dtGrid1.NewRow();
            dr["Code"] = "x1";
            dr["Boxes"] = 100;
            dtGrid1.Rows.Add(dr);
            dr = dtGrid1.NewRow();
            dr["Code"] = "x2";
            dr["Boxes"] = 200;
            dtGrid1.Rows.Add(dr);
 
            // fill second datatable
            dr = dtGrid2.NewRow();
            dr["Code"] = "x1";
            dr["Boxes"] = 100;
            dtGrid2.Rows.Add(dr);
            dr = dtGrid2.NewRow();
            dr["Code"] = "x2";
            dr["Boxes"] = 220;
            dtGrid2.Rows.Add(dr);
 
            GridView1.DataSource = dtGrid1;
            GridView1.DataBind();
 
            GridView2.DataSource = dtGrid2;
            GridView2.DataBind();
 
        }
 
        protected void Button1_Click(object sender, EventArgs e)
        {
            DataTable alfa = (DataTable)GridView1.DataSource;
            alfa.Columns.Add("Equal", typeof(bool));
            DataTable beta = (DataTable)GridView2.DataSource;
            foreach (DataRow x in alfa.Rows)
            {
                bool bEqual = false;
                string strFilter = "Code = '" + x["code"].ToString() + "'";
                DataRow[] filtered = beta.Select(strFilter);
                if (filtered.GetUpperBound(0) >= 0)
                {
                    DataRow dr = filtered[0];
                    if (dr["Boxes"].ToString().Trim() == x["Boxes"].ToString().Trim())
                        bEqual = true;
                }
                x["Equal"] = bEqual;
            }
            GridView1.DataSource = alfa;
            GridView1.DataBind();
        }

Open in new window

0
 

Author Closing Comment

by:teogos
ID: 31599783
Sorry, took so long to get back into, but this works I just have to rearrenge the data. Thanks
0

Featured Post

On Demand Webinar: Networking for the Cloud Era

Ready to improve network connectivity? Watch this webinar to learn how SD-WANs and a one-click instant connect tool can boost provisions, deployment, and management of your cloud connection.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

What my article will show is if you ever had to do processing to a listbox without being able to just select all the items in it. My software Visual Studio 2008 crystal report v11 My issue was I wanted to add crystal report to a form and show…
Whether you've completed a degree in computer sciences or you're a self-taught programmer, writing your first lines of code in the real world is always a challenge. Here are some of the most common pitfalls for new programmers.
This is Part 3 in a 3-part series on Experts Exchange to discuss error handling in VBA code written for Excel. Part 1 of this series discussed basic error handling code using VBA. http://www.experts-exchange.com/videos/1478/Excel-Error-Handlin…
This is my first video review of Microsoft Bookings, I will be doing a part two with a bit more information, but wanted to get this out to you folks.

717 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question