I have a calendar control and displaying due dates and project name. My only problem now, is when I have multiple projects assigned to one date when I click on the project name it populates data of the last record. Below is my code, any help will be appreciated.
Thanks
protected void Calender1_DayRender(object source, DayRenderEventArgs e)
{
DateTime dates;
DataTable dt = Get_Event();
Literal l = new Literal();
Label lb = new Label();
string events;
if (dt.Rows.Count > 0)
{
for (int i = 0; i < dt.Rows.Count; i++)
{
dates = (Convert.ToDateTime(dt.Rows[i]["to_date(a.PROJECT_DUE,'MM/DD/YYYY')"]));
events = (Convert.ToString(dt.Rows[i]["PROJECT_NAME"]));
if (e.Day.Date == dates)
{
e.Cell.Controls.Add(lb);
e.Day.IsSelectable = true;
e.Cell.BackColor = System.Drawing.Color.Aqua;
e.Cell.ForeColor = System.Drawing.Color.BlueViolet;
e.Cell.Controls.Add(new LiteralControl("<br/><a href="/KB/answers/edit_project.aspx"?PROJECT_DUE=" + dates.ToString("MM/dd/yyyy") +"'>" + events + "</a><br/>"));
}
}
}
}
myConnection.Close();
}
public DataTable Get_Event()
{
DataTable dt = new DataTable();
OracleConnection myConnection = new OracleConnection(ConfigurationManager.AppSettings["DSN"]);
myConnection.Open();
OracleCommand myCommand = new OracleCommand("SELECT to_date(a.PROJECT_DUE,'MM/DD/YYYY'), a.PROJECT_NAME, a.UPDATED_COMMENT FROM NEW_PROJECTS a WHERE upper(a.ASSIGNED_TO_ID) = '" + Session["UserName"].ToString() + "'or lower(a.ASSIGNED_TO_ID) = '" + Session["UserName"].ToString() + "' or upper(a.REPORTS_TO_ID) = '" + Session["UserName"].ToString() + "'or lower(a.REPORTS_TO_ID) = '" + Session["UserName"].ToString() + "'and a.proj_status = 'Active'", myConnection);
OracleDataAdapter da = new OracleDataAdapter(myCommand);
da.Fill(dt);
}
protected void LoadData()
{
string dates;
dates = Request.QueryString["PROJECT_DUE"].ToString();
Project_Due.Text = ("" + dates);
OracleConnection myConnection = new OracleConnection(ConfigurationManager.AppSettings["DSN"]);
OracleCommand myCommand = new OracleCommand("SELECT PROJECT_NAME, PROJECT_DUE, REQUESTED_MANAGER, PROJ_DESCRIPTION, PROJ_STATUS, ASSIGNED_TO, PRIORITY_LEVEL FROM NEW_PROJECTS WHERE PROJECT_DUE = '" + dates + "'", myConnection);
myConnection.Open();
OracleDataReader dr = myCommand.ExecuteReader();;
while (dr.Read())
{
Project_Due.Text = (string)dr["Project_Due"];
Project_Name.Text = dr["Project_Name"].ToString();
Requested_Manager.Text= (string)dr["Requested_Manager"];
Proj_Description.Text = (string)dr["Proj_Description"];
Proj_Status.SelectedValue = (string)dr["Proj_Status"];
ASSIGNED_TO.SelectedValue = (string)dr["Assigned_To"];
/*ASSIGNED_TO1.SelectedValue = (string)dr["Assigned_To1"];
ASSIGNED_TO2.SelectedValue = (string)dr["Assigned_To2"];
ASSIGNED_TO3.SelectedValue = (string)dr["Assigned_To3"];
ASSIGNED_TO4.SelectedValue = (string)dr["Assigned_To4"];
ASSIGNED_TO5.SelectedValue = (string)dr["Assigned_To5"];
ASSIGNED_TO6.SelectedValue = (string)dr["Assigned_To6"];
ASSIGNED_TO7.SelectedValue = (string)dr["Assigned_To7"];
ASSIGNED_TO8.SelectedValue = (string)dr["Assigned_To8"];
ASSIGNED_TO9.SelectedValue = (string)dr["Assigned_To9"];*/
Priority_Level.SelectedValue = (string)dr["Priority_Level"];
}
myConnection.Close();
}