private DataTable LoadData() { DataTable dt = new DataTable(); if (IsPostBack && Session["dtAORAddSubTask"] != null) { dt = (DataTable)Session["dtAORAddSubTask"]; } else { dt = WorkloadItem.WorkItem_GetTaskList(workItemID: TaskID, showArchived: 0, showBacklog: false, statusList: SelectedStatuses, systemList: SelectedSystems); } // apply status filters Session["dtAORAddSubTask"] = dt; return(dt); }
private void loadTasks() { DataTable dt = null; if (_refreshData || Session["dtTask"] == null) { dt = WorkloadItem.WorkItem_GetTaskList(workItemID: this.WorkItemID); HttpContext.Current.Session["dtTask"] = dt; } else { dt = (DataTable)HttpContext.Current.Session["dtWorkItem"]; } if (dt != null) { dt.Columns["AssignedResource"].SetOrdinal(dt.Columns["ACTUALENDDATE"].Ordinal); dt.Columns["Status"].SetOrdinal(dt.Columns["COMPLETIONPERCENT"].Ordinal); this.DCC = dt.Columns; } gridTask.DataSource = dt; gridTask.DataBind(); }
public static string LoadFilteredEntity(string entityType, string idField, string columnName, string textField, string existingValueFilter, string filterField, string filterFieldIDs) { DataTable dtNew = new DataTable(); DataTable dt = new DataTable(); int AOR_ID = 0; try { switch (entityType.ToUpper()) { case "AOR": dt = AOR.AORList_Get(AORID: AOR_ID); if (filterFieldIDs.Length > 0) { dt.DefaultView.RowFilter = filterField + " IN (" + filterFieldIDs + ")"; dt = dt.DefaultView.ToTable(); } dt.DefaultView.RowFilter = idField + " IN (" + existingValueFilter + ")"; dtNew = dt.DefaultView.ToTable(distinct: true, columnNames: new string[] { "AOR #", "AOR Name" }); dtNew.Columns["AOR #"].ColumnName = "valueField"; dtNew.Columns["AOR Name"].ColumnName = "textField"; break; case "CR": dt = AOR.AORCRList_Get(AORID: AOR_ID, AORReleaseID: 0, CRID: 0); if (filterFieldIDs.Length > 0) { dt.DefaultView.RowFilter = filterField + " IN (" + filterFieldIDs + ")"; dt = dt.DefaultView.ToTable(); } dt.DefaultView.RowFilter = idField + " IN (" + existingValueFilter + ")"; dtNew = dt.DefaultView.ToTable(distinct: true, columnNames: new string[] { "CR_ID", "CR Customer Title" }); dtNew.Columns["CR_ID"].ColumnName = "valueField"; dtNew.Columns["CR Customer Title"].ColumnName = "textField"; break; case "PRIMARYTASK": dt = AOR.AORTaskList_Get(AORID: AOR_ID, AORReleaseID: 0); if (filterFieldIDs.Length > 0) { dt.DefaultView.RowFilter = filterField + " IN (" + filterFieldIDs + ")"; dt = dt.DefaultView.ToTable(); } dt.DefaultView.RowFilter = idField + " IN (" + existingValueFilter + ")"; dtNew = dt.DefaultView.ToTable(distinct: true, columnNames: new string[] { "Task #", "Title" }); dtNew.Columns["Task #"].ColumnName = "valueField"; dtNew.Columns["Title"].ColumnName = "textField"; break; case "SUBTASK": dt = WorkloadItem.WorkItem_GetTaskList(workItemID: 0, showArchived: 0, showBacklog: false); if (filterFieldIDs.Length > 0) { dt.DefaultView.RowFilter = filterField + " IN (" + filterFieldIDs + ")"; dt = dt.DefaultView.ToTable(); } dt.DefaultView.RowFilter = idField + " IN (" + existingValueFilter + ")"; dtNew = dt.DefaultView.ToTable(distinct: true, columnNames: new string[] { "WORKITEMID", "TASK_NUMBER", "WORKITEM_TASKID", "Title" }); dtNew.Columns["WORKITEMID"].ColumnName = "WORKITEMID"; dtNew.Columns["TASK_NUMBER"].ColumnName = "TASK_NUMBER"; dtNew.Columns["WORKITEM_TASKID"].ColumnName = "valueField"; dtNew.Columns["Title"].ColumnName = "textField"; break; } dtNew.DefaultView.Sort = "textField"; dtNew = dtNew.DefaultView.ToTable(); } catch (Exception ex) { LogUtility.LogException(ex); } return(JsonConvert.SerializeObject(dtNew, Newtonsoft.Json.Formatting.None)); }
public static string LoadEntityFields(string entityType) { DataTable dtNew = new DataTable(); DataColumnCollection DCC; Dictionary <string, GridColsColumn> _gridColumns = new Dictionary <string, GridColsColumn>(); GridCols _columnData = new GridCols(); DataTable dt = new DataTable(); int AOR_ID = 0; bool isVisible = false; string dbName = string.Empty, displayName = string.Empty, idField = string.Empty; var ordered = _gridColumns.Keys.OrderBy(k => _gridColumns[k].DisplayName).ToList(); try { switch (entityType.ToUpper()) { case "AOR": dt = AOR.AORList_Get(AORID: AOR_ID); _gridColumns = new Dictionary <string, GridColsColumn>(); GridColsColumn column = new GridColsColumn(); dbName = string.Empty; displayName = string.Empty; idField = string.Empty; isVisible = false; foreach (DataColumn gridColumn in dt.Columns) { column = new GridColsColumn(); displayName = gridColumn.ColumnName; idField = gridColumn.ColumnName; isVisible = false; switch (gridColumn.ColumnName) { //case "Current Release": // displayName = "Current Release"; // idField = "ProductVersion_ID"; // isVisible = true; // break; case "Workload Allocation": displayName = "Workload Allocation"; idField = "WorkloadAllocation_ID"; isVisible = true; break; } if (isVisible) { column.ColumnName = gridColumn.ColumnName; column.DisplayName = displayName; column.Visible = isVisible; column.SortName = idField; _gridColumns.Add(column.DisplayName, column); } } //Initialize the columnData _columnData.Initialize(ref dt, ";", "~", "|"); dtNew.Columns.Add("valueField"); dtNew.Columns.Add("textField"); dtNew.Columns.Add("id_field"); ordered = _gridColumns.Keys.OrderBy(k => _gridColumns[k].DisplayName).ToList(); foreach (string key in ordered) { GridColsColumn col = _gridColumns[key]; if (col.Visible) { DataRow dr = dtNew.NewRow(); dr[0] = col.ColumnName; dr[1] = col.DisplayName; dr[2] = col.SortName; dtNew.Rows.Add(dr); } } break; case "CR": dt = AOR.AORCRList_Get(AORID: AOR_ID, AORReleaseID: 0, CRID: 0); _gridColumns = new Dictionary <string, GridColsColumn>(); column = new GridColsColumn(); dbName = string.Empty; displayName = string.Empty; idField = string.Empty; isVisible = false; foreach (DataColumn gridColumn in dt.Columns) { column = new GridColsColumn(); displayName = gridColumn.ColumnName; idField = gridColumn.ColumnName; isVisible = false; switch (gridColumn.ColumnName) { case "Contract": displayName = "Contract"; idField = "Contract_ID"; isVisible = true; break; case "Websystem": displayName = "Websystem"; idField = "Websystem_ID"; isVisible = false; break; case "Related Release": displayName = "Related Release"; idField = "RelatedRelease_ID"; isVisible = false; break; case "Status": displayName = "CR Coordination"; idField = "Status_ID"; isVisible = true; break; case "CyberISMT": displayName = "Cyber/ISMT"; idField = "CyberISMT_ID"; isVisible = false; break; } if (isVisible) { column.ColumnName = gridColumn.ColumnName; column.DisplayName = displayName; column.Visible = isVisible; column.SortName = idField; _gridColumns.Add(column.DisplayName, column); } } //Initialize the columnData _columnData.Initialize(ref dt, ";", "~", "|"); dtNew.Columns.Add("valueField"); dtNew.Columns.Add("textField"); dtNew.Columns.Add("id_field"); ordered = _gridColumns.Keys.OrderBy(k => _gridColumns[k].DisplayName).ToList(); foreach (string key in ordered) { GridColsColumn col = _gridColumns[key]; if (col.Visible) { DataRow dr = dtNew.NewRow(); dr[0] = col.ColumnName; dr[1] = col.DisplayName; dr[2] = col.SortName; dtNew.Rows.Add(dr); } } break; case "PRIMARYTASK": dt = AOR.AORTaskList_Get(AORID: AOR_ID, AORReleaseID: 0); // dt = WorkloadItem.WorkItemList_Get(workRequestID: 0 //, showArchived: 0 //, columnListOnly: 0 //, myData: false); _gridColumns = new Dictionary <string, GridColsColumn>(); column = new GridColsColumn(); dbName = string.Empty; displayName = string.Empty; idField = string.Empty; isVisible = false; foreach (DataColumn gridColumn in dt.Columns) { column = new GridColsColumn(); displayName = gridColumn.ColumnName; idField = gridColumn.ColumnName; isVisible = false; switch (gridColumn.ColumnName) { case "System(Task)": displayName = "System(Task)"; idField = "WTS_SYSTEM_ID"; isVisible = true; break; case "Production Status": displayName = "Production Status"; idField = "ProductionStatus_ID"; isVisible = true; break; //case "Product Version": // displayName = "Product Version"; // idField = "ProductVersion_ID"; // isVisible = true; // break; case "Priority": displayName = "Priority"; idField = "PRIORITY_ID"; isVisible = true; break; case "Primary Resource": displayName = "Primary Resource"; idField = "PrimaryTechResource_ID"; isVisible = true; break; case "Assigned To": displayName = "Assigned To"; idField = "AssignedTo_ID"; isVisible = true; break; case "Status": displayName = "Status"; idField = "STATUS_ID"; isVisible = true; break; case "Percent Complete": displayName = "Percent Complete"; idField = "PercentComplete_ID"; isVisible = false; break; } if (isVisible) { column.ColumnName = gridColumn.ColumnName; column.DisplayName = displayName; column.Visible = isVisible; column.SortName = idField; _gridColumns.Add(column.DisplayName, column); } } //Initialize the columnData _columnData.Initialize(ref dt, ";", "~", "|"); dtNew.Columns.Add("valueField"); dtNew.Columns.Add("textField"); dtNew.Columns.Add("id_field"); ordered = _gridColumns.Keys.OrderBy(k => _gridColumns[k].DisplayName).ToList(); foreach (string key in ordered) { GridColsColumn col = _gridColumns[key]; if (col.Visible) { DataRow dr = dtNew.NewRow(); dr[0] = col.DisplayName; dr[1] = col.ColumnName; dr[2] = col.SortName; dtNew.Rows.Add(dr); } } break; case "SUBTASK": //dt = AOR.AORTaskList_Get(AORID: AOR_ID, AORReleaseID: 0); dt = WorkloadItem.WorkItem_GetTaskList(workItemID: 0, showArchived: 0, showBacklog: false); _gridColumns = new Dictionary <string, GridColsColumn>(); column = new GridColsColumn(); dbName = string.Empty; displayName = string.Empty; idField = string.Empty; isVisible = false; foreach (DataColumn gridColumn in dt.Columns) { column = new GridColsColumn(); displayName = gridColumn.ColumnName; idField = gridColumn.ColumnName; isVisible = false; switch (gridColumn.ColumnName) { case "AssignedResource": displayName = "Assigned To"; idField = "ASSIGNEDRESOURCEID"; isVisible = true; break; case "Production Status": displayName = "Production Status"; idField = "ProductionStatus_ID"; isVisible = true; break; //case "Product Version": // displayName = "Product Version"; // idField = "ProductVersion_ID"; // isVisible = true; // break; case "Priority": displayName = "Priority"; idField = "PRIORITY_ID"; isVisible = true; break; case "Primary Resource": displayName = "Primary Resource"; idField = "PrimaryTechResource_ID"; isVisible = true; break; case "Assigned To": displayName = "Assigned To"; idField = "AssignedTo_ID"; isVisible = true; break; case "Status": displayName = "Status"; idField = "STATUS_ID"; isVisible = true; break; case "Percent Complete": displayName = "Percent Complete"; idField = "PercentComplete_ID"; isVisible = false; break; } if (isVisible) { column.ColumnName = gridColumn.ColumnName; column.DisplayName = displayName; column.Visible = isVisible; column.SortName = idField; _gridColumns.Add(column.DisplayName, column); } } //Initialize the columnData _columnData.Initialize(ref dt, ";", "~", "|"); dtNew.Columns.Add("valueField"); dtNew.Columns.Add("textField"); dtNew.Columns.Add("id_field"); ordered = _gridColumns.Keys.OrderBy(k => _gridColumns[k].DisplayName).ToList(); foreach (string key in ordered) { GridColsColumn col = _gridColumns[key]; if (col.Visible) { DataRow dr = dtNew.NewRow(); dr[0] = col.ColumnName; dr[1] = col.DisplayName; dr[2] = col.SortName; dtNew.Rows.Add(dr); } } break; } } catch (Exception ex) { LogUtility.LogException(ex); } return(JsonConvert.SerializeObject(dtNew, Newtonsoft.Json.Formatting.None)); }
public static string LoadExistingValues(string entityType, string idField, string columnName, string textField, string filterField, string existingValueFilter) { Dictionary <string, string> result = new Dictionary <string, string>() { { "loaded", "false" } , { "CurrentCount", "0" } , { "CurrentOptions", "" } , { "NewCount", "0" } , { "NewOptions", "" } , { "error", "" } }; bool loaded = false; int currentCount = 0, newCount = 0; string errorMsg = string.Empty; int AOR_ID = 0; DataTable dt = null, dtCurrentOptions = null, dtNewValues = null; try { switch (entityType.ToUpper()) { case "AOR": dt = AOR.AORList_Get(AORID: AOR_ID); break; case "CR": dt = AOR.AORCRList_Get(AORID: AOR_ID, AORReleaseID: 0, CRID: 0); break; case "PRIMARYTASK": dt = AOR.AORTaskList_Get(AORID: AOR_ID, AORReleaseID: 0); break; case "SUBTASK": dt = WorkloadItem.WorkItem_GetTaskList(workItemID: 0, showArchived: 0, showBacklog: false); break; } if (existingValueFilter.Length > 0) { dt.DefaultView.RowFilter = filterField + " IN (" + existingValueFilter + ")"; } if (entityType.ToUpper() == "AOR") { dt.DefaultView.RowFilter = "[Workload Allocation Archive] IN (False)"; } dtCurrentOptions = entityType.ToUpper() == "AOR" ? dt.DefaultView.ToTable(distinct: true, columnNames: new string[] { idField, columnName, "Workload Allocation Archive" }) : dt.DefaultView.ToTable(distinct: true, columnNames: new string[] { idField, columnName }); if (dtCurrentOptions != null) { dtCurrentOptions.Columns[idField].ColumnName = "valueField"; dtCurrentOptions.Columns[columnName].ColumnName = "textField"; } dtCurrentOptions.DefaultView.Sort = "textField"; dtCurrentOptions = dtCurrentOptions.DefaultView.ToTable(); currentCount = dtCurrentOptions.Rows.Count; try { switch (entityType.ToUpper()) { case "AOR": switch (columnName.ToUpper()) { case "CURRENT RELEASE": dtNewValues = MasterData.ProductVersionList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["ProductVersionID"].ColumnName = "valueField"; dtNewValues.Columns["ProductVersion"].ColumnName = "textField"; } break; case "WORKLOAD ALLOCATION": dtNewValues = MasterData.WorkloadAllocationList_Get(includeArchive: 0); if (dtNewValues != null) { dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["WorkloadAllocationID"].ColumnName = "valueField"; dtNewValues.Columns["WorkloadAllocation"].ColumnName = "textField"; } break; default: dtNewValues = null; break; } break; case "CR": switch (columnName.ToUpper()) { case "CONTRACT": dtNewValues = MasterData.ContractList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["ContractID"].ColumnName = "valueField"; dtNewValues.Columns["Contract"].ColumnName = "textField"; } break; case "STATUS": dtNewValues = MasterData.StatusList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues.DefaultView.RowFilter = "StatusType = 'AORCR'"; dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["StatusID"].ColumnName = "valueField"; dtNewValues.Columns["Status"].ColumnName = "textField"; } break; case "WEBSYSTEM": dtNewValues = MasterData.SystemList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["WTS_SYSTEMID"].ColumnName = "valueField"; dtNewValues.Columns["WTS_SYSTEM"].ColumnName = "textField"; } break; default: dtNewValues = null; break; } break; case "PRIMARYTASK": switch (columnName.ToUpper()) { case "ASSIGNED TO": dtNewValues = UserManagement.LoadUserList(organizationId: 0, excludeDeveloper: false, loadArchived: false, userNameSearch: ""); if (dtNewValues != null) { dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["WTS_RESOURCEID"].ColumnName = "valueField"; dtNewValues.Columns["UserName"].ColumnName = "textField"; } break; case "PRIMARY RESOURCE": dtNewValues = UserManagement.LoadUserList(organizationId: 0, excludeDeveloper: false, loadArchived: false, userNameSearch: ""); if (dtNewValues != null) { dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["WTS_RESOURCEID"].ColumnName = "valueField"; dtNewValues.Columns["UserName"].ColumnName = "textField"; } break; case "PRIORITY": dtNewValues = MasterData.PriorityList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues.DefaultView.RowFilter = "PriorityType = 'Work Item'"; dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["PriorityID"].ColumnName = "valueField"; dtNewValues.Columns["Priority"].ColumnName = "textField"; } break; case "PRODUCTION STATUS": dtNewValues = MasterData.StatusList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues.DefaultView.RowFilter = "StatusType = 'Production'"; dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["StatusID"].ColumnName = "valueField"; dtNewValues.Columns["Status"].ColumnName = "textField"; } break; case "STATUS": dtNewValues = MasterData.StatusList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues.DefaultView.RowFilter = "StatusType = 'Work'"; dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["StatusID"].ColumnName = "valueField"; dtNewValues.Columns["Status"].ColumnName = "textField"; } break; case "PRODUCT VERSION": dtNewValues = MasterData.ProductVersionList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["ProductVersionID"].ColumnName = "valueField"; dtNewValues.Columns["ProductVersion"].ColumnName = "textField"; } break; case "SYSTEM(TASK)": dtNewValues = MasterData.SystemList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["WTS_SYSTEMID"].ColumnName = "valueField"; dtNewValues.Columns["WTS_SYSTEM"].ColumnName = "textField"; } break; //case "PERCENT COMPLETE": // dtNewValues = MasterData.ProductVersionList_Get(includeArchive: false); // if (dtNewValues != null) // { // dtNewValues = dtNewValues.DefaultView.ToTable(); // dtNewValues.Columns["ProductVersionID"].ColumnName = "valueField"; // dtNewValues.Columns["ProductVersion"].ColumnName = "textField"; // } //break; default: dtNewValues = null; break; } break; case "SUBTASK": switch (columnName.ToUpper()) { case "ASSIGNEDRESOURCE": dtNewValues = UserManagement.LoadUserList(organizationId: 0, excludeDeveloper: false, loadArchived: false, userNameSearch: ""); if (dtNewValues != null) { dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["WTS_RESOURCEID"].ColumnName = "valueField"; dtNewValues.Columns["UserName"].ColumnName = "textField"; } break; case "PRIMARY RESOURCE": dtNewValues = UserManagement.LoadUserList(organizationId: 0, excludeDeveloper: false, loadArchived: false, userNameSearch: ""); if (dtNewValues != null) { dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["WTS_RESOURCEID"].ColumnName = "valueField"; dtNewValues.Columns["UserName"].ColumnName = "textField"; } break; case "PRIORITY": dtNewValues = MasterData.PriorityList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues.DefaultView.RowFilter = "PriorityType = 'Work Item'"; dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["PriorityID"].ColumnName = "valueField"; dtNewValues.Columns["Priority"].ColumnName = "textField"; } break; case "PRODUCTION STATUS": dtNewValues = MasterData.StatusList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues.DefaultView.RowFilter = "StatusType = 'Production'"; dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["StatusID"].ColumnName = "valueField"; dtNewValues.Columns["Status"].ColumnName = "textField"; } break; case "STATUS": dtNewValues = MasterData.StatusList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues.DefaultView.RowFilter = "StatusType = 'Work'"; dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["StatusID"].ColumnName = "valueField"; dtNewValues.Columns["Status"].ColumnName = "textField"; } break; case "PRODUCT VERSION": dtNewValues = MasterData.ProductVersionList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["ProductVersionID"].ColumnName = "valueField"; dtNewValues.Columns["ProductVersion"].ColumnName = "textField"; } break; case "SYSTEM(TASK)": dtNewValues = MasterData.SystemList_Get(includeArchive: false); if (dtNewValues != null) { dtNewValues = dtNewValues.DefaultView.ToTable(); dtNewValues.Columns["WTS_SYSTEMID"].ColumnName = "valueField"; dtNewValues.Columns["WTS_SYSTEM"].ColumnName = "textField"; } break; //case "PERCENT COMPLETE": // dtNewValues = MasterData.ProductVersionList_Get(includeArchive: false); // if (dtNewValues != null) // { // dtNewValues = dtNewValues.DefaultView.ToTable(); // dtNewValues.Columns["ProductVersionID"].ColumnName = "valueField"; // dtNewValues.Columns["ProductVersion"].ColumnName = "textField"; // } //break; default: dtNewValues = null; break; } break; } } catch (Exception ex) { LogUtility.LogException(ex); dtNewValues = null; } if (dtNewValues != null && dtNewValues.Rows.Count > 0) { dtNewValues.DefaultView.Sort = "textField"; dtNewValues = dtNewValues.DefaultView.ToTable(distinct: true, columnNames: new string[] { "valueField", "textField" }); if (dtNewValues != null) { newCount = dtNewValues.Rows.Count; } } loaded = true; } catch (Exception ex) { LogUtility.LogException(ex); loaded = false; currentCount = 0; errorMsg = ex.Message; } result["loaded"] = loaded.ToString(); result["CurrentCount"] = currentCount.ToString(); result["NewCount"] = newCount.ToString(); result["error"] = errorMsg; if (dtCurrentOptions != null) { result["CurrentOptions"] = JsonConvert.SerializeObject(dtCurrentOptions, Formatting.None); } if (dtCurrentOptions != null) { result["NewOptions"] = JsonConvert.SerializeObject(dtNewValues, Formatting.None); } return(JsonConvert.SerializeObject(result, Formatting.None)); }
void grdWorkload_GridRowDataBound(object sender, GridViewRowEventArgs e) { columnData.SetupGridBody(e.Row); GridViewRow row = e.Row; formatColumnDisplay(ref row); string itemId = row.Cells[DCC.IndexOf("ItemID")].Text.Trim(); string workTypeId = row.Cells[DCC.IndexOf("WorkTypeID")].Text.Trim(); row.Attributes.Add("ITEMID", itemId); row.Attributes.Add("WorkTypeID", workTypeId); string title = row.Cells[DCC["TITLE"].Ordinal].Text.Trim(); row.Cells[DCC["ItemID"].Ordinal].Controls.Add(createEditLink_WorkItem(itemId, Server.HtmlDecode(title))); row.Cells[DCC["ItemID"].Ordinal].ToolTip = Server.HtmlDecode(title); row.Cells[DCC["TITLE"].Ordinal].ToolTip = Server.HtmlDecode(title); //add QM controls if (this.CanEditWorkItem) { row.Cells[DCC.IndexOf("WORKREQUEST")].Controls.Add(WTSUtility.CreateGridDropdownList("WORKREQUEST", itemId, row.Cells[DCC.IndexOf("WORKREQUEST")].Text.Replace(" ", " ").Trim(), row.Cells[DCC.IndexOf("WORKREQUESTID")].Text.Replace(" ", " ").Trim(), 180)); row.Cells[DCC.IndexOf("WORKITEMTYPE")].Controls.Add(WTSUtility.CreateGridDropdownList("WORKITEMTYPE", itemId, row.Cells[DCC.IndexOf("WORKITEMTYPE")].Text.Replace(" ", " ").Trim(), row.Cells[DCC.IndexOf("WORKITEMTYPEID")].Text.Replace(" ", " ").Trim(), 0)); row.Cells[DCC.IndexOf("Websystem")].Controls.Add(WTSUtility.CreateGridDropdownList("Websystem", itemId, Server.HtmlDecode(row.Cells[DCC.IndexOf("Websystem")].Text).Trim(), row.Cells[DCC.IndexOf("WTS_SYSTEMID")].Text.Replace(" ", " ").Trim(), 120)); row.Cells[DCC.IndexOf("ALLOCATION")].Controls.Add(WTSUtility.CreateGridDropdownList("ALLOCATION", itemId, row.Cells[DCC.IndexOf("ALLOCATION")].Text.Replace(" ", " ").Trim(), row.Cells[DCC.IndexOf("ALLOCATIONID")].Text.Replace(" ", " ").Trim(), 195)); //row.Cells[DCC.IndexOf("Version")].Controls.Add(WTSUtility.CreateGridDropdownList("ProductVersion", itemId, row.Cells[DCC.IndexOf("Version")].Text.Replace(" ", " ").Trim(), row.Cells[DCC.IndexOf("ProductVersionID")].Text.Replace(" ", " ").Trim(), 0)); row.Cells[DCC.IndexOf("PRIORITY")].Controls.Add(WTSUtility.CreateGridDropdownList("PRIORITY", itemId, row.Cells[DCC.IndexOf("PRIORITY")].Text.Replace(" ", " ").Trim(), row.Cells[DCC.IndexOf("PRIORITYID")].Text.Replace(" ", " ").Trim(), 0)); row.Cells[DCC.IndexOf("Primary_Developer")].Controls.Add(WTSUtility.CreateGridDropdownList("Primary_Developer", itemId, row.Cells[DCC.IndexOf("Primary_Developer")].Text.Replace(" ", " ").Trim(), row.Cells[DCC.IndexOf("PRIMARYRESOURCEID")].Text.Replace(" ", " ").Trim(), 0)); row.Cells[DCC.IndexOf("Assigned")].Controls.Add(WTSUtility.CreateGridDropdownList("Assigned", itemId, row.Cells[DCC.IndexOf("Assigned")].Text.Replace(" ", " ").Trim(), row.Cells[DCC.IndexOf("ASSIGNEDRESOURCEID")].Text.Replace(" ", " ").Trim(), 0)); row.Cells[DCC.IndexOf("SubmittedBy")].Text = row.Cells[DCC.IndexOf("SubmittedBy")].Text.Trim(); // +"<br/>" + row.Cells[DCC.IndexOf("CREATEDDATE")].Text.Trim(); row.Cells[DCC.IndexOf("WorkType")].Controls.Add(WTSUtility.CreateGridDropdownList("WorkType", itemId, row.Cells[DCC.IndexOf("WorkType")].Text.Replace(" ", " ").Trim(), row.Cells[DCC.IndexOf("WorkTypeID")].Text.Replace(" ", " ").Trim(), 0)); bool allow = true; string status = row.Cells[DCC.IndexOf("STATUS")].Text.Replace(" ", " ").Trim(); if (status.ToUpper() == "NEW" || status.ToUpper() == "ON HOLD" || status.ToUpper() == "IN PROGRESS") { int WorkItemID = 0; int.TryParse(itemId, out WorkItemID); if (WorkItemID > 0) { DataTable dt = WorkloadItem.WorkItem_GetTaskList(workItemID: WorkItemID); if (dt != null) { try { int Sub_Task_New_Count = (from r in dt.AsEnumerable() where r.Field <string>("STATUS").Trim().ToUpper() == "NEW" select r).Count(); if (status.ToUpper() == "NEW" && dt.Rows.Count == Sub_Task_New_Count) { allow = false; } int Sub_Task_OnHold_Count = (from r in dt.AsEnumerable() where r.Field <string>("STATUS").Trim().ToUpper() == "ON HOLD" select r).Count(); if (status.ToUpper() == "ON HOLD" && dt.Rows.Count == Sub_Task_OnHold_Count) { allow = false; } int Sub_Task_Closed_Count = (from r in dt.AsEnumerable() where r.Field <string>("STATUS").Trim().ToUpper() == "CLOSED" select r).Count(); if (status.ToUpper() == "IN PROGRESS" && dt.Rows.Count != Sub_Task_Closed_Count) { allow = false; } } catch (Exception) { } } } } row.Cells[DCC.IndexOf("STATUS")].Controls.Add(WTSUtility.CreateGridDropdownList("STATUS", itemId, status, row.Cells[DCC.IndexOf("STATUSID")].Text.Replace(" ", " ").Trim(), 0)); try { DropDownList ddlStatus = (DropDownList)row.Cells[DCC.IndexOf("STATUS")].Controls[0]; if (!allow) { ddlStatus.Enabled = false; } } catch (Exception) { } row.Cells[DCC.IndexOf("Progress")].Controls.Add(WTSUtility.CreateGridDropdownList("Progress", itemId, row.Cells[DCC.IndexOf("Progress")].Text.Replace(" ", " ").Trim(), row.Cells[DCC.IndexOf("Progress")].Text.Replace(" ", " ").Trim(), 0)); bool check = false; if (row.Cells[DCC.IndexOf("Production")].HasControls() && row.Cells[DCC.IndexOf("Production")].Controls[0] is CheckBox) { check = ((CheckBox)row.Cells[DCC.IndexOf("Production")].Controls[0]).Checked; } else if (row.Cells[DCC.IndexOf("Production")].Text == "1") { check = true; } row.Cells[DCC.IndexOf("Production")].Controls.Clear(); row.Cells[DCC.IndexOf("Production")].Controls.Add(WTSUtility.CreateGridCheckBox("Production", itemId, check)); check = false; if (row.Cells[DCC.IndexOf("ARCHIVE")].HasControls() && row.Cells[DCC.IndexOf("ARCHIVE")].Controls[0] is CheckBox) { check = ((CheckBox)row.Cells[DCC.IndexOf("ARCHIVE")].Controls[0]).Checked; } else if (row.Cells[DCC.IndexOf("ARCHIVE")].Text == "1") { check = true; } row.Cells[DCC.IndexOf("ARCHIVE")].Controls.Clear(); row.Cells[DCC.IndexOf("ARCHIVE")].Controls.Add(WTSUtility.CreateGridCheckBox("ARCHIVE", itemId, check)); row.Cells[DCC.IndexOf("ProductionStatus")].Controls.Add(WTSUtility.CreateGridDropdownList("ProductionStatus", itemId, row.Cells[DCC.IndexOf("ProductionStatus")].Text.Replace(" ", " ").Trim(), row.Cells[DCC.IndexOf("ProductionStatusID")].Text.Replace(" ", " ").Trim(), 0)); } }
protected void Page_Load(object sender, EventArgs e) { this.CanEdit = UserManagement.UserCanEdit(WTSModuleOption.WorkItemTask); this.CanEditAOR = UserManagement.UserCanEdit(WTSModuleOption.AOR); this.CanEditWorkloadMGMT = UserManagement.UserCanEdit(WTSModuleOption.WorkloadMGMT); readQueryString(); LoadRelatedItemsMenu(); if (this.ReadOnly) { this.CanEdit = false; this.CanEditAOR = false; } loadLookupData(); if (this.WorkItem_TaskID > 0) { loadTask(); } else { WorkloadItem wi = WorkloadItem.WorkItem_GetObject(workItemID: this.WorkItemID); ListItem li = null; li = ddlAssignedTo.Items.FindByValue(wi.AssignedResourceID.ToString()); if (li == null) { int uID = 0; int.TryParse(wi.AssignedResourceID.ToString(), out uID); WTS_User u = new WTS_User(uID); u.Load(); li = new ListItem(u.First_Name + " " + u.Last_Name, wi.AssignedResourceID.ToString()); if (u.AORResourceTeam) { li.Attributes.Add("og", "Action Team"); DataTable dt = AOR.AORResourceTeamList_Get(AORID: 0, AORReleaseID: 0); dt.DefaultView.RowFilter = "ResourceTeamUserID = " + uID; dt = dt.DefaultView.ToTable(); if (dt.Rows.Count > 0) { li.Attributes.Add("aorid", dt.Rows[0]["AORID"].ToString()); } ddlAssignedTo.Items.Insert(1, li); } else { ddlAssignedTo.Items.Insert(0, li); } } li.Selected = true; WTSUtility.SelectDdlItem(ddlPrimaryResource, wi.PrimaryResourceID.ToString(), ""); // 12817 - 30: WTSUtility.SelectDdlItem(ddlPrimaryBusResource, wi.PrimaryBusinessResourceID.ToString(), ""); WTSUtility.SelectDdlItem(ddlSecondaryResource, wi.SecondaryResourceID.ToString(), ""); WTSUtility.SelectDdlItem(ddlSecondaryBusResource, wi.SecondaryBusinessResourceID.ToString(), ""); WTSUtility.SelectDdlItem(ddlPriority, wi.PriorityID.ToString(), ""); //WTSUtility.SelectDdlItem(ddlHours_Planned, wi.EstimatedEffortID.ToString(), ""); WTSUtility.SelectDdlItem(ddlProductVersion, wi.ProductVersionID.ToString(), ""); this.lblProductVersion.Text = ddlProductVersion.SelectedItem.Text; this.SystemID = wi.WTS_SystemID; IsNew = true; this.txtWorkloadNumber.Text = this.WorkItemID.ToString() + " - NA"; DataTable parentTaskData = WorkloadItem.WorkItem_Get(workItemID: WorkItemID); txtParentTitle.Text = HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["TITLE"].ToString().Replace(" ", "").Trim())); txtResourceGroup.Text = HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["WorkType"].ToString().Replace(" ", "").Trim())); txtResourceGroup.Attributes.Add("ResourceGroupID", HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["WorkTypeID"].ToString()))); txtFunctionality.Text = HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["WorkloadGroup"].ToString().Replace(" ", "").Trim())); txtProductionStatus.Text = HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["ProductionStatus"].ToString().Replace(" ", "").Trim())); txtSystemTask.Text = HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["WTS_SYSTEM"].ToString().Replace(" ", "").Trim())); txtContract.Text = HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["CONTRACT"].ToString().Replace(" ", "").Trim())); txtWorkloadAllocation.Text = HttpUtility.HtmlDecode(Uri.UnescapeDataString(parentTaskData.Rows[0]["WorkloadAllocation"].ToString().Replace(" ", "").Trim())); int workAreaID = 0, systemID = 0; int.TryParse(parentTaskData.Rows[0]["WorkAreaID"].ToString(), out workAreaID); int.TryParse(parentTaskData.Rows[0]["WTS_SYSTEMID"].ToString(), out systemID); WTSUtility.SelectDdlItem(ddlWorkItemType, parentTaskData.Rows[0]["WorkItemTypeID"].ToString(), parentTaskData.Rows[0]["WorkItemType"].ToString()); //dynamic filters = "{ 'System(Task)':{ 'value':'" + parentTaskData.Rows[0]["WTS_SYSTEMID"].ToString() + "','text':'" + parentTaskData.Rows[0]["WTS_SYSTEM"].ToString() + "'},'Work Area':{ 'value':'" + parentTaskData.Rows[0]["WorkAreaID"].ToString() + "','text':'" + parentTaskData.Rows[0]["WorkArea"].ToString() + "'}}"; //dynamic fields = JsonConvert.DeserializeObject<Dictionary<string, object>>(filters); //bool saved = Filtering.SaveWorkFilters(module: "RQMT", filterModule: "RQMT", filters: fields, myData: false, xml: ""); DataTable dtWorkArea = MasterData.WorkArea_SystemList_Get(workAreaID: workAreaID); string workAreaText = string.Empty; if (dtWorkArea != null && dtWorkArea.Rows.Count > 1) { workAreaText = dtWorkArea.Rows[1]["ApprovedPriority"].ToString() + " - " + dtWorkArea.Rows[1]["WorkArea"].ToString(); } txtWorkArea.Text = HttpUtility.HtmlDecode(workAreaText.Replace(" ", "").Trim()); DataTable dtAORs = AOR.AORTaskAORList_Get(TaskID: WorkItemID); if (dtAORs != null && dtAORs.Rows.Count > 0) { foreach (DataRow dr in dtAORs.Rows) { if (dr["AORWorkTypeID"].ToString() == "1") { txtWorkloadAOR.Text = dr["AORID"].ToString() + " (" + dr["Abbreviation"].ToString() + ") - " + dr["AORName"].ToString(); txtWorkloadAOR.ToolTip = txtWorkloadAOR.Text; } if (dr["AORWorkTypeID"].ToString() == "2") { txtReleaseAOR.Text = dr["AORID"].ToString() + " (" + dr["Abbreviation"].ToString() + ") - " + dr["AORName"].ToString(); txtReleaseAOR.ToolTip = txtReleaseAOR.Text; ParentRelAORReleaseID = dr["AORReleaseID"].ToString(); } } } ListItem item = ddlStatus.Items.FindByText("New"); if (item != null) { item.Selected = true; } filterStatuses(true); if (wi != null) { int maxSort = 0, maxBusRank = 0; DataTable dt = WorkloadItem.WorkItem_GetTaskList(wi.WorkItemID, 1); if (dt != null && dt.Rows.Count > 0) { int sort = 0; foreach (DataRow row in dt.Rows) { int.TryParse(row["SORT_ORDER"].ToString(), out sort); if (sort > maxSort) { maxSort = sort; } int.TryParse(row["BusinessRank"].ToString(), out sort); if (sort > maxBusRank) { maxBusRank = sort; } } } txtSortOrder.Text = (maxSort + 1).ToString(); txtBusinessRank.Text = (maxBusRank + 1).ToString(); } item = ddlAssignedToRank.Items.FindByText("5 - Unprioritized Workload"); if (item != null) { item.Selected = true; } txtBusinessRank.Text = "99"; } LoadAORs(); }
private bool ExportExcel(DataTable dt) { bool success = false; string errorMsg = string.Empty; try { Workbook wb = new Workbook(FileFormatType.Xlsx); Worksheet ws = wb.Worksheets[0]; StyleFlag flag = new StyleFlag() { All = true }; Aspose.Cells.Style style = new Aspose.Cells.Style(); Aspose.Cells.Style style2 = new Aspose.Cells.Style(); Aspose.Cells.Style style3 = new Aspose.Cells.Style(); style.Pattern = BackgroundType.Solid; style.ForegroundColor = System.Drawing.ColorTranslator.FromHtml("#E6E6E6"); style2.Pattern = BackgroundType.Solid; style2.ForegroundColor = System.Drawing.ColorTranslator.FromHtml("LightGreen"); style3.Pattern = BackgroundType.Solid; style3.ForegroundColor = System.Drawing.ColorTranslator.FromHtml("LightBlue"); DataTable dtDrilldown = WorkloadItem.WorkItemList_Get(); DataTable dtExcel = new DataTable(); RemoveExcelColumns(ref dt); RenameExcelColumns(ref dt); dtExcel = dt.Clone(); for (int i = 0; i <= dtExcel.Columns.Count - 1; i++) { dtExcel.Columns[i].DataType = typeof(string); dtExcel.Columns[i].MaxLength = 255; dtExcel.Columns[i].AllowDBNull = true; } foreach (DataRow dr in dt.Rows) { dtExcel.ImportRow(dr); if (dtDrilldown != null && dtDrilldown.Rows.Count > 0) { DataTable dtTemp = new DataTable(); dtTemp = dtDrilldown.Copy(); dtTemp.DefaultView.RowFilter = "WORKREQUESTID = " + dr["Request #"]; dtTemp = dtTemp.DefaultView.ToTable(); int count = 0; foreach (DataRow drTemp in dtTemp.Rows) { if (count == 0) { dtExcel.Rows.Add("", "#", "System", "Status", "Description", "Allocation Assignment", "Production", "Version", "Priority", "Primary Analyst", "Primary Developer", "Assigned", "Progress", ""); } dtExcel.Rows.Add("", drTemp["ItemID"].ToString(), drTemp["Websystem"], drTemp["STATUS"], drTemp["TITLE"], drTemp["ALLOCATION"], (drTemp["Production"].ToString().Trim().ToUpper() == "TRUE" ? "Yes" : "No"), drTemp["Version"], drTemp["PRIORITY"], drTemp["Primary_Analyst"], drTemp["Primary_Developer"], drTemp["Assigned"], drTemp["Progress"].ToString(), ""); int itemID = 0; int.TryParse(drTemp["ItemID"].ToString(), out itemID); if (itemID > 0) { DataTable dtDrilldownTask = WorkloadItem.WorkItem_GetTaskList(workItemID: itemID, showArchived: _showArchived); if (dtDrilldownTask != null && dtDrilldownTask.Rows.Count > 0) { int countTask = 0; foreach (DataRow drChild in dtDrilldownTask.Rows) { if (countTask == 0) { dtExcel.Rows.Add("", "", "Task #", "Title", "Planned Start", "Actual Start", "Planned Hours", "Actual Hours", "Actual End", "Assigned", "Status", "Progress"); } dtExcel.Rows.Add("", "", drChild["WORKITEMID"].ToString() + " - " + drChild["TASK_NUMBER"].ToString(), drChild["Title"], String.Format("{0:M/d/yyyy}", drChild["ESTIMATEDSTARTDATE"].ToString()), String.Format("{0:M/d/yyyy}", drChild["ACTUALSTARTDATE"].ToString()), drChild["PLANNEDHOURS"].ToString(), drChild["ACTUALHOURS"].ToString(), String.Format("{0:M/d/yyyy}", drChild["ACTUALENDDATE"].ToString()), drChild["AssignedResource"], drChild["STATUS"], drChild["COMPLETIONPERCENT"].ToString()); countTask++; } } } count++; } } } string name = "Work Request"; ws.Cells.ImportDataTable(dtExcel, true, 0, 0, false, false); for (int j = 0; j <= ws.Cells.Rows.Count - 1; j++) { if (ws.Cells.Rows[j][0].Value == "Request #") { Range range = ws.Cells.CreateRange(j, 0, 1, 15); range.ApplyStyle(style, flag); } if (ws.Cells.Rows[j][1].Value == "#") { Range range = ws.Cells.CreateRange(j, 1, 1, 12); range.ApplyStyle(style2, flag); } if (ws.Cells.Rows[j][2].Value == "Task #") { Range range = ws.Cells.CreateRange(j, 2, 1, 10); range.ApplyStyle(style3, flag); } } //WTSUtility.FormatWorkbookHeader(ref wb, ref ws, 0, 0, 1, dt.Columns.Count); ws.AutoFitColumns(); MemoryStream ms = new MemoryStream(); wb.Save(ms, SaveFormat.Xlsx); Response.ContentType = "application/xlsx"; Response.AddHeader("content-disposition", "attachment; filename=" + name + ".xlsx"); Response.BinaryWrite(ms.ToArray()); Response.End(); success = true; } catch (Exception ex) { success = false; errorMsg += Environment.NewLine + ex.Message; } return(success); }