Hi All,
I am trying to create a webpart for MOSS using two radgrids and two sqldatasources, where the second shows details of the first.
The control parameter of the second datasource should be the selected value of this first grid.
The problem is when I click on a row in the first grid, nothing happens in the second which has led me to believe it is something to do with the control parameter.
Can someone help me determine the problem?
Thanks.
Aaron
RadAjaxPanel pnlWorkOrders; | |||
RadGrid rgOrders; | |||
RadGrid rgDetails; | |||
SqlDataSource dsOrders; | |||
SqlDataSource dsDetails; | |||
protected override void CreateChildControls() | |||
{ | |||
pnlWorkOrders = new RadAjaxPanel(); | |||
rgOrders = new RadGrid(); | |||
rgDetails = new RadGrid(); | |||
dsOrders = new SqlDataSource(); | |||
dsDetails = new SqlDataSource(); | |||
dsOrders.ID = "dsOrders"; | |||
dsOrders.ProviderName = "System.Data.SqlClient"; | |||
dsOrders.ConnectionString="Data Source=cdshelp;Initial Catalog=TRACKIT70_DATA2;User ID=web_TrackItReader;Password=TRACK11!"; | |||
dsOrders.SelectCommand="SELECT [WO_NUM], [TASK], [REQUEST], [REQDATE], [DUEDATE], [RESPONS] FROM [TASKS] WHERE ([STATUS] <> @STATUS) AND (REQDATE > @DateNow)"; | |||
dsOrders.SelectParameters.Add("STATUS", ""Completed""); | |||
dsOrders.SelectParameters.Add("DateNow",DbType.DateTime,"01/01/2008"); | |||
dsDetails.ID = "dsDetails"; | |||
dsDetails.ProviderName = "System.Data.SqlClient"; | |||
dsDetails.ConnectionString="Data Source=cdshelp;Initial Catalog=TRACKIT70_DATA2;User ID=web_TrackItReader;Password=TRACK11!"; | |||
dsDetails.SelectCommand="SELECT [WO_NUM], [TASK], [DESCRIPT], [NOTE] FROM [TASKS] WHERE ([WO_NUM] = @WO_NUM)"; | |||
dsDetails.SelectParameters.Add(new ControlParameter("WO_NUM", "rgOrders","SelectedValue")); | |||
rgOrders.ID = "rgOrders"; | |||
rgOrders.DataSourceID="dsOrders"; | |||
rgOrders.MasterTableView.DataKeyNames = new string[] { "WO_NUM" }; | |||
rgOrders.ClientSettings.EnablePostBackOnRowClick = true; | |||
rgOrders.ClientSettings.Selecting.AllowRowSelect = true; | |||
|
|||
rgOrders.AutoGenerateColumns = false; | |||
GridBoundColumn wo = new GridBoundColumn(); | |||
wo.HeaderText = "Work Order #"; | |||
wo.UniqueName = "WO_NUM"; | |||
wo.DataField = "WO_NUM"; | |||
GridBoundColumn ta = new GridBoundColumn(); | |||
ta.HeaderText = "Task"; | |||
ta.UniqueName = "TASK"; | |||
ta.DataField = "TASK"; | |||
GridBoundColumn rq = new GridBoundColumn(); | |||
rq.HeaderText = "Requested By"; | |||
rq.UniqueName = "REQUEST"; | |||
rq.DataField = "REQUEST"; | |||
GridBoundColumn dc = new GridBoundColumn(); | |||
dc.HeaderText = "Date Requested"; | |||
dc.UniqueName = "REQDATE"; | |||
dc.DataField = "REQDATE"; | |||
GridBoundColumn dd = new GridBoundColumn(); | |||
dd.HeaderText = "Due Date"; | |||
dd.UniqueName = "DUEDATE"; | |||
dd.DataField = "DUEDATE"; | |||
rgOrders.Columns.Add(wo); | |||
rgOrders.Columns.Add(ta); | |||
rgOrders.Columns.Add(rq); | |||
rgOrders.Columns.Add(dc); | |||
rgOrders.Columns.Add(dd); | |||
rgDetails.AutoGenerateColumns = false; | |||
GridBoundColumn ds = new GridBoundColumn(); | |||
ds.HeaderText = "Description"; | |||
ds.UniqueName = "DESCRIPT"; | |||
ds.DataField = "DESCRIPT"; | |||
ds.HeaderStyle.Width = Unit.Percentage(50); | |||
ds.ItemStyle.VerticalAlign = VerticalAlign.Top; | |||
ds.ItemStyle.HorizontalAlign = HorizontalAlign.Left; | |||
GridBoundColumn nt = new GridBoundColumn(); | |||
nt.HeaderText = "Notes"; | |||
nt.UniqueName = "NOTE"; | |||
nt.DataField = "NOTE"; | |||
nt.HeaderStyle.Width = Unit.Percentage(50); | |||
nt.ItemStyle.VerticalAlign = VerticalAlign.Top; | |||
nt.ItemStyle.HorizontalAlign = HorizontalAlign.Left; | |||
pnlWorkOrders.Width = Unit.Percentage(100); | |||
pnlWorkOrders.Height = Unit.Percentage(100); | |||
pnlWorkOrders.Controls.Add(dsOrders); | |||
pnlWorkOrders.Controls.Add(dsDetails); | |||
pnlWorkOrders.Controls.Add(rgOrders); | |||
pnlWorkOrders.Controls.Add(rgDetails); | |||
this.Controls.Add(pnlWorkOrders); | |||
} |