private void StepSortProcessGrid() { FmViewTDS dataSet = new FmViewTDS(); dataSet.LFS_FM_TYPE_VIEW_SORT.Merge(fmTypeViewSort, true); FmTypeViewSort model = new FmTypeViewSort(dataSet); // Update rows if (Session["fmTypeViewSortDummy"] == null) { foreach (GridViewRow row in grdSort.Rows) { int sortId = int.Parse(grdSort.DataKeys[row.RowIndex].Values["SortID"].ToString()); bool selected = ((CheckBox)row.FindControl("cbxSelected")).Checked; int order = 0; try { order = int.Parse(((DropDownList)row.FindControl("ddlOrder")).SelectedValue); } catch { order = 0; } model.Update(hdfFmType.Value, int.Parse(hdfCompanyId.Value), sortId, order, selected); } model.Table.AcceptChanges(); fmTypeViewSort = (FmViewTDS.LFS_FM_TYPE_VIEW_SORTDataTable)model.Table; Session["fmTypeViewSort"] = fmTypeViewSort; } }
/// <summary> /// GetSortForSql /// </summary> /// <returns>Sort for sql</returns> public string GetSortForSql() { string sort = ""; // process temp table DataRow[] dataRowOrder = Data.Tables["FmViewSortTemp"].Select("Deleted = 0", "Order_ ASC"); foreach (DataRow row in dataRowOrder) { if (!(((FmViewTDS.FmViewSortTempRow)row).Deleted)) { int order_ = ((FmViewTDS.FmViewSortTempRow)row).Order_; string fmType = ((FmViewTDS.FmViewSortTempRow)row).FmType; int companyId = ((FmViewTDS.FmViewSortTempRow)row).COMPANY_ID; int sortId = ((FmViewTDS.FmViewSortTempRow)row).SortID; FmTypeViewSort fmTypeViewSort = new FmTypeViewSort(); fmTypeViewSort.LoadByFmTypeSortId(fmType, companyId, sortId); FmTypeViewSortGateway fmTypeViewSortGateway = new FmTypeViewSortGateway(fmTypeViewSort.Data); string tableName = fmTypeViewSortGateway.GetTable_(fmType, companyId, sortId); string columnName = fmTypeViewSortGateway.GetColumn_(fmType, companyId, sortId); string conditionName = fmTypeViewSortGateway.GetName(fmType, companyId, sortId); if (fmType == "Services") { if (tableName == "LFS_FM_SERVICE") tableName = "LFS"; if (tableName == "LFS_FM_RULE") tableName = "LFR"; if (tableName == "LFS_FM_UNIT") tableName = "LFU"; if (conditionName == "Created By") tableName = "LEOwner"; if (conditionName == "Assigned To") tableName = "LEAssignedTo"; } if (fmType == "Units") { if (tableName == "LFS_FM_UNIT") { tableName = "FMU"; } else { if ((tableName == "LFS_FM_COMPANYLEVEL") && (columnName == "CompanyLevel")) { columnName = "Name"; tableName = "FMC"; } } } if (fmType == "Services") { if (columnName == "Number") { sort = sort + String.Format(" CASE WHEN 1 = IsNumeric({0}.{1}) THEN Cast({0}.{1} AS INT) END, ", tableName, columnName); } else { if (conditionName == "Problem Description") { sort = sort + string.Format(" CAST({0}.{1} AS nvarchar), ", tableName, columnName); } else { if (columnName == "Date") { sort = sort + " LFS.StartWorkDateTime DESC, "; } else { sort = sort + tableName + "." + columnName + ", "; } } } } if (fmType == "Units") { if (columnName == "Notes" || columnName == "Categories") { sort = sort + string.Format(" CAST({0}.{1} AS nvarchar), ", tableName, columnName); } else { sort = sort + tableName + "." + columnName + ", "; } } } } sort = sort.Substring(0, sort.Length - 2); return sort; }
private bool StepLogicNext() { Page.Validate("Logic"); if (Page.IsValid) { // Load FmViewTDS dataSet = new FmViewTDS(); dataSet.LFS_FM_TYPE_VIEW_SORT.Merge(fmTypeViewSort, true); FmTypeViewSort model = new FmTypeViewSort(dataSet); if (dataSet.LFS_FM_TYPE_VIEW_SORT.Rows.Count <= 0) { model.LoadByFmTypeInView(hdfFmType.Value, int.Parse(hdfCompanyId.Value), true); } // Store tables fmTypeViewSort = (FmViewTDS.LFS_FM_TYPE_VIEW_SORTDataTable)model.Table; Session["fmTypeViewSort"] = fmTypeViewSort; return true; } else { return false; } }
/// <summary> /// GetSortForSummary /// </summary> /// <returns>Sort clause</returns> public string GetSortForSummary() { string sort = ""; DataRow[] dataRowOrder = Data.Tables["FmViewSortTemp"].Select("Deleted = 0", "Order_ ASC"); foreach (DataRow row in dataRowOrder) { if (!(((FmViewTDS.FmViewSortTempRow)row).Deleted)) { string fmType = ((FmViewTDS.FmViewSortTempRow)row).FmType; int companyId = ((FmViewTDS.FmViewSortTempRow)row).COMPANY_ID; int sortId = ((FmViewTDS.FmViewSortTempRow)row).SortID; FmTypeViewSort fmTypeViewSort = new FmTypeViewSort(); fmTypeViewSort.LoadByFmTypeSortId(fmType, companyId, sortId); FmTypeViewSortGateway fmTypeViewSortGateway = new FmTypeViewSortGateway(fmTypeViewSort.Data); sort = sort + fmTypeViewSortGateway.GetName(fmType, companyId, sortId) + ", "; } } if (sort.Length > 2) { sort = sort.Substring(0, sort.Length - 2); } return sort; }