public static void OUTPUT1() { Thread_Class.Class1.progress1 = "0"; int mount = Convert.ToInt32(Thread_Class.Class1.Amount1); mmount1 = Convert.ToInt32(Thread_Class.Class1.Amount1); Set.Line line = new Set.Line(); int index_value = 0; Set.Products pro = new Set.Products(); for (int i = 1; i <= Convert.ToInt32(Thread_Class.Class1.Amount1) + 1; i++) { Delay(Convert.ToInt32(Thread_Class.Class1.speed1) * 1000); mount--; mmount1--; Thread_Class.Class1.wan1 = i.ToString(); Thread_Class.Class1.nam1 = mount.ToString(); if (Convert.ToInt32(Thread_Class.environment.temp) < Convert.ToInt32(Thread_Class.Class1.Temp1) - 10 || Convert.ToInt32(Thread_Class.environment.humid) < Convert.ToInt32(Thread_Class.Class1.Humid1) - 15) { int tem = Convert.ToInt32(Thread_Class.Class1.fail_1); Pass = "******"; tem++; Thread_Class.Class1.fail_1 = tem.ToString(); } else { int hum = Convert.ToInt32(Thread_Class.Class1.unfail_1); Pass = "******"; hum++; Thread_Class.Class1.unfail_1 = hum.ToString(); } int pr = Convert.ToInt32(Thread_Class.Class1.progress1); pr++; Thread_Class.Class1.progress1 = pr.ToString(); if (Pass == "0" && pr != Convert.ToInt32(Thread_Class.Class1.Amount1) + 1) { pro.Products_update2(index_value.ToString(), Thread_Class.Class1.Lot1, Thread_Class.environment.temp, Thread_Class.environment.humid, "ok", "null"); } else if (Pass == "1" && pr != Convert.ToInt32(Thread_Class.Class1.Amount1) + 1) { pro.Products_update2(index_value.ToString(), Thread_Class.Class1.Lot1, Thread_Class.environment.temp, Thread_Class.environment.humid, "no", "temp&humid"); } index_value++; } for (int i = 0; i <= Convert.ToInt32(Thread_Class.Class1.Amount1); i++) { pro.Products_update3(i.ToString(), Thread_Class.Class1.Lot1); Delay(100); } line.Line_Update3("L#1"); }
private void button2_Click(object sender, EventArgs e) { for (int i = 0; i < TBL_lot_id.Count; i++) { if (text_select_lot.Text == TBL_lot_id[i]) { int all_time = Convert.ToInt32(TBL_total_product_count[i]) * Convert.ToInt32(TBL_speed[i]); int minit = all_time / 60; int second = all_time % 60; if (MessageBox.Show("아래의 작업지시 내용을 추가하시겠습니까?\n작업명 = \t" + TBL_lot_id[i] + "\n모델명 = \t" + TBL_model_id[i] + "\n라인 = \t" + TBL_line_id[i] + "\n생산량 = \t" + TBL_total_product_count[i] + "\n속도 = \t" + TBL_speed[i] + "\n불량률 = \t" + TBL_product_fail_rate[i] + "\n색깔 = \t" + TBL_product_color[i] + "\n온도 = \t" + TBL_temp[i] + "\n습도 = \t" + TBL_humid[i] + "\n작업자 = \t" + "" + TBL_operid[i] + "\n예상소요시간 = \t" + minit + "분 " + second + "초", "작업지시 확인", MessageBoxButtons.YesNo) == DialogResult.Yes) { MessageBox.Show("추가되었습니다."); Set.Line line = new Set.Line(); Set.Lot lot = new Set.Lot(); MessageBox.Show(lot.req_lot_select(TBL_lot_id[i])); //monitor = new Control_Form_Monitoring(this); //monitor.Show(); if (TBL_line_id[i] == "L#1") { Thread_Class.Class1.unfail_1 = "0"; Thread_Class.Class1.fail_1 = "0"; monitor_index = 1; fm.control_Form_Monitoring1.grid_monitoring[2, 0].Value = "작업중"; fm.control_Form_Monitoring1.grid_monitoring[1, 0].Value = TBL_model_id[i]; fm.control_Form_Monitoring1.grid_monitoring[3, 0].Value = TBL_lot_id[i]; fm.control_Form_Monitoring1.line = "L#1"; Thread_Class.Class1.Line1 = "L#1"; fm.control_Form_Monitoring1.lot_id = TBL_lot_id[i]; Thread_Class.Class1.Lot1 = TBL_lot_id[i]; fm.control_Form_Monitoring1.model_name = TBL_model_id[i]; Thread_Class.Class1.Model_Name1 = TBL_model_id[i]; fm.control_Form_Monitoring1.amount = TBL_total_product_count[i]; Thread_Class.Class1.Amount1 = TBL_total_product_count[i]; fm.control_Form_Monitoring1.ing_speed = TBL_speed[i]; Thread_Class.Class1.speed1 = TBL_speed[i]; fm.control_Form_Monitoring1.finish_speed = minit + "분 " + second + "초"; Thread_Class.Class1.time1 = minit + "분" + second + "초"; Thread_Class.Class1.Temp1 = TBL_temp[i]; Thread_Class.Class1.Humid1 = TBL_humid[i]; Thread_Class.Class1.Oper_id1 = Form_login.oper_name; Thread Index1 = new Thread(new ThreadStart(OUTPUT1)); line.Line_Update(TBL_lot_id[i], TBL_line_id[i], TBL_operid[i]); Index1.Start(); Delay(1000 * (Convert.ToInt32(TBL_speed[i]) * Convert.ToInt32(TBL_total_product_count[i]))); fm.control_Form_Monitoring1.grid_monitoring[2, 0].Value = "대기중"; fm.control_Form_Monitoring1.grid_monitoring[1, 0].Value = ""; fm.control_Form_Monitoring1.grid_monitoring[3, 0].Value = ""; //fm.control_Form_Monitoring1.textBox1.Text = fm.control_Form_Monitoring1.line + "," + fm.control_Form_Monitoring1.lot_id + "," + fm.control_Form_Monitoring1.model_name + // "," + fm.control_Form_Monitoring1.amount + "," + fm.control_Form_Monitoring1.ing_speed + "," + fm.control_Form_Monitoring1.finish_speed + ","; } else if (TBL_line_id[i] == "L#2") { Thread_Class.Class2.unfail_2 = "0"; Thread_Class.Class2.fail_2 = "0"; fm.control_Form_Monitoring1.grid_monitoring[2, 1].Value = "작업중"; fm.control_Form_Monitoring1.grid_monitoring[1, 1].Value = TBL_model_id[i]; fm.control_Form_Monitoring1.grid_monitoring[3, 1].Value = TBL_lot_id[i]; fm.control_Form_Monitoring1.line = "L#2"; Thread_Class.Class2.Line2 = "L#2"; fm.control_Form_Monitoring1.lot_id = TBL_lot_id[i]; Thread_Class.Class2.Lot2 = TBL_lot_id[i]; fm.control_Form_Monitoring1.model_name = TBL_model_id[i]; Thread_Class.Class2.Model_Name2 = TBL_model_id[i]; fm.control_Form_Monitoring1.amount = TBL_total_product_count[i]; Thread_Class.Class2.Amount2 = TBL_total_product_count[i]; fm.control_Form_Monitoring1.ing_speed = TBL_speed[i]; Thread_Class.Class2.speed2 = TBL_speed[i]; fm.control_Form_Monitoring1.finish_speed = minit + "분 " + second + "초"; Thread_Class.Class2.time2 = minit + "분" + second + "초"; Thread_Class.Class2.temp2 = TBL_temp[i]; Thread_Class.Class2.humid2 = TBL_humid[i]; Thread_Class.Class2.Oper_id2 = Form_login.oper_name; Thread Index1 = new Thread(new ThreadStart(OUTPUT2)); Index1.Start(); Delay(1000 * (Convert.ToInt32(TBL_speed[i]) * Convert.ToInt32(TBL_total_product_count[i]))); fm.control_Form_Monitoring1.grid_monitoring[2, 1].Value = "대기중"; fm.control_Form_Monitoring1.grid_monitoring[1, 1].Value = ""; fm.control_Form_Monitoring1.grid_monitoring[3, 1].Value = ""; //fm.control_Form_Monitoring1.textBox1.Text = fm.control_Form_Monitoring1.line + "," + fm.control_Form_Monitoring1.lot_id + "," + fm.control_Form_Monitoring1.model_name + // "," + fm.control_Form_Monitoring1.amount + "," + fm.control_Form_Monitoring1.ing_speed + "," + fm.control_Form_Monitoring1.finish_speed + ","; } else if (TBL_line_id[i] == "L#3") { Thread_Class.Class3.unfail_3 = "0"; Thread_Class.Class3.fail_3 = "0"; fm.control_Form_Monitoring1.grid_monitoring[2, 2].Value = "작업중"; fm.control_Form_Monitoring1.grid_monitoring[1, 2].Value = TBL_model_id[i]; fm.control_Form_Monitoring1.grid_monitoring[3, 2].Value = TBL_lot_id[i]; fm.control_Form_Monitoring1.line = "L#3"; Thread_Class.Class3.Line3 = "L#3"; fm.control_Form_Monitoring1.lot_id = TBL_lot_id[i]; Thread_Class.Class3.Lot3 = TBL_lot_id[i]; fm.control_Form_Monitoring1.model_name = TBL_model_id[i]; Thread_Class.Class3.Model_Name3 = TBL_model_id[i]; fm.control_Form_Monitoring1.amount = TBL_total_product_count[i]; Thread_Class.Class3.Amount3 = TBL_total_product_count[i]; fm.control_Form_Monitoring1.ing_speed = TBL_speed[i]; Thread_Class.Class3.speed3 = TBL_speed[i]; fm.control_Form_Monitoring1.finish_speed = minit + "분 " + second + "초"; Thread_Class.Class3.time3 = minit + "분" + second + "초"; Thread_Class.Class3.Temp3 = TBL_temp[i]; Thread_Class.Class3.Humid3 = TBL_humid[i]; Thread_Class.Class3.Oper_id3 = Form_login.oper_name; Thread Index1 = new Thread(new ThreadStart(OUTPUT3)); Index1.Start(); Delay(1000 * (Convert.ToInt32(TBL_speed[i]) * Convert.ToInt32(TBL_total_product_count[i]))); fm.control_Form_Monitoring1.grid_monitoring[2, 2].Value = "대기중"; fm.control_Form_Monitoring1.grid_monitoring[1, 2].Value = ""; fm.control_Form_Monitoring1.grid_monitoring[3, 2].Value = ""; } } else { MessageBox.Show("취소되었습니다."); } } } }