using System.Data;
using System.Web.UI;
using System.Text;
using RMA.UIController.Common;
using System.Collections.Generic;
using System.Collections;
namespace RMA.WebInterface
{
public partial class GroupMaintainance : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//FILL ddlGroupLevel from SP
ddlGrouplevel.Items.Clear();
MasterController mastController = new MasterController();
DataSet dsGroupLevel = mastController.GetGroupLevelData(-1, -1);
DataTable dtLevelIndicator = new DataTable();
string[] columnLevelIndicator = new string[] { "LevelIndicator" };
dsGroupLevel.Tables[0].DefaultView.Sort = "LevelIndicator";
dtLevelIndicator = dsGroupLevel.Tables[0].DefaultView.ToTable(true, columnLevelIndicator);
ddlGrouplevel.DataSource = dtLevelIndicator;
ddlGrouplevel.DataValueField = "LevelIndicator";
ddlGrouplevel.DataTextField = "LevelIndicator";
ddlGrouplevel.DataBind();
ddlGrouplevel.Items.Insert(0, "All");
//FILL lstName from SP
lstName.Items.Clear();
DataTable dtGroupLevelName = new DataTable();
string[] columnParentLevelName = new string[] { "ParentLevelName" };
dsGroupLevel.Tables[0].DefaultView.Sort = "ParentLevelName";
dtGroupLevelName = dsGroupLevel.Tables[0].DefaultView.ToTable(true, columnParentLevelName);
lstName.DataSource = dtGroupLevelName;
lstName.DataValueField = "ParentLevelName";
lstName.DataTextField = "ParentLevelName";
lstName.DataBind();
lstName.Items.Remove(string.Empty);
}
}
#region Events
protected void ddlGrouplevel_SelectedIndexChanged(object sender, EventArgs e)
{
lstName.Items.Clear();
lstDependencies.Items.Clear();
if (ddlGrouplevel.SelectedItem.Text == "All")
{
lstName.Items.Clear();
DataTable dtGroupLevelName = new DataTable();
MasterController mastController = new MasterController();
DataSet dsGroupLevel = mastController.GetGroupLevelData(-1, -1);
string[] columnParentLevelName = new string[] { "ParentLevelName" };
dsGroupLevel.Tables[0].DefaultView.Sort = "ParentLevelName";
dtGroupLevelName = dsGroupLevel.Tables[0].DefaultView.ToTable(true, columnParentLevelName);
lstName.DataSource = dtGroupLevelName;
lstName.DataValueField = "ParentLevelName";
lstName.DataTextField = "ParentLevelName";
lstName.DataBind();
lstName.Items.Remove(string.Empty);
}
else
{
lstName.Items.Clear();
DataTable dtGroupLevelName = new DataTable();
MasterController mastController = new MasterController();
DataSet dsGroupLevel = mastController.GetGroupLevelData(-1, -1);
string[] columnParentLevelName = new string[] { "ParentLevelName" };
DataTable dtView = new DataView(dsGroupLevel.Tables[0], "levelindicator='" + ddlGrouplevel.SelectedValue + "'", "ParentLevelName", DataViewRowState.CurrentRows).ToTable();
lstName.DataSource = dtView.DefaultView.ToTable(true, columnParentLevelName);
lstName.DataTextField = "ParentLevelName";
lstName.DataValueField = "ParentLevelName";
lstName.DataBind();
lstName.Items.Remove(string.Empty);
}
}
protected void btnFind_Click(object sender, EventArgs e)
{
lstName.Items.Clear();
lstDependencies.Items.Clear();
if (ddlGrouplevel.SelectedItem.Text == "All")
{
lstName.Items.Clear();
DataTable dtGroupLevelName = new DataTable();
MasterController mastController = new MasterController();
DataSet dsGroupLevel = mastController.GetGroupLevelData(-1, -1);
string[] columnParentLevelName = new string[] { "ParentLevelName" };
DataTable dtView = new DataView(dsGroupLevel.Tables[0], "ParentLevelName like '" + txtFind.Text + "%'", "ParentLevelName", DataViewRowState.CurrentRows).ToTable();
lstName.DataSource = dtView.DefaultView.ToTable(true, columnParentLevelName);
lstName.DataTextField = "ParentLevelName";
lstName.DataValueField = "ParentLevelName";
lstName.DataBind();
lstName.Items.Remove(string.Empty);
}
else
{
lstName.Items.Clear();
DataTable dtGroupLevelName = new DataTable();
MasterController mastController = new MasterController();
DataSet dsGroupLevel = mastController.GetGroupLevelData(-1, -1);
string[] columnParentLevelName = new string[] { "ParentLevelName" };
DataTable dtView = new DataView(dsGroupLevel.Tables[0], "levelindicator='" + ddlGrouplevel.SelectedValue + "' AND ParentLevelName like '" + txtFind.Text + "%'", "ParentLevelName", DataViewRowState.CurrentRows).ToTable();
lstName.DataSource = dtView.DefaultView.ToTable(true, columnParentLevelName);
lstName.DataTextField = "ParentLevelName";
lstName.DataValueField = "ParentLevelName";
lstName.DataBind();
lstName.Items.Remove(string.Empty);
}
txtFind.Text = string.Empty;
}
protected void lstName_SelectedIndexChanged(object sender, EventArgs e)
{
lstDependencies.Items.Clear();
MasterController mastController = new MasterController();
DataSet dsGroupLevel = mastController.GetGroupLevelData(-1, -1);
DataRow[] selectProfile = dsGroupLevel.Tables["Table"].Select("ParentLevelName = '" + lstName.SelectedValue + "'");
foreach (DataRow selectProfiledr in selectProfile)
{
if (!string.IsNullOrEmpty(selectProfiledr["ChildLevelName"].ToString()))
{
lstDependencies.Items.Add("Child : " + selectProfiledr["ChildLevelName"].ToString());
}
}
}
protected void btnNew_Click(object sender, EventArgs e)
{
StringBuilder sb = new StringBuilder();
sb.Append("");
Page.RegisterStartupScript("scriptviewgroup", sb.ToString());
}
protected void btnEdit_Click(object sender, EventArgs e)
{
if (ddlGrouplevel.SelectedItem.Text == "ALL")
{
string str = ddlGrouplevel.SelectedItem.Text;
string url = "ViewGroup.aspx?Name=" + lstName.SelectedItem.Text + "&grouplevel=" + str + "&Action=Edit";
StringBuilder sb = new StringBuilder();
sb.Append("");
Page.RegisterStartupScript("scripteditgroup", sb.ToString());
}
else
{
int grp = Convert.ToInt16(ddlGrouplevel.SelectedItem.Text.Substring(12));
string url = "ViewGroup.aspx?Name=" + lstName.SelectedItem.Text + "&grouplevel=" + grp + "&Action=Edit";
StringBuilder sb = new StringBuilder();
sb.Append("");
Page.RegisterStartupScript("scripteditgroup", sb.ToString());
}
}
#endregion
}
}
private List
{
List
foreach (DataRow dr in dtSource.Select(Condition))
{
if (dr[IDColumnName] == DBNull.Value || arUniqueId.Contains(dr[IDColumnName].ToString()))
{
continue;
}
arUniqueId.Add(dr[IDColumnName].ToString());
}
return arUniqueId;
}

