Beispiel #1
0
    protected void Page_Load(object sender, EventArgs e)
    {
        this.IsAdmin = UserManagement.UserIsInRole("Admin");
        this.CanEdit = UserManagement.UserCanEdit(WTSModuleOption.MasterData);
        this.CanView = (CanEdit || UserManagement.UserCanView(WTSModuleOption.MasterData));

        ReadQueryString();
        initControls();

        //Gather RQMTAttribute data for dropdown(s)
        if (Session["RQMTAttribute_Get"] == null)
        {
            dtRQMTAttribute = RQMT.RQMTAttribute_Get();
            Session["RQMTAttribute_Get"] = dtRQMTAttribute;
        }
        else
        {
            dtRQMTAttribute = (DataTable)Session["RQMTAttribute_Get"];
        }

        DataTable dt = new DataTable();

        dt = LoadData();

        matchAORSRWebSystems = SR.GetAORWebSystemsForWTSSystem(SYSTEM_ID);
        if (matchAORSRWebSystems.ToLower().IndexOf("wts") != -1)
        {
            matchAORSRWebSystems += ",wts"; // the aorsr forms of wts do not match the internal form, so we ensure that we get WTS results out of R&D WTS and other forms whenever a wts variant is present
        }

        grdData.DataSource = dt;
        grdData.DataBind();
    }
