private void deleteClick(object sender, EventArgs e) { if (u != -1) { if (project.projectID != int.Parse(dataSet.Tables[0].Rows[u][0].ToString())) { SqlDataBaseClient.SQLCommandDeleteProject(dataSet.Tables[0].Rows[u][0].ToString()); dataSet = SqlDataBaseClient.SQLCommandSelectAllFrom("Project"); files = new string[dataSet.Tables[0].Rows.Count]; listView1.Items.Clear(); for (int i = 0; i < dataSet.Tables[0].Rows.Count; i++) { files[i] = dataSet.Tables[0].Rows[i][1].ToString(); } foreach (string file in files) { ListViewItem lvi = new ListViewItem(); lvi.Text = file; listView1.Items.Add(lvi); } u = -1; } else { MessageBox.Show("Не удалось выполнить удаление, так как проект открыт в программе. Закройте текущий проект и повторите удаление."); } } else { MessageBox.Show("Выберите проект."); } }
private void set_projectName_Click(object sender, EventArgs e) { is_unique = true; dataSet = SqlDataBaseClient.SQLCommandSelectAllFromColumn("Project", "ProjectName"); if (textBox1.Text.Length != 0) { for (int i = 0; i < dataSet.Tables[0].Rows.Count && is_unique; i++) { if (dataSet.Tables[0].Rows[i][0].ToString() == textBox1.Text) { MessageBox.Show("Такое название проекта уже существует, выберите другое."); is_unique = false; } } if (is_unique) { sol = new Solver(); mainform.TARAT(sol); project.projectID = SqlDataBaseClient.SQLCustomCommandSelectMAXFrom("Project", "ProjectID") + 1; project.set_default(); project.projectName = textBox1.Text; Close(); mainform.Activate(); } } else { MessageBox.Show("Введите название проекта."); } }
private void button1_Click(object sender, EventArgs e) { SqlDataBaseClient.SQLCommandCreateProject(project.projectID + ", N\'" + project.projectName + "\'," + project.countDevices, project.crossEstimate, project.chanellsVolume.ToString()); for (i = 0; i < project.countDevices; i++) { for (j = i + 1; j < project.countDevices; j++) { if (sol.matrix_conn[i, j] != 0) { SqlDataBaseClient.SQLCommandCreateCon(p + "," + project.projectID + "," + i + "," + j); p++; } if (sol.matrix_chan[i, j] != 0) { SqlDataBaseClient.SQLCommandCreateChan(t + "," + project.projectID + "," + i + "," + j + ", ", sol.matrix_chan[i, j]); for (int iu = 0; iu < project.countCon; iu++) { for (int ju = 0; ju < sol.matrix_kol_versh_v_soed[iu] - 1; ju++) { if ((sol.matrix_y[iu, ju] == i && sol.matrix_y[iu, ju + 1] == j) || (sol.matrix_y[iu, ju + 1] == i && sol.matrix_y[iu, ju] == j)) { SqlDataBaseClient.SQLCommandCreateTrack(project.projectID + "," + iu + "," + t); } } } t++; } } } for (i = 0; i < project.countCon; i++) { for (j = i; j < project.countCon; j++) { if (sol.matrix_x[i, j] != 0) { SqlDataBaseClient.SQLCommandCreateEMC(project.projectID + "," + i + "," + j); } } } project.is_opened = true; project.is_set = false; mainform.Activate(); Close(); }
public Start(Project project, MainForm mainform, Solver sol) { this.sol = sol; u = -1; this.project = project; this.mainform = mainform; InitializeComponent(); dataSet = SqlDataBaseClient.SQLCommandSelectAllFrom("Project"); files = new string[dataSet.Tables[0].Rows.Count]; for (int i = 0; i < dataSet.Tables[0].Rows.Count; i++) { files[i] = dataSet.Tables[0].Rows[i][1].ToString(); } foreach (string file in files) { ListViewItem lvi = new ListViewItem(); lvi.Text = file; listView1.Items.Add(lvi); } }
private void MainForm_Activated(object sender, EventArgs e) { if (project.projectID != 0) { if (project.is_opened && project.is_set == false) { Text = "Просмотр открытого проекта: " + project.projectName; project.is_set = true; n = project.countDevices; dataGridView1.ColumnCount = dataGridView1.RowCount = n; matrix_chan = new double[n, n]; matrix_con = new int[n, n]; dataGridView1_setDefault_Chan(); dataGridView1_setDefault_Con(); dataset_con = SqlDataBaseClient.SQLCustomCommandSelectAllFrom("DeviceConnectionSettings", "projectid=" + project.projectID); dataset_chan = SqlDataBaseClient.SQLCustomCommandSelectAllFrom("ChannelConnectionParameters", "projectid=" + project.projectID); dataset_x = SqlDataBaseClient.SQLCustomCommandSelectAllFrom("EmcParameters", "projectid=" + project.projectID); dataset_y = SqlDataBaseClient.SQLCustomCommandSelectAllFrom("trackoptions", "projectid=" + project.projectID); m_chan = dataset_chan.Tables[0].Rows.Count; project.countCon = m = dataset_con.Tables[0].Rows.Count; sol.matrix_y = new int[m, n]; dataGridView1_setOpen(); sol.matrix_kol_versh_v_soed = new int[m]; sol.matrix_x = new int[m, m]; sol.dist_put_all = new double[m]; sol.crossEstimate = project.crossEstimate; for (int gh = 0; gh < m; gh++) { sol.matrix_kol_versh_v_soed[gh] = SqlDataBaseClient.SQLCustomCommandSelectOneFromInt("trackoptions", "ConnectionID=" + gh + " and projectid=" + project.projectID) + 1; for (i = 0; i < dataset_x.Tables[0].Rows.Count; i++) { sol.matrix_x[int.Parse(dataset_x.Tables[0].Rows[i][1].ToString()), int.Parse(dataset_x.Tables[0].Rows[i][2].ToString())] = 1; } } int[] ter_soed = new int[m]; for (int dh = 0; dh < m;) //текущее соединение { for (int gh = 0; gh < dataset_y.Tables[0].Rows.Count; gh++) //текущая запись в трэк опшинс перебираем { if (dh == int.Parse(dataset_y.Tables[0].Rows[gh][1].ToString())) //если запись трек опшенс принадлежит этому соединению { for (int zh = 0; zh < dataset_chan.Tables[0].Rows.Count; zh++) //текущая запись в перечне каналов перебираем { if (dataset_y.Tables[0].Rows[gh][2].ToString() == dataset_chan.Tables[0].Rows[zh][0].ToString()) //если в текущей записи трэка содержится текущий канал { if (int.Parse(dataset_chan.Tables[0].Rows[zh][2].ToString()) == sol.matrix_y[dh, ter_soed[dh]]) { ter_soed[dh]++; sol.matrix_y[dh, ter_soed[dh]] = int.Parse(dataset_chan.Tables[0].Rows[zh][3].ToString()); sol.dist_put_all[dh] += double.Parse(dataset_chan.Tables[0].Rows[zh][4].ToString()); } else if (int.Parse(dataset_chan.Tables[0].Rows[zh][3].ToString()) == sol.matrix_y[dh, ter_soed[dh]]) { ter_soed[dh]++; sol.matrix_y[dh, ter_soed[dh]] = int.Parse(dataset_chan.Tables[0].Rows[zh][2].ToString()); sol.dist_put_all[dh] += double.Parse(dataset_chan.Tables[0].Rows[zh][4].ToString()); } } } } } if (ter_soed[dh] == sol.matrix_kol_versh_v_soed[dh] - 1) { dh++; } } } else { if (m != project.countCon) { m_det = 0; m = project.countCon; dataGridView1_setDefault_Con(); matrix_con = new int[n, n]; } else if (n != project.countDevices) { m_det = 0; n = project.countDevices; matrix_chan = new double[n, n]; matrix_con = new int[n, n]; dataGridView1.ColumnCount = dataGridView1.RowCount = n; dataGridView1_setDefault_Chan(); dataGridView1_setDefault_Con(); } } } }