private void sidebarExportButton_Click(object sender, EventArgs e) { DbCommunication db = new DbCommunication(); ExportWindow exp = new ExportWindow(1); //exp.grid= meranie aktualne }
public void init() { db = new DbCommunication(); try { dataRoky.DataSource = db.roky().Tables[0]; } catch (MySqlException) { MessageBox.Show("AN error noccured during connection to database. validate parameters of connection", "Error with connection to Daatabase", MessageBoxButtons.RetryCancel, MessageBoxIcon.Error); } }
public static Meranie loadMeranie(int headerId) { DbCommunication d=new DbCommunication(); DataRow header=d.header(headerId).Tables[0].Rows[0]; MeasurementParameters parametre = new MeasurementParameters( header["name"].ToString(), header["ion_type"].ToString().Equals("true"), header["note"].ToString(), (int)header["cycles"]); string x = ""; string y = ""; if (header["type_name"].Equals("Energy Scan")) { EnergyScanParameters pp=new EnergyScanParameters(); pp.StartPoint= (double)header["start_point"]; pp.EndPoint= (double)header["end_point"]; pp.Constant= Convert.ToInt32(header["constant"]); pp.StepTime= (double)header["steptime"]; pp.NumberOfSteps=(int)header["pocet_krokov"]; parametre.EnergyScan=pp; parametre.Typ = "Energy Scan"; x = "Electron energy"; y = "m/z"; } else if (header["type_name"].Equals("Mass Scan")) { MassScanParameters mp = new MassScanParameters(); mp.StartPoint = (int)header["start_point"]; mp.EndPoint = (int)header["end_point"]; mp.Constant = (double)header["constant"]; mp.TimePerAmu = (double)header["time_for_amu"]; mp.Density = (double)header["density"]; parametre.MassScan = mp; parametre.Typ = "Mass Scan"; x = "m/z"; y = "Electron energy"; } else if (header["type_name"].Equals("2D Scan")){ EnergyScanParameters ep = new EnergyScanParameters(); ep.StartPoint = (double)header["e_start_point"]; ep.EndPoint = (double)header["e_end_point"]; ep.StepTime = (double)header["e_steptime"]; ep.NumberOfSteps = (int)header["pocet_krokov"]; parametre.EnergyScan = ep; MassScanParameters mp = new MassScanParameters(); mp.StartPoint = (int)header["m_start_point"]; mp.EndPoint = (int)header["m_end_point"]; mp.TimePerAmu = (double)header["time_for_amu"]; mp.Density = (double)header["density"]; parametre.Typ = "2D Scan"; parametre.MassScan = mp; x = "m/z"; y = "Electron energy"; } Meranie m=new Meranie(parametre); m.cykly = new List<CyklusMerania>(); for (int c = 0; c < (int)header["cycles"]; c++) { CyklusMerania cyklus = new CyklusMerania(c); cyklus.KrokyMerania = new List<KrokMerania>(); DataTable data=d.meranie(headerId,c).Tables[0]; for (int i=0;i<data.Rows.Count ;i++ ) { KrokMerania krok = new KrokMerania(); krok.Intensity= (ulong)data.Rows[i]["Intensity"]; krok.Temperature = (double)data.Rows[i]["Temperature"]; krok.Chamber = (double)data.Rows[i]["Chamber pressure"]; krok.Capillar = (double)data.Rows[i]["Capillar pressure"]; krok.X = (double)data.Rows[i][x]; krok.Y = (double)data.Rows[i][y]; cyklus.KrokyMerania.Add(krok); } m.cykly.Add(cyklus); } return m; }
/// <summary> /// Metoda nastartuje meranie s prednastavenymi parametrami. /// </summary> public void start() { //voltmeter.open(); //voltmeter.read(); //Thread.Sleep(1000); //MessageBox.Show(voltmeter.LastValue.ToString()); //voltmeter.close(); //return; abortStatus = false; if (!Parameters.TestRun) { db = new DbCommunication(); db.open(); db.vytvoritNoveMeranie(Parameters); db.close(); db.Cycle = 1; } if (Parameters.Typ.Equals("Mass Scan")) { Graf.setParameters(Parameters.MassScan.StartPoint, Parameters.MassScan.EndPoint, Parameters.NumberOfSteps + 1, Parameters.NumberOfCycles); } else if (Parameters.Typ.Equals("Energy Scan")) { Graf.setParameters(Parameters.EnergyScan.StartPoint, Parameters.EnergyScan.EndPoint, Parameters.NumberOfSteps + 1, Parameters.NumberOfCycles); } else if (Parameters.Typ.Equals("2D Scan")) { } measuringThread = new Thread(this.startThread); measuringThread.Name = "Measuring thread"; measuringThread.Start(); //vykonavame meranie v samostatnom threade }
private void avgModeCheckboxChanged(object sender, EventArgs e) { if(AvgRadioButton.Checked) { AvgRadioButton.BackColor = Color.FromArgb(144, 195, 212); //avg urobit, ak neexistuje DataTable, vytvorit, inak iba prepnut. if (avgDataTable == null) { DbCommunication db = new DbCommunication(); avgDataTable = db.meranieAvg(header_id).Tables[0]; avgItems = new CheckedListBox.ObjectCollection(checkedListBoxInclude); foreach(DataColumn columnHeader in avgDataTable.Columns) { avgItems.Add(columnHeader.ToString()); } } dataMeranie.DataSource = avgDataTable; refreshIncludeColumns(avgItems); checkedListBoxCyklyInclude.Enabled = false; checkBoxCyklyAllInclude.Enabled = false; } else { AvgRadioButton.BackColor = default(Color); } }
private string vygenerujNazov(int h_id) { DbCommunication db = new DbCommunication(); DataSet hset = db.header(h_id); string date = hset.Tables[0].Rows[0]["datetime"].ToString(); DateTime datum = Convert.ToDateTime(date); date = datum.ToString("dd.MM"); string type = hset.Tables[0].Rows[0]["type_name"].ToString(); string typeShort="2D-Scan"; string ionType = (hset.Tables[0].Rows[0]["ion_type"].ToString().Equals("True")) ? "P" : "N"; string constant = ""; if (type.Equals("Energy Scan")) { constant = hset.Tables[0].Rows[0]["constant"].ToString() + " amu"; typeShort = "E-Scan"; } if (type.Equals("Mass Scan")) { constant = hset.Tables[0].Rows[0]["constant"].ToString() + " eV"; typeShort = "M-Scan"; } return date + "-" + typeShort + "-" + (constant.Equals("") ? "" : constant + "-") + ionType + "("+h_id.ToString()+")"; }
/// <summary> /// metoda na export dat zobrazenych v datagride do formatu .dat /// format dat: /// -prvy riadok: nazov /// -druhy riadok: jednotka /// -treti riadok: koment /// -ostatne riadky: data /// Oddelovac je taublator,ciarka,bodkociarka,space. Pouzivaju sa desatinne bodky /// </summary> /// <param name="filename"></param> private void save(string filename) { StreamWriter file = new StreamWriter(filename, false); bool firstColumn = true; DbCommunication db = new DbCommunication(); header = db.header(header_id); dataMeranie.DataSource= db.meranie(header_id).Tables[0]; if (SumRadioButton.Checked) { sumDataTable = null; sumModeCheckboxChanged(this,new EventArgs()); } if (AvgRadioButton.Checked) { avgDataTable = null; avgModeCheckboxChanged(this, new EventArgs()); } pocetCyklov = (int)header.Tables[0].Rows[0]["cycles"]; if (includeHeader.Checked) { if (AvgRadioButton.Checked || SumRadioButton.Checked) { pocetCyklov = 1; } //prvy riadok - nazvy stlpcov - beru sa priamo z nazvov v datagride for (int cyklus = 0; cyklus < pocetCyklov; cyklus++) { for (int j = 0; j < dataMeranie.Columns.Count; j++) { if (dataMeranie.Columns[j].Visible && dataMeranie.Columns[j].HeaderText != "cycle_num") { if (!firstColumn) file.Write("\t"); file.Write(dataMeranie.Columns[j].HeaderText); firstColumn = false; } } } file.WriteLine(); //druhy riadok - jednotky stlpcov - zatial nic... TODO. vyriesit cez slovnik... current -> A, temperature -> °C firstColumn = true; for (int cyklus = 0; cyklus < pocetCyklov; cyklus++) { for (int j = 0; j < dataMeranie.Columns.Count; j++) { if (dataMeranie.Columns[j].Visible && !dataMeranie.Columns[j].HeaderText.Equals("cycle_num")) { if (!firstColumn) file.Write("\t"); file.Write(jednotky[dataMeranie.Columns[j].HeaderText.ToString()]); firstColumn = false; } } } file.WriteLine(); //treti riadok - commenty - pod stlpcom intensity, constant, , resolution,datum string comment = ""; string type = header.Tables[0].Rows[0]["type_name"].ToString(); if (type.Equals("Energy Scan")) { comment = header.Tables[0].Rows[0]["constant"] + " amu, ress " + header.Tables[0].Rows[0]["resolution"] + ", " + header.Tables[0].Rows[0]["datetime"]; } if (type.Equals("Mass Scan")) { comment = header.Tables[0].Rows[0]["constant"] + " eV, ress " + header.Tables[0].Rows[0]["resolution"] + ", " + header.Tables[0].Rows[0]["datetime"]; } if (type.Equals("2D Scan")) { comment = "ress " + header.Tables[0].Rows[0]["resolution"] + ", " + header.Tables[0].Rows[0]["datetime"]; } firstColumn = true; for (int cyklus = 0; cyklus < pocetCyklov; cyklus++) { for (int j = 0; j < dataMeranie.Columns.Count; j++) { if (dataMeranie.Columns[j].Visible) { if (!firstColumn) file.Write("\t"); if ((type.Equals("Energy Scan") || type.Equals("Mass Scan")) && j > 0) { file.Write(comment); } if (type.Equals("2D Scan") && j > 1) { file.Write(comment); } firstColumn = false; } } } file.Write("\t"); file.WriteLine(); string y = (type.Equals("Mass Scan") || type.Equals("2D Scan")) ? "m/z" : "Electron_energy"; string x = (type.Equals("Mass Scan") || type.Equals("2D Scan")) ? "Electron_energy" : "m/z"; } //data firstColumn = true; for (int i = 0; i < dataMeranie.Rows.Count; i++) { if (dataMeranie.Rows[i].Visible) { for (int j = 0; j < dataMeranie.Columns.Count; j++) { if (dataMeranie.Columns[j].Visible && !dataMeranie.Columns[j].HeaderText.Equals("cycle_num")) { if (!firstColumn) file.Write("\t"); file.Write(dataMeranie[j,i].Value); firstColumn = false; } } } if (eachCycleRadioButton.Checked) { if ((i + 1) % pocetCyklov == 0) { file.WriteLine(); firstColumn = true; } } else { file.WriteLine(); firstColumn = true; } } file.Close(); if (multi) { dataMeranie.DataSource = null; } }
private void init() { DbCommunication db = new DbCommunication(); normalDataTable = db.meranie(header_id).Tables[0]; dataMeranie.DataSource = normalDataTable; header = db.header(header_id); normalItems = new CheckedListBox.ObjectCollection(checkedListBoxInclude); for (int c = 0; c < dataMeranie.Columns.Count; c++) { dataMeranie.Columns[c].SortMode = DataGridViewColumnSortMode.NotSortable; dataMeranie.Columns[c].Visible = false; normalItems.Add(dataMeranie.Columns[c].HeaderText); } refreshIncludeColumns(normalItems); checkedListBoxInclude.SetItemChecked(0, true); checkedListBoxInclude.SetItemChecked(2, true); }