Beispiel #2
0
    private void LoadControls()
    {
        // suites ddl
        DataTable dtSuites = MasterData.SystemSuiteList_Get(0);

        PopulateDDLFromDataTable(ddlSuite, dtSuites, "WTS_SYSTEM_SUITEID", "WTS_SYSTEM_SUITE", null, null, false);
        SuiteOptions = CreateOptionStringFromDataTable(dtSuites, "WTS_SYSTEM_SUITEID", "WTS_SYSTEM_SUITE", "0", "", true);

        // systems
        DataTable dtSystems = MasterData.SystemList_Get(includeArchive: true, WTS_SYSTEM_SUITEID: 0);

        SystemOptions = CreateOptionStringFromDataTable(dtSystems, "WTS_SYSTEMID", "WTS_SYSTEM", "0", "", true);

        List <string> columnsToRemove = new List <string>();
        List <string> columnsToKeep   = new List <string>()
        {
            "WTS_SystemSuiteID", "WTS_SystemSuite", "WTS_SystemID", "WTS_SYSTEM"
        };

        foreach (DataColumn col in dtSystems.Columns)
        {
            if (!columnsToKeep.Contains(col.ColumnName))
            {
                columnsToRemove.Add(col.ColumnName);
            }
        }
        foreach (string colName in columnsToRemove)
        {
            dtSystems.Columns.Remove(colName);
        }
        dtSystems.AcceptChanges();
        dtSystems     = dtSystems.DefaultView.ToTable(true);
        dtSystemsJSON = JsonConvert.SerializeObject(dtSystems);

        // workarea ddl
        DataTable dtWorkAreas = MasterData.WorkAreaList_Get();

        WorkAreaOptions = CreateOptionStringFromDataTable(dtWorkAreas, "WorkAreaID", "WorkArea", "0", "", true);

        DataTable dtWorkAreaSystems = MasterData.WorkArea_SystemList_Get();

        columnsToRemove = new List <string>();
        columnsToKeep   = new List <string>()
        {
            "WorkArea_SystemID", "WorkArea", "WorkAreaID", "WTS_SYSTEM", "WTS_SYSTEMID"
        };
        foreach (DataColumn col in dtWorkAreaSystems.Columns)
        {
            if (!columnsToKeep.Contains(col.ColumnName))
            {
                columnsToRemove.Add(col.ColumnName);
            }
        }
        foreach (string colName in columnsToRemove)
        {
            dtWorkAreaSystems.Columns.Remove(colName);
        }
        dtWorkAreaSystems.AcceptChanges();
        dtWorkAreaSystems     = dtWorkAreaSystems.DefaultView.ToTable(true);
        dtWorkAreaSystemsJSON = JsonConvert.SerializeObject(dtWorkAreaSystems);

        // RQMTType ddl (purpose)
        DataTable dtTypes = RQMT.RQMTTypeList_Get();

        PopulateDDLFromDataTable(ddlRQMTType, dtTypes, "RQMTTypeID", "RQMTType", null, null, false, "InternalType");
        RQMTTypeOptions = CreateOptionStringFromDataTable(dtTypes, "RQMTTypeID", "RQMTType", "0", "", true, "InternalType");

        // Description Types option list
        DataTable dtDescTypes = RQMT.RQMTDescriptionTypeList_Get();

        DescriptionTypeOptions = CreateOptionStringFromDataTable(dtDescTypes, "RQMTDescriptionTypeID", "RQMTDescriptionType", null, null, true);

        // RQMTComplexity
        DataTable dtComplexity = RQMT.RQMTComplexityList_Get();

        ComplexityOptions = CreateOptionStringFromDataTable(dtComplexity, "RQMTComplexityID", "RQMTComplexity", null, null, true);

        // Functionality
        DataTable dtFunctionality = MasterData.WorkloadGroupList_Get();

        dtFunctionality.DefaultView.Sort = "WorkloadGroup";
        dtFunctionality              = dtFunctionality.DefaultView.ToTable();
        FunctionalitySelectOptions   = CreateOptionStringFromDataTable(dtFunctionality, "WorkloadGroupID", "WorkloadGroup", "0", "", true, null);
        FunctionalityCheckBoxOptions = CreateCheckBoxStringFromDataTable(dtFunctionality, "WorkloadGroupID", "WorkloadGroup", true, 1, null);

        // Attributes
        AttributeOptions = new Dictionary <string, string>();

        DataTable dtStage = RQMT.RQMTAttribute_Get((int)WTS.Enums.RQMTAttributeTypeEnum.Stage);

        AttributeOptions["stage"] = CreateOptionStringFromDataTable(dtStage, "RQMTAttributeID", "RQMTAttribute", "0", "", true);

        DataTable dtCrit = RQMT.RQMTAttribute_Get((int)WTS.Enums.RQMTAttributeTypeEnum.Criticality);

        AttributeOptions["criticality"] = CreateOptionStringFromDataTable(dtCrit, "RQMTAttributeID", "RQMTAttribute", "0", "", true);

        DataTable dtStatus = RQMT.RQMTAttribute_Get((int)WTS.Enums.RQMTAttributeTypeEnum.Status);

        AttributeOptions["status"] = CreateOptionStringFromDataTable(dtStatus, "RQMTAttributeID", "RQMTAttribute", "0", "", true);

        if (!string.IsNullOrWhiteSpace((string)Session["copied.rqmts"]))
        {
            string[] arr   = ((string)Session["copied.rqmts"]).Split(',');
            string[] rqmts = arr[0].Split('|');

            CopiedRQMTs       = "";
            CopiedRQMTSystems = arr[1];

            for (int i = 0; i < rqmts.Length; i++)
            {
                string rqmt = rqmts[i];

                if (CopiedRQMTs.Length > 0)
                {
                    CopiedRQMTs += ", ";
                }

                if (CopiedRQMTs.Contains(rqmt))
                {
                    CopiedRQMTs += rqmt + "*";
                }
                else
                {
                    CopiedRQMTs += rqmt;
                }
            }
        }


        //ShowMultipleSetQuickAddWarning
        DataTable userSettingDt = LoggedInUser.UserSettingList_Get(LoggedInUserID, 2);

        if (userSettingDt != null && userSettingDt.Rows.Count > 0 && userSettingDt.Rows[0]["SettingValue"].ToString() == "0")
        {
            QuickAddWarningEnabled = false;
        }
    }
