Link to home
Start Free TrialLog in
Avatar of sbornstein2
sbornstein2

asked on

Grouping Data in Dataset

Hello all.  I am currently trying to use a repeater but open to other options.  I have a dataset that looks like the following attached code I have a static dataset I am showing here.   I need the data to group by ProjectID and show the Description and then below the records but also by PurchaseType in seperate repeaters or datalist etc. such as:

Title: Oh snap I found a squirrel
Purchase Date   OrderNumber   Amount
03/10/2008        00179               150.00
03/08/2008        00180                 25.00
....
Title: Questions and Answers on Life Insurance
Purchase Date  OrderNumber   Amount
03/06/2008       00182             2010.95
.....

any help on best way to split this up?  I have a repeater but because I have one dataset I am having trouble creating the relation and distinct off projectid.  Not sure it is the best way but need some help.
protected static DataSet MainDataSet()
    {
        DataSet ds;
        System.Data.DataTable dt;
 
        ds = new DataSet();
        dt = new DataTable();
 
        // Columns
        DataColumn ProjectID;
        DataColumn Description;
        DataColumn PurchaseDate;
        DataColumn PurchaseType;
        DataColumn OrderNumber;
        DataColumn Amount;
 
        // Initialize the columns
        ProjectID = new DataColumn("ProjectID");
        Description = new DataColumn("Description");
        PurchaseDate = new DataColumn("PurchaseDate");
        PurchaseType = new DataColumn("PurchaseType");
        OrderNumber = new DataColumn("OrderNumber");
        Amount = new DataColumn("Amount");
 
        // Add columns
        dt.Columns.Add(ProjectID);
        dt.Columns.Add(Description);
        dt.Columns.Add(PurchaseDate);
        dt.Columns.Add(PurchaseType);
        dt.Columns.Add(OrderNumber);
        dt.Columns.Add(Amount);
 
        //Add DataRows to DataTable
        DataRow myRow;
        myRow = dt.NewRow();
        myRow["ProjectID"] = "22";
        myRow["Description"] = "Oh snap I found a squirrel";
        myRow["PurchaseDate"] = "03/10/2008";
        myRow["PurchaseType"] = "Book";
        myRow["OrderNumber"] = "000179";
        myRow["Amount"] = "150.00";
        dt.Rows.Add(myRow);
 
        myRow = dt.NewRow();
        myRow["ProjectID"] = "22";
        myRow["Description"] = "Oh snap I found a squirrel";
        myRow["PurchaseDate"] = "03/08/2008";
        myRow["PurchaseType"] = "Book";
        myRow["OrderNumber"] = "000180";
        myRow["Amount"] = "25.00";
        dt.Rows.Add(myRow);
 
        myRow = dt.NewRow();
        myRow["ProjectID"] = "22";
        myRow["Description"] = "Oh snap I found a squirrel";
        myRow["PurchaseDate"] = "03/07/2008";
        myRow["PurchaseType"] = "Book";
        myRow["OrderNumber"] = "000181";
        myRow["Amount"] = "85.00";
        dt.Rows.Add(myRow);
 
        myRow = dt.NewRow();
        myRow["ProjectID"] = "33";
        myRow["Description"] = "Questions and Answers on Life Insurance";
        myRow["PurchaseDate"] = "03/06/2008";
        myRow["PurchaseType"] = "Book";
        myRow["OrderNumber"] = "000182";
        myRow["Amount"] = "2010.95";
        dt.Rows.Add(myRow);
 
        myRow = dt.NewRow();
        myRow["ProjectID"] = "44";
        myRow["Description"] = "Cover Redesign";
        myRow["PurchaseDate"] = "03/10/2008";
        myRow["PurchaseType"] = "Service";
        myRow["OrderNumber"] = "000183";
        myRow["Amount"] = "55.00";
        dt.Rows.Add(myRow);
 
        myRow = dt.NewRow();
        myRow["ProjectID"] = "44";
        myRow["Description"] = "Cover Redesign";
        myRow["PurchaseDate"] = "03/09/2008";
        myRow["PurchaseType"] = "Service";
        myRow["OrderNumber"] = "000184";
        myRow["Amount"] = "1290.00";
        dt.Rows.Add(myRow);
 
        myRow = dt.NewRow();
        myRow["ProjectID"] = "55";
        myRow["Description"] = "Manuscript Rework";
        myRow["PurchaseDate"] = "03/08/2008";
        myRow["PurchaseType"] = "Service";
        myRow["OrderNumber"] = "000185";
        myRow["Amount"] = "99.00";
        dt.Rows.Add(myRow);
 
        myRow = dt.NewRow();
        myRow["ProjectID"] = "55";
        myRow["Description"] = "Manuscript Rework";
        myRow["PurchaseDate"] = "03/05/2008";
        myRow["PurchaseType"] = "Service";
        myRow["OrderNumber"] = "000186";
        myRow["Amount"] = "65.00";
        dt.Rows.Add(myRow);
 
        ds.Tables.Add(dt);
        return ds;
    }

Open in new window

ASKER CERTIFIED SOLUTION
Avatar of codeclay
codeclay
Flag of India image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial