public CCeldaProcesada ProcesarMuestra(int idmuestra, string elemento, string value_celda) { if (dicControlValues.ContainsKey(elemento) && !value_celda.Contains("NULL")) { System.Drawing.Color colorError = System.Drawing.Color.NavajoWhite; CCeldaProcesada celdaProcesada = new CCeldaProcesada(); decimal value_celda_decimal = Convert.ToDecimal(value_celda); CControlValues controlValues = dicControlValues[elemento]; // procesar celda: idmuestra + elemento DataRow fila = dicFilasLeyes[idmuestra]; celdaProcesada.ColorCelda = Color.White; celdaProcesada.ValueCelda = value_celda; string nombreMuestra = fila["Muestra"].ToString(); string metodo = fila["Metodo"].ToString(); decimal factor = Convert.ToDecimal(fila["Factor"]); decimal dilucion2 = Convert.ToDecimal(fila["Dilucion"]); if (EsDUP(nombreMuestra)) { // encontrar muestra original int idmuestra_orig = queryFilasIteva.Single(c => nombreMuestra.Contains(c.Muestra) && nombreMuestra != c.Muestra).Idmuestra; DataRow drOri = dicFilasLeyes[idmuestra_orig]; decimal value_orig = Convert.ToDecimal(drOri[elemento].ToString().Replace('<', ' ')); decimal MDL_or_IDL = metodo == "MT" ? controlValues.MDL : controlValues.IDL; celdaProcesada.ValueCelda = "OK Dup"; if (value_orig > MDL_or_IDL) { if (!(Math.Abs(value_orig - value_celda_decimal) < 0.15M * value_orig)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out Dup"; } } else { if (!(value_celda_decimal < 2.2M * controlValues.MDL)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out Dup"; } } } else if (EsLFM(nombreMuestra)) { int idmuestra_orig = queryFilasIteva.Single(c => nombreMuestra.Contains(c.Muestra) && nombreMuestra != c.Muestra).Idmuestra; DataRow drOri = dicFilasLeyes[idmuestra_orig]; decimal value_orig = Convert.ToDecimal(drOri[elemento].ToString().Replace('<', ' ')); decimal MDL_or_IDL = metodo == "MT" ? controlValues.MDL : controlValues.IDL; celdaProcesada.ValueCelda = "OK LFM"; if (value_orig > MDL_or_IDL) { if (!EstaEntre(Math.Abs(value_orig - value_celda_decimal), controlValues.LFM * 0.70M, controlValues.LFM * 1.30M)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out LFM"; } } else { if (!EstaEntre(value_celda_decimal, controlValues.LFM * 0.70M, controlValues.LFM * 1.30M)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out LFM"; } } } else if (EsSoloMuestra(nombreMuestra)) { decimal MDL_or_IDL = metodo == "MT" ? controlValues.IDL : controlValues.MDL; string limite_inferior = metodo == "MT" ? "IDL" : "MDL"; string txt; if (value_celda_decimal < MDL_or_IDL) { celdaProcesada.ValueCelda = "<" + MDL_or_IDL; } else { if (value_celda_decimal < controlValues.LDR) { celdaProcesada.ValueCelda = (value_celda_decimal * factor * dilucion2).ToString(); } else { celdaProcesada.ValueCelda = ">" + controlValues.LDR.ToString(); } } #region comentario ///Metodo: ///LimiteInferior: ///LimiteSuperior: ///Prueba: LimiteInferior < lectura < LimiteSuperior ....... ///Resultado: StringBuilder mensaje = new StringBuilder(); mensaje.Append("Metodo: {0}"); mensaje.Append("\nLímite inferior {1}: {2}"); mensaje.Append("\nLímite superior LDR: {3}"); mensaje.Append("\nPrueba: {4} < {5} < {6}"); mensaje.Append("\nResultado: {7}"); txt = string.Format(mensaje.ToString(), metodo, limite_inferior, MDL_or_IDL, controlValues.LDR, MDL_or_IDL, value_celda, controlValues.LDR, celdaProcesada.ValueCelda); dicToolTip.Add(idmuestra.ToString() + elemento, txt); #endregion } // agregar/actualizar el diccionario string key = idmuestra.ToString() + elemento; celdaProcesada.Idmuestra = idmuestra; celdaProcesada.Elemento = elemento; if (!dicCeldaProcesada.ContainsKey(key)) { dicCeldaProcesada.Add(key, celdaProcesada); } else { dicCeldaProcesada[key] = celdaProcesada; } return(celdaProcesada); } else { return(null); } }
public CCeldaProcesada ProcesarMuestraControl(int idmuestra, string elemento, string value_celda) { if (dicControlValues.ContainsKey(elemento) && !value_celda.Contains("NULL")) { System.Drawing.Color colorError = System.Drawing.Color.NavajoWhite; CCeldaProcesada celdaProcesada = new CCeldaProcesada(); decimal value_celda_decimal = Convert.ToDecimal(value_celda); CControlValues controlValues = dicControlValues[elemento]; // procesar celda: idmuestra + elemento DataRow fila = dicFilasLeyes[idmuestra]; celdaProcesada.ColorCelda = Color.White; celdaProcesada.ValueCelda = value_celda; string nombreMuestra = fila["Muestra"].ToString(); string metodo = fila["Metodo"].ToString(); decimal factor = Convert.ToDecimal(fila["Factor"]); decimal dilucion2 = Convert.ToDecimal(fila["Dilucion"]); if (EsIPC(nombreMuestra)) // IPC { celdaProcesada.ValueCelda = "OK IPC"; if (!EstaEntre(value_celda_decimal, controlValues.IPC * 0.9M, controlValues.IPC * 1.1M)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out IPC"; } StringBuilder mensaje = new StringBuilder(); mensaje.Append("IPC de {0}: {1}"); mensaje.Append("\nIntervalo: {1} * 0.9 <= lectura <= {1} * 1.1"); mensaje.Append("\nIntervalo: {2} <= {4} <= {3}"); mensaje.Append("\nResultado: {5}"); string txt = string.Format( mensaje.ToString(), elemento, controlValues.IPC, controlValues.IPC * 0.9M, controlValues.IPC * 1.1M, value_celda, celdaProcesada.ValueCelda); dicToolTip.Add(idmuestra.ToString() + elemento, txt); } else if (EsLRB(nombreMuestra)) // LRB en (MT ó MD) { decimal MDL_or_IDL = metodo == "MT" ? controlValues.MDL : controlValues.IDL; celdaProcesada.ValueCelda = "OK LRB"; if (!(value_celda_decimal < MDL_or_IDL * 2.2M)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Cont LRB"; } } else if (EsLFB(nombreMuestra)) { int idbatch_muestra = queryFilasIteva.Single(c => c.Idmuestra == idmuestra).Idbatch; int idmuestra_lrb = queryFilasIteva.Single(c => c.Muestra == "LRB" && c.Idbatch == idbatch_muestra).Idmuestra; DataRow drLrb = dicFilasLecturas[idmuestra_lrb]; decimal lrb = Convert.ToDecimal(drLrb[elemento]); celdaProcesada.ValueCelda = "OK LFB"; if (!EstaEntre(Math.Abs(value_celda_decimal - lrb), controlValues.LFB * 0.85M, controlValues.LFB * 1.15M)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Cont LFB"; } } else if (EsDUP(nombreMuestra)) { // encontrar muestra original int idmuestra_orig = queryFilasIteva.Single(c => nombreMuestra.Contains(c.Muestra) && nombreMuestra != c.Muestra).Idmuestra; DataRow drOri = dicFilasLeyes[idmuestra_orig]; decimal value_orig = Convert.ToDecimal(drOri[elemento].ToString().Replace('<', ' ')); decimal MDL_or_IDL = metodo == "MT" ? controlValues.MDL : controlValues.IDL; celdaProcesada.ValueCelda = "OK Dup"; if (value_orig > MDL_or_IDL) { if (!(Math.Abs(value_orig - value_celda_decimal) < 0.15M * value_orig)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out Dup"; } } else { if (!(value_celda_decimal < 2.2M * controlValues.MDL)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out Dup"; } } } // agregar/actualizar el diccionario string key = idmuestra.ToString() + elemento; celdaProcesada.Idmuestra = idmuestra; celdaProcesada.Elemento = elemento; if (!dicCeldaProcesada.ContainsKey(key)) { dicCeldaProcesada.Add(key, celdaProcesada); } else { dicCeldaProcesada[key] = celdaProcesada; } return(celdaProcesada); } else { return(null); } }
public CCeldaProcesada ProcesarMuestraControl(int idmuestra, string elemento, string value_celda) { if (dicControlValues.ContainsKey(elemento) && !value_celda.Contains("NULL")) { System.Drawing.Color colorError = System.Drawing.Color.NavajoWhite; CCeldaProcesada celdaProcesada = new CCeldaProcesada(); decimal value_celda_decimal = Convert.ToDecimal(value_celda); CControlValues controlValues = dicControlValues[elemento]; // procesar celda: idmuestra + elemento DataRow fila = dicFilasLeyes[idmuestra]; celdaProcesada.ColorCelda = Color.White; celdaProcesada.ValueCelda = value_celda; string nombreMuestra = fila["Muestra"].ToString(); string metodo = fila["Metodo"].ToString(); decimal factor = Convert.ToDecimal(fila["Factor"]); decimal dilucion2 = Convert.ToDecimal(fila["Dilucion"]); if (EsIPC(nombreMuestra)) // IPC { celdaProcesada.ValueCelda = "OK IPC"; if (!EstaEntre(value_celda_decimal, controlValues.IPC * 0.9M, controlValues.IPC * 1.1M)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out IPC"; } StringBuilder mensaje = new StringBuilder(); mensaje.Append("IPC de {0}: {1}"); mensaje.Append("\nIntervalo: {1} * 0.9 <= lectura <= {1} * 1.1"); mensaje.Append("\nIntervalo: {2} <= {4} <= {3}"); mensaje.Append("\nResultado: {5}"); string txt = string.Format( mensaje.ToString(), elemento, controlValues.IPC, controlValues.IPC * 0.9M, controlValues.IPC * 1.1M, value_celda, celdaProcesada.ValueCelda); dicToolTip.Add(idmuestra.ToString() + elemento, txt); } else if (EsLRB(nombreMuestra)) // LRB en (MT ó MD) { decimal MDL_or_IDL = metodo == "MT" ? controlValues.MDL : controlValues.IDL; celdaProcesada.ValueCelda = "OK LRB"; if (!(value_celda_decimal < MDL_or_IDL * 2.2M)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Cont LRB"; } } else if (EsLFB(nombreMuestra)) { int idbatch_muestra = queryFilasIteva.Single(c => c.Idmuestra == idmuestra).Idbatch; int idmuestra_lrb = queryFilasIteva.Single(c => c.Muestra == "LRB" && c.Idbatch == idbatch_muestra).Idmuestra; DataRow drLrb = dicFilasLecturas[idmuestra_lrb]; decimal lrb = Convert.ToDecimal(drLrb[elemento]); celdaProcesada.ValueCelda = "OK LFB"; if (!EstaEntre(Math.Abs(value_celda_decimal - lrb), controlValues.LFB * 0.85M, controlValues.LFB * 1.15M)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Cont LFB"; } } else if (EsDUP(nombreMuestra)) { // encontrar muestra original int idmuestra_orig = queryFilasIteva.Single(c => nombreMuestra.Contains(c.Muestra) && nombreMuestra != c.Muestra).Idmuestra; DataRow drOri = dicFilasLeyes[idmuestra_orig]; decimal value_orig = Convert.ToDecimal(drOri[elemento].ToString().Replace('<', ' ')); decimal MDL_or_IDL = metodo == "MT" ? controlValues.MDL : controlValues.IDL; celdaProcesada.ValueCelda = "OK Dup"; if (value_orig > MDL_or_IDL) { if (!(Math.Abs(value_orig - value_celda_decimal) < 0.15M * value_orig)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out Dup"; } } else { if (!(value_celda_decimal < 2.2M * controlValues.MDL)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out Dup"; } } } // agregar/actualizar el diccionario string key = idmuestra.ToString() + elemento; celdaProcesada.Idmuestra = idmuestra; celdaProcesada.Elemento = elemento; if (!dicCeldaProcesada.ContainsKey(key)) dicCeldaProcesada.Add(key, celdaProcesada); else dicCeldaProcesada[key] = celdaProcesada; return celdaProcesada; } else return null; }
void RecuperarIcp() { // columnas var queryColumns = (from m in queryLecturasIcp orderby m.Elemento select new { m.Elemento }).Distinct(); dtSamples.Columns.Add("Matriz"); dtSamples.Columns.Add("Codigo"); dtSamples.Columns.Add("Factor"); dtSamples.Columns.Add("T_85C"); dtSamples.Columns.Add("Alicuota"); dtSamples.Columns.Add("Volumen"); dtSamples.Columns.Add("Dilucion"); dtSamples.Columns.Add("Idmuestra"); dtSamples.Columns.Add("Muestra"); dtSamples.Columns.Add("Metodo"); dtLeyes.Columns.Add("Matriz"); dtLeyes.Columns.Add("Codigo"); dtLeyes.Columns.Add("Factor"); dtLeyes.Columns.Add("T_85C"); dtLeyes.Columns.Add("Alicuota"); dtLeyes.Columns.Add("Volumen"); dtLeyes.Columns.Add("Dilucion"); dtLeyes.Columns.Add("Idmuestra"); dtLeyes.Columns.Add("Muestra"); dtLeyes.Columns.Add("Metodo"); dtLecturas.Columns.Add("Matriz"); dtLecturas.Columns.Add("Codigo"); dtLecturas.Columns.Add("Factor"); dtLecturas.Columns.Add("T_85C"); dtLecturas.Columns.Add("Alicuota"); dtLecturas.Columns.Add("Volumen"); dtLecturas.Columns.Add("Dilucion"); dtLecturas.Columns.Add("Idmuestra"); dtLecturas.Columns.Add("Muestra"); dtLecturas.Columns.Add("Metodo"); // filas var queryFilas = (from m in queryLecturasIcp select new { m.Idmuestra, m.Muestra, m.Dilucion2 }).Distinct().OrderBy(c => c.Idmuestra); int idbatch = 0; foreach (var item in queryFilas) { if (item.Muestra.Contains("IPC") || item.Muestra.Contains("LRB") || item.Muestra.Contains("LFB") || item.Muestra.Contains("LFM") || item.Muestra.ToUpper().Contains("DUP")) { idbatch++; } queryFilasIteva.Add(new CMuestrasIteva() { Idbatch = idbatch, Idmuestra = Convert.ToInt32(item.Idmuestra), Muestra = item.Muestra }); } // agregando columnas foreach (var item in queryColumns) { dtLecturas.Columns.Add(item.Elemento); dtLeyes.Columns.Add(item.Elemento); } // agregando filas foreach (var item in queryFilas) { DataRow drSamples = dtSamples.NewRow(); drSamples["Idmuestra"] = item.Idmuestra; drSamples["Muestra"] = item.Muestra; drSamples["Metodo"] = "MD"; drSamples["Factor"] = factor; if (Convert.ToInt32(item.Dilucion2) == 1) { drSamples["Dilucion"] = 20; } else { drSamples["Dilucion"] = 1; } dtSamples.Rows.Add(drSamples); DataRow drLey = dtLeyes.NewRow(); drLey["Idmuestra"] = item.Idmuestra; drLey["Muestra"] = item.Muestra; drLey["Metodo"] = "MD"; drLey["Factor"] = factor; if (Convert.ToInt32(item.Dilucion2) == 1) { drLey["Dilucion"] = 20; } else { drLey["Dilucion"] = 1; } if (!dicFilasLeyes.ContainsKey(Convert.ToInt32(item.Idmuestra))) { dicFilasLeyes.Add(Convert.ToInt32(item.Idmuestra), drLey); dtLeyes.Rows.Add(drLey); } //----------------------------------------------------- DataRow drLec = dtLecturas.NewRow(); drLec["Idmuestra"] = item.Idmuestra; drLec["Muestra"] = item.Muestra; drLec["Metodo"] = "MD"; drLec["Factor"] = factor; if (Convert.ToInt32(item.Dilucion2) == 1) { drLec["Dilucion"] = 20; } else { drLec["Dilucion"] = 1; } if (!dicFilasLecturas.ContainsKey(Convert.ToInt32(item.Idmuestra))) { dicFilasLecturas.Add(Convert.ToInt32(item.Idmuestra), drLec); dtLecturas.Rows.Add(drLec); } } // procesar control de calidad foreach (var item in queryLecturasIcp) { if (item.Muestra.Contains("IPC") || !item.Muestra.Contains("LRB") || !item.Muestra.Contains("LFB")) { dicFilasLecturas[Convert.ToInt32(item.Idmuestra)][item.Elemento] = item.Lectura.ToString(); CCeldaProcesada celdaProcesada = ProcesarMuestraControl(Convert.ToInt32(item.Idmuestra), item.Elemento, item.Lectura.ToString()); if (celdaProcesada != null) { dicFilasLeyes[Convert.ToInt32(item.Idmuestra)][item.Elemento] = celdaProcesada.ValueCelda.ToString(); } } } // procesar muestras de control foreach (var item in queryLecturasIcp) { if (!item.Muestra.Contains("IPC") && !item.Muestra.Contains("LRB") && !item.Muestra.Contains("LFB")) { dicFilasLecturas[Convert.ToInt32(item.Idmuestra)][item.Elemento] = item.Lectura.ToString(); CCeldaProcesada celdaProcesada = ProcesarMuestra(Convert.ToInt32(item.Idmuestra), item.Elemento, item.Lectura.ToString()); if (celdaProcesada != null) { dicFilasLeyes[Convert.ToInt32(item.Idmuestra)][item.Elemento] = celdaProcesada.ValueCelda.ToString(); } } } // procesar dilusiones y columnas de control // procesar muestras de control foreach (var item in queryLecturasIcp) { if (!item.Muestra.Contains("IPC") && !item.Muestra.Contains("LRB") && !item.Muestra.Contains("LFB") && !item.Muestra.Contains("Blank") && !item.Muestra.Contains("STD")) { dicFilasLecturas[Convert.ToInt32(item.Idmuestra)][item.Elemento] = item.Lectura.ToString(); //CCeldaProcesada celdaProcesada = ProcesarDilucionElementos(item.Muestra, item.Elemento); //if (celdaProcesada != null) // dicFilasLeyes[Convert.ToInt32(item.Idmuestra)][item.Elemento] = celdaProcesada.ValueCelda.ToString(); } } gridControl1.DataSource = dtSamples; gridControl2.DataSource = dtLecturas; gridControl3.DataSource = dtLeyes; //ocultar columnas en las lecturas y leyes gridView2.Columns["Matriz"].Visible = false; gridView2.Columns["Codigo"].Visible = false; gridView2.Columns["T_85C"].Visible = false; gridView2.Columns["Alicuota"].Visible = false; gridView2.Columns["Volumen"].Visible = false; gridView2.Columns["Idmuestra"].Visible = false; gridView2.Columns["Metodo"].Visible = false; gridView2.Columns["Muestra"].Visible = true; gridView2.Columns["Factor"].Visible = true; gridView2.Columns["Dilucion"].Visible = true; gridView3.Columns["Matriz"].Visible = false; gridView3.Columns["Codigo"].Visible = false; gridView3.Columns["T_85C"].Visible = false; gridView3.Columns["Alicuota"].Visible = false; gridView3.Columns["Volumen"].Visible = false; gridView3.Columns["Idmuestra"].Visible = false; gridView3.Columns["Metodo"].Visible = false; gridView3.Columns["Muestra"].Visible = true; gridView3.Columns["Factor"].Visible = true; gridView3.Columns["Dilucion"].Visible = true; gridView2.Columns["Muestra"].Fixed = DevExpress.XtraGrid.Columns.FixedStyle.Left; gridView2.Columns["Factor"].Fixed = DevExpress.XtraGrid.Columns.FixedStyle.Left; gridView2.Columns["Dilucion"].Fixed = DevExpress.XtraGrid.Columns.FixedStyle.Left; gridView3.Columns["Muestra"].Fixed = DevExpress.XtraGrid.Columns.FixedStyle.Left; gridView3.Columns["Factor"].Fixed = DevExpress.XtraGrid.Columns.FixedStyle.Left; gridView3.Columns["Dilucion"].Fixed = DevExpress.XtraGrid.Columns.FixedStyle.Left; }
public CCeldaProcesada ProcesarMuestra(int idmuestra, string elemento, string value_celda) { if (dicControlValues.ContainsKey(elemento) && !value_celda.Contains("NULL")) { System.Drawing.Color colorError = System.Drawing.Color.NavajoWhite; CCeldaProcesada celdaProcesada = new CCeldaProcesada(); decimal value_celda_decimal = Convert.ToDecimal(value_celda); CControlValues controlValues = dicControlValues[elemento]; // procesar celda: idmuestra + elemento DataRow fila = dicFilasLeyes[idmuestra]; celdaProcesada.ColorCelda = Color.White; celdaProcesada.ValueCelda = value_celda; string nombreMuestra = fila["Muestra"].ToString(); string metodo = fila["Metodo"].ToString(); decimal factor = Convert.ToDecimal(fila["Factor"]); decimal dilucion2 = Convert.ToDecimal(fila["Dilucion"]); if (EsDUP(nombreMuestra)) { // encontrar muestra original int idmuestra_orig = queryFilasIteva.Single(c => nombreMuestra.Contains(c.Muestra) && nombreMuestra != c.Muestra).Idmuestra; DataRow drOri = dicFilasLeyes[idmuestra_orig]; decimal value_orig = Convert.ToDecimal(drOri[elemento].ToString().Replace('<', ' ')); decimal MDL_or_IDL = metodo == "MT" ? controlValues.MDL : controlValues.IDL; celdaProcesada.ValueCelda = "OK Dup"; if (value_orig > MDL_or_IDL) { if (!(Math.Abs(value_orig - value_celda_decimal) < 0.15M * value_orig)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out Dup"; } } else { if (!(value_celda_decimal < 2.2M * controlValues.MDL)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out Dup"; } } } else if (EsLFM(nombreMuestra)) { int idmuestra_orig = queryFilasIteva.Single(c => nombreMuestra.Contains(c.Muestra) && nombreMuestra != c.Muestra).Idmuestra; DataRow drOri = dicFilasLeyes[idmuestra_orig]; decimal value_orig = Convert.ToDecimal(drOri[elemento].ToString().Replace('<', ' ')); decimal MDL_or_IDL = metodo == "MT" ? controlValues.MDL : controlValues.IDL; celdaProcesada.ValueCelda = "OK LFM"; if (value_orig > MDL_or_IDL) { if (!EstaEntre(Math.Abs(value_orig - value_celda_decimal), controlValues.LFM * 0.70M, controlValues.LFM * 1.30M)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out LFM"; } } else { if (!EstaEntre(value_celda_decimal, controlValues.LFM * 0.70M, controlValues.LFM * 1.30M)) { celdaProcesada.ColorCelda = colorError; celdaProcesada.ValueCelda = "Out LFM"; } } } else if (EsSoloMuestra(nombreMuestra)) { decimal MDL_or_IDL = metodo == "MT" ? controlValues.IDL : controlValues.MDL; string limite_inferior = metodo == "MT" ? "IDL" : "MDL"; string txt; if (value_celda_decimal < MDL_or_IDL) celdaProcesada.ValueCelda = "<" + MDL_or_IDL; else { if (value_celda_decimal < controlValues.LDR) celdaProcesada.ValueCelda = (value_celda_decimal * factor * dilucion2).ToString(); else celdaProcesada.ValueCelda = ">" + controlValues.LDR.ToString(); } #region comentario ///Metodo: ///LimiteInferior: ///LimiteSuperior: ///Prueba: LimiteInferior < lectura < LimiteSuperior ....... ///Resultado: StringBuilder mensaje = new StringBuilder(); mensaje.Append("Metodo: {0}"); mensaje.Append("\nLímite inferior {1}: {2}"); mensaje.Append("\nLímite superior LDR: {3}"); mensaje.Append("\nPrueba: {4} < {5} < {6}"); mensaje.Append("\nResultado: {7}"); txt = string.Format(mensaje.ToString(), metodo, limite_inferior, MDL_or_IDL, controlValues.LDR, MDL_or_IDL, value_celda, controlValues.LDR, celdaProcesada.ValueCelda); dicToolTip.Add(idmuestra.ToString() + elemento, txt); #endregion } // agregar/actualizar el diccionario string key = idmuestra.ToString() + elemento; celdaProcesada.Idmuestra = idmuestra; celdaProcesada.Elemento = elemento; if (!dicCeldaProcesada.ContainsKey(key)) dicCeldaProcesada.Add(key, celdaProcesada); else dicCeldaProcesada[key] = celdaProcesada; return celdaProcesada; } else return null; }