Beispiel #3
0
    private void LoadData()
    {
        // get the full attribute list
        dtRQMTAttribute = RQMT.RQMTAttribute_Get();

        if (!this.NewRQMT)
        {
            DataSet dsRQMT = RQMT.RQMTEditData_Get(RQMTID);

            dtRQMT = dsRQMT.Tables["RQMT"];

            if (dtRQMT.Rows.Count == 0)
            {
                pageIsInvalid = true;
                return;
            }

            dtAllSets                  = dsRQMT.Tables["ALLSETS"];
            dtAssociations             = dsRQMT.Tables["ASSOCIATIONS"];
            dtAttributes               = dsRQMT.Tables["ATTRIBUTES"];
            dtUsage                    = dsRQMT.Tables["USAGE"];
            dtAvailableFunctionalities = dsRQMT.Tables["AVAILABLEFUNCTIONALITIES"];
            dtFunctionality            = dsRQMT.Tables["FUNCTIONALITY"];
            dtDescriptions             = dsRQMT.Tables["DESCRIPTIONS"];
            dtDescriptionTypes         = dsRQMT.Tables["DESCTYPES"];
            dtDefects                  = dsRQMT.Tables["DEFECTS"];
            dtDescriptionAttachments   = dsRQMT.Tables["DESCATT"];

            SetAssociationsCount    = dtAssociations.Rows.Count;
            SystemAssociationsCount = dtAttributes.Rows.Count;

            sectionCounts = "associations=" + SetAssociationsCount + ",attributes=" + SystemAssociationsCount + ",usage=" + SetAssociationsCount + ",functionalities=0,descriptions=0,defects=0";

            CanDeleteRQMT = true;
            if (SetAssociationsCount > 0 ||
                (dtDefects.Rows.Count > 0 && dtDefects.Rows[0]["RQMTSystemDefect_ID"] != DBNull.Value) ||
                (dtFunctionality.Rows.Count > 0 && dtFunctionality.Rows[0]["Functionality_ID"] != DBNull.Value) ||
                (dtDescriptions.Rows.Count > 0 && dtDescriptions.Rows[0]["RQMTSystemRQMTDescription_ID"] != DBNull.Value))
            {
                CanDeleteRQMT = false;
            }

            descTypeOptions = CreateOptionStringFromDataTable(dtDescriptionTypes, "RQMTDescriptionType_ID", "RQMTDescriptionType", null, null, true);

            if (dtRQMT != null && dtRQMT.Rows.Count > 0)
            {
                spnRQMT.InnerText = dtRQMT.Rows[0]["RQMTID"].ToString();

                string   createdDateDisplay = string.Empty, updatedDateDisplay = string.Empty;
                DateTime nCreatedDate = new DateTime(), nUpdatedDate = new DateTime();

                if (DateTime.TryParse(dtRQMT.Rows[0]["CreatedDate"].ToString(), out nCreatedDate))
                {
                    createdDateDisplay = String.Format("{0:M/d/yyyy h:mm tt}", nCreatedDate);
                }
                if (DateTime.TryParse(dtRQMT.Rows[0]["UpdatedDate"].ToString(), out nUpdatedDate))
                {
                    updatedDateDisplay = String.Format("{0:M/d/yyyy h:mm tt}", nUpdatedDate);
                }

                spnCreated.InnerText = "Created: " + dtRQMT.Rows[0]["CreatedBy"].ToString() + " - " + createdDateDisplay;
                spnUpdated.InnerText = "Updated: " + dtRQMT.Rows[0]["UpdatedBy"].ToString() + " - " + updatedDateDisplay;
                txtRQMT.Text         = dtRQMT.Rows[0]["RQMT"].ToString();
                txtRQMT.Attributes.Add("original_value", dtRQMT.Rows[0]["RQMT"].ToString());
            }

            if (dtAllSets != null && dtAllSets.Rows.Count > 0)
            {
                dtAllSets.Columns.Add("X", typeof(string));
                dtAllSets.Columns["X"].SetOrdinal(0);
                dtAllSets.Columns.Add("Z", typeof(string));

                grdAssociations.GridHeaderRowDataBound += grdAssociations_GridHeaderRowDataBound;
                grdAssociations.GridRowDataBound       += grdAssociations_GridRowDataBound;
                grdAssociations.DataSource              = dtAllSets;
                grdAssociations.DataBind();
            }

            if (dtAttributes != null && dtAttributes.Rows.Count > 0)
            {
                dtAttributes.Columns.Add("Z", typeof(string));

                grdAttributes.GridHeaderRowDataBound += grdAttributes_GridHeaderRowDataBound;
                grdAttributes.GridRowDataBound       += grdAttributes_GridRowDataBound;
                grdAttributes.DataSource              = dtAttributes;
                grdAttributes.DataBind();
            }

            if (dtUsage != null && dtUsage.Rows.Count > 0)
            {
                dtUsage.Columns.Add("Toggle", typeof(string));
                dtUsage.Columns.Add("Z", typeof(string));

                grdUsage.GridHeaderRowDataBound += grdUsage_GridHeaderRowDataBound;
                grdUsage.GridRowDataBound       += grdUsage_GridRowDataBound;
                grdUsage.DataSource              = dtUsage;
                grdUsage.DataBind();
            }

            if (dtFunctionality != null && dtFunctionality.Rows.Count > 0)
            {
                // produce a unique table with one row per rsrs
                dtFunctionalityDistinct = dtFunctionality.Copy();
                dtFunctionalityDistinct.Columns.Remove("Functionality");
                dtFunctionalityDistinct.Columns.Remove("Functionality_ID");
                dtFunctionalityDistinct.AcceptChanges();
                dtFunctionalityDistinct = dtFunctionalityDistinct.DefaultView.ToTable(true);
                dtFunctionalityDistinct.Columns.Add("Functionality", typeof(string));

                grdFunctionalities.GridHeaderRowDataBound += grdFunctionalities_GridHeaderRowDataBound;
                grdFunctionalities.GridRowDataBound       += grdFunctionalities_GridRowDataBound;
                grdFunctionalities.DataSource              = dtFunctionalityDistinct;
                grdFunctionalities.DataBind();

                int cnt = 0;
                for (int i = 0; i < dtFunctionality.Rows.Count; i++)
                {
                    if (dtFunctionality.Rows[i]["Functionality_ID"] != DBNull.Value)
                    {
                        cnt++;
                    }
                }

                sectionCounts = sectionCounts.Replace("functionalities=0", "functionalities=" + cnt);
            }

            if (dtDescriptions != null && dtDescriptions.Rows.Count > 0)
            {
                // produce a unique table with one row per rs
                dtDescriptionsDistinct = dtDescriptions.Copy();
                dtDescriptionsDistinct.Columns.Remove("RQMTSystemRQMTDescription_ID");
                dtDescriptionsDistinct.Columns.Remove("RQMTDescription_ID");
                dtDescriptionsDistinct.Columns.Remove("RQMTDescription");
                dtDescriptionsDistinct.Columns.Remove("RQMTDescriptionType_ID");
                dtDescriptionsDistinct.Columns.Remove("RQMTDescriptionType");
                dtDescriptionsDistinct.AcceptChanges();
                dtDescriptionsDistinct = dtDescriptionsDistinct.DefaultView.ToTable(true);
                dtDescriptionsDistinct.Columns.Add("Descriptions", typeof(string));

                grdDescriptions.GridHeaderRowDataBound += grdDescriptions_GridHeaderRowDataBound;
                grdDescriptions.GridRowDataBound       += grdDescriptions_GridRowDataBound;
                grdDescriptions.DataSource              = dtDescriptionsDistinct;
                grdDescriptions.DataBind();

                int cnt = 0;
                for (int i = 0; i < dtDescriptions.Rows.Count; i++)
                {
                    int RQMTSystemRQMTDescription_ID = dtDescriptions.Rows[i]["RQMTSystemRQMTDescription_ID"] != DBNull.Value ? (int)dtDescriptions.Rows[i]["RQMTSystemRQMTDescription_ID"] : 0;

                    if (RQMTSystemRQMTDescription_ID != 0 && (DisplayItemID == 0 || RQMTSystemRQMTDescription_ID == DisplayItemID))
                    {
                        cnt++;
                    }
                }

                sectionCounts           = sectionCounts.Replace("descriptions=0", "descriptions=" + cnt);
                SystemDescriptionsCount = cnt;
            }

            if (dtDefects != null && dtDefects.Rows.Count > 0)
            {
                dtDefectsDistinct = dtDefects.Copy();
                dtDefectsDistinct.Columns.Remove("RQMTSystemDefect_ID");
                dtDefectsDistinct.Columns.Remove("Description");
                dtDefectsDistinct.Columns.Remove("Impact");
                dtDefectsDistinct.Columns.Remove("RQMTStage");
                dtDefectsDistinct.Columns.Remove("SortOrder_ID");
                dtDefectsDistinct.AcceptChanges();
                dtDefectsDistinct = dtDefectsDistinct.DefaultView.ToTable(true);
                dtDefectsDistinct.Columns.Add("Defects", typeof(string));

                grdDefects.GridHeaderRowDataBound += grdDefects_GridHeaderRowDataBound;
                grdDefects.GridRowDataBound       += grdDefects_GridRowDataBound;
                grdDefects.DataSource              = dtDefectsDistinct;
                grdDefects.DataBind();

                int cnt = 0;
                for (int i = 0; i < dtDefects.Rows.Count; i++)
                {
                    if (dtDefects.Rows[i]["RQMTSystemDefect_ID"] != DBNull.Value)
                    {
                        cnt++;
                    }
                }

                sectionCounts = sectionCounts.Replace("defects=0", "defects=" + cnt);
            }
        }
    }