//internal SPCModel[] SpcModels //{ // get // { // SPCModel[] models = new SPCModel[spcModels.Count]; // spcModels.Values.CopyTo(models, 0); // return models; // } //} internal DataSet GetModelData(string[] modelRawids, bool useComma) { modelData = _ws.GetSPCModelsData(modelRawids, useComma); spcModels = new Dictionary <string, BISTel.eSPC.Page.Common.SPCModel>(); foreach (DataRow dr in modelData.Tables[BISTel.eSPC.Common.TABLE.MODEL_ATT_MST_SPC].Rows) { BISTel.eSPC.Page.Common.SPCModel spcModel = new BISTel.eSPC.Page.Common.SPCModel { SPCModelRawID = dr[BISTel.eSPC.Common.COLUMN.RAWID].ToString(), SPCModelName = dr[BISTel.eSPC.Common.COLUMN.SPC_MODEL_NAME].ToString(), }; spcModels.Add(spcModel.SPCModelRawID, spcModel); } foreach (var kvp in spcModels) { DataRow[] drs = modelData.Tables[BISTel.eSPC.Common.TABLE.MODEL_CONFIG_ATT_MST_SPC].Select(BISTel.eSPC.Common.COLUMN.MODEL_RAWID + " = '" + kvp.Key + "'"); if (drs.Length == 0) { continue; } kvp.Value.ParamType = drs[0][BISTel.eSPC.Common.COLUMN.PARAM_TYPE_CD].ToString(); kvp.Value.SubModels = new List <BISTel.eSPC.Page.Common.SPCModel>(); foreach (DataRow dr in drs) { if (dr[BISTel.eSPC.Common.COLUMN.MAIN_YN].ToString().ToUpper() == "Y") { kvp.Value.ChartID = dr[BISTel.eSPC.Common.COLUMN.RAWID].ToString(); kvp.Value.Version = dr[BISTel.eSPC.Common.COLUMN.VERSION].ToString(); kvp.Value.IsMainModel = true; continue; } BISTel.eSPC.Page.Common.SPCModel spcModel = new BISTel.eSPC.Page.Common.SPCModel { ChartID = dr[BISTel.eSPC.Common.COLUMN.RAWID].ToString(), SPCModelRawID = kvp.Value.SPCModelRawID, SPCModelName = kvp.Value.SPCModelName, Version = dr[BISTel.eSPC.Common.COLUMN.VERSION].ToString(), IsMainModel = false, ParamType = kvp.Value.ParamType }; kvp.Value.SubModels.Add(spcModel); } } return(modelData); }