某企业生产工厂【防窜货】程序实现过程
生活随笔
收集整理的這篇文章主要介紹了
某企业生产工厂【防窜货】程序实现过程
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
方案規劃
?
?
?
第一方案A工序 程序界面
?
第一方案 A工序代碼
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Net; using System.Data.Sql; using System.Data.SqlClient;namespace 防竄貨系統 {public partial class F_Master : Form{public F_Master(){InitializeComponent();}SqlConnection con = new SqlConnection("server = 172.168.0.15;database = factory ;uid= sa ;pwd= 123456789");string invcode = "";#region 裝箱private void TsmZX_Click(object sender, EventArgs e){panelMaster.Visible = true;tbInvcode.Focus();tbBoxCode.Enabled = false;try{con.Open();if (con.State == ConnectionState.Open){labMessage.Text = "系統準備就緒!";}else{labMessage.Text = "數據庫連接錯誤,請檢查網絡設置或聯系開發人員!";labMessage.ForeColor = Color.Red;}con.Close();}catch{labMessage.Text = "數據庫連接錯誤,請檢查網絡設置或聯系開發人員!";labMessage.ForeColor = Color.Red;}}#endregion#region 拆箱private void tsmCX_Click(object sender, EventArgs e){F_Del f = new F_Del(this);this.Enabled = false;f.ShowDialog(this);}#endregion#region 程序載入private void F_Master_Load(object sender, EventArgs e){tbMcode.Text = Dns.GetHostName();}#endregion#region 掃入產品碼private void tbInvcode_KeyDown(object sender, KeyEventArgs e){con.Open();if (e.KeyCode == Keys.Enter){if (tbInvcode.Text != ""){labBoxcodeMsg.Text = "";labInvcodeMsg.Text = "";labMessage.Text = "";string selectInvcode = "select * from SuporMaster where invcode = '" + tbInvcode.Text.ToString().Trim() + "' ";SqlCommand cmd = new SqlCommand(selectInvcode, con);SqlDataAdapter sda = new SqlDataAdapter(cmd);DataSet ds = new DataSet();sda.Fill(ds);if (ds.Tables[0].Rows.Count==0){invcode = tbInvcode.Text.ToString();tbBoxCode.Text = "";tbBoxCode.Enabled = true;tbBoxCode.Focus();tbInvcode.Enabled = false;}else{labInvcodeMsg.Text = "產品:" + tbInvcode.Text.ToString();labMessage.Text = "已存在裝箱記錄,不能重復裝箱,請檢查!";labMessage.ForeColor = Color.Red;labInvcodeMsg.ForeColor = Color.Red;tbInvcode.Text = "";}}else{labMessage.Text = "產品碼不能為空!";labMessage.ForeColor = Color.Red;}}con.Close();}#endregion#region 掃入箱碼private void tbBoxCode_KeyDown(object sender, KeyEventArgs e){con.Open();if (e.KeyCode == Keys.Enter){if (tbBoxCode.Text != ""){string selectBoxCode = "select * from SuporMaster where boxnum = '" + tbBoxCode.Text.ToString().Trim() + "'";SqlCommand cmdA = new SqlCommand(selectBoxCode, con);SqlDataAdapter sda = new SqlDataAdapter(cmdA);DataSet ds = new DataSet();sda.Fill(ds);if (ds.Tables[0].Rows.Count==0){tbInvcode.Enabled = true;tbInvcode.Text = "";tbInvcode.Focus();string productid = tbBoxCode.Text + invcode;string str = " insert into SuporMaster (ProductNum,BoxNum,Invcode,date,Mcode,OutsideBox) values ('" + productid + "','" + tbBoxCode.Text.ToString() + "','" + invcode + "' ,'" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "','" + tbMcode.Text.ToString() + "' ,'1')";try{if (con.State == ConnectionState.Open){SqlCommand cmd = new SqlCommand(str, con);try{cmd.ExecuteNonQuery();labInvcodeMsg.Text = "產品:" + invcode;labBoxcodeMsg.Text = "彩箱:" + tbBoxCode.Text.ToString();labMessage.Text = "裝箱成功!";labInvcodeMsg.ForeColor = Color.Green;labBoxcodeMsg.ForeColor = Color.Green;labMessage.ForeColor = Color.Green;}catch{labMessage.Text = "裝箱失敗!";labMessage.ForeColor = Color.Red;}}tbBoxCode.Enabled = false;tbBoxCode.Text = "";}catch{labMessage.Text = "數據庫連接錯誤,請檢查網絡設置或聯系開發人員!";labMessage.ForeColor = Color.Red;}}else{labBoxcodeMsg.Text = "彩箱:" + tbBoxCode.Text.ToString();labMessage.Text = "已存在裝箱記錄,不能重復裝箱,請檢查!";labMessage.ForeColor = Color.Red;labBoxcodeMsg.ForeColor = Color.Red;tbBoxCode.Text = "";}}else{labMessage.Text = "彩箱碼不能為空!";labMessage.ForeColor = Color.Red;}}con.Close();}#endregion} }?
第一方案 B工序程序界面
?
?
第一方案B工序代碼
?
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Net; using System.Data.Sql; using System.Data.SqlClient;namespace 防竄貨系統 {public partial class F_Master : Form{public F_Master(){InitializeComponent();}SqlConnection con = new SqlConnection("server = 172.168.0.15;database = factory ;uid= sa ;pwd= 12346789");string oldMcode = ""; //存之前的機號string boxNum = ""; //存彩箱號string strOutsideBox = "";//存數據庫中現有的外箱碼#region 裝箱private void TsmZX_Click(object sender, EventArgs e){panelMaster.Visible = true;tbBoxCode.Focus();tbOutsideBox.Enabled = false;try{con.Open();if (con.State == ConnectionState.Open){labMessage.Text = "系統準備就緒!";}else{labMessage.Text = "數據庫連接錯誤,請檢查網絡設置或聯系開發人員!";labMessage.ForeColor = Color.Red;}con.Close();}catch{labMessage.Text = "數據庫連接錯誤,請檢查網絡設置或聯系開發人員!";labMessage.ForeColor = Color.Red;}}#endregion#region 拆箱private void tsmCX_Click(object sender, EventArgs e){F_Del f = new F_Del(this);this.Enabled = false;f.ShowDialog(this);}#endregion#region 程序載入private void F_Master_Load(object sender, EventArgs e){tbMcode.Text = Dns.GetHostName();}#endregion#region 掃入彩箱碼private void tbInvcode_KeyDown(object sender, KeyEventArgs e){con.Open();if (e.KeyCode == Keys.Enter){if (tbBoxCode.Text != ""){labOutsideMsg.Text = "";labBoxcodeMsg.Text = "";labMessage.Text = "";string selectBOXcode = "select * from SuporMaster where BoxNum = '" + tbBoxCode.Text.ToString().Trim() + "' ";SqlCommand cmd = new SqlCommand(selectBOXcode, con);SqlDataAdapter sda = new SqlDataAdapter(cmd);DataSet ds = new DataSet();sda.Fill(ds);if (ds.Tables[0].Rows.Count != 0){for (int i = 0; i < ds.Tables[0].Rows.Count; i++){oldMcode = ds.Tables[0].Rows[i]["Mcode"].ToString();strOutsideBox = ds.Tables[0].Rows[i]["OutsideBox"].ToString();}boxNum = tbBoxCode.Text; //將彩箱碼賦于變量boxnumif (strOutsideBox != "1"){labBoxcodeMsg.ForeColor = Color.Red;labOutsideMsg.ForeColor = Color.Red;labMessage.ForeColor = Color.Red;labBoxcodeMsg.Text = "彩箱:<" + boxNum + ">已經與";labOutsideMsg.Text = "外箱:<" + strOutsideBox + ">裝過箱";labMessage.Text = "請檢查!";// tbOutsideBox.Text = "";tbBoxCode.Text = "";tbBoxCode.Enabled = true;tbBoxCode.Focus();}else{tbOutsideBox.Text = ""; //將外箱碼置空tbOutsideBox.Enabled = true; //外箱碼激活tbOutsideBox.Focus(); //外箱碼獲取焦點tbBoxCode.Enabled = false; // 彩箱碼鎖定 }}else{labBoxcodeMsg.Text = "彩箱:<" + tbBoxCode.Text.ToString() + ">";labMessage.Text = "不存在產品裝箱記錄,請檢查!";labMessage.ForeColor = Color.Red;labBoxcodeMsg.ForeColor = Color.Red;tbBoxCode.Text = "";}}else{labMessage.Text = "彩箱碼不能為空!";labMessage.ForeColor = Color.Red;}}con.Close();}#endregion#region 掃入外箱碼private void tbBoxCode_KeyDown(object sender, KeyEventArgs e){con.Open();string strBoxCode = ""; //存數據庫中現在有彩箱碼if (e.KeyCode == Keys.Enter){if (tbOutsideBox.Text != "" && tbBoxCode.Text != ""){string selectBoxCode = "select * from SuporMaster where OutsideBox ='" + tbOutsideBox.Text.ToString().Trim() + "'";SqlCommand cmdA = new SqlCommand(selectBoxCode, con);SqlDataAdapter sda = new SqlDataAdapter(cmdA);DataSet ds = new DataSet();sda.Fill(ds);for (int i = 0; i < ds.Tables[0].Rows.Count; i++){strBoxCode = ds.Tables[0].Rows[i]["BoxNum"].ToString();strOutsideBox = ds.Tables[0].Rows[i]["OutsideBox"].ToString();}if (strOutsideBox == "1" && tbOutsideBox.Text.ToString() != strOutsideBox){tbBoxCode.Enabled = true;tbBoxCode.Text = "";tbBoxCode.Focus();string mcode = oldMcode + "|" + Dns.GetHostName(); //拼接原機號和現機號//更新外箱號和機號string str = " update SuporMaster set outsidebox ='" + tbOutsideBox.Text.ToString().Trim() + "', Mcode='" + mcode + "' where BoxNum='" + boxNum + "'";try{if (con.State == ConnectionState.Open){SqlCommand cmd = new SqlCommand(str, con);try{cmd.ExecuteNonQuery();labBoxcodeMsg.Text = "彩箱:" + boxNum; ;labOutsideMsg.Text = "外箱:" + tbOutsideBox.Text.ToString();labMessage.Text = "裝箱成功!";labBoxcodeMsg.ForeColor = Color.Green;labOutsideMsg.ForeColor = Color.Green;labMessage.ForeColor = Color.Green;}catch{labMessage.Text = "裝箱失敗!";labMessage.ForeColor = Color.Red;}}tbOutsideBox.Enabled = false;tbOutsideBox.Text = "";}catch{labMessage.Text = "數據庫連接錯誤,請檢查網絡設置或聯系開發人員!";labMessage.ForeColor = Color.Red;}}else{labBoxcodeMsg.ForeColor = Color.Red;labOutsideMsg.ForeColor = Color.Red;labMessage.ForeColor = Color.Red;labBoxcodeMsg.Text = "外箱:<" + strOutsideBox + ">已經與";labOutsideMsg.Text = "彩箱:<" + strBoxCode + ">裝過箱";labMessage.Text = "請檢查!";// tbOutsideBox.Text = "";tbBoxCode.Text = "";tbBoxCode.Enabled = true;tbBoxCode.Focus();}}else{labMessage.Text = "彩箱碼或者外箱碼為空,請檢查!";labMessage.ForeColor = Color.Red;}}con.Close();}#endregion} }?
第二方案 A工序 程序界面
?
第二方案 A工序代碼
?
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Net; using System.Data.Sql; using System.Data.SqlClient;namespace 防竄貨系統 {public partial class F_Master : Form{public F_Master(){InitializeComponent();}SqlConnection con = new SqlConnection("server = 172.168.0.15;database = factory ;uid= sa ;pwd= 123456789");#region 程序載入private void F_Master_Load(object sender, EventArgs e){tbMcode.Text = Dns.GetHostName();try{con.Open();if (con.State == ConnectionState.Open){labMessage.Text = "系統準備就緒!";labMessage.ForeColor = Color.Green;}else{labMessage.Text = "數據庫連接錯誤,請檢查網絡設置或聯系開發人員!";labMessage.ForeColor = Color.Red;}con.Close();}catch{labMessage.Text = "數據庫連接錯誤,請檢查網絡設置或聯系開發人員!";labMessage.ForeColor = Color.Red;}}#endregion#region 掃入產品碼private void tbInvcode_KeyDown(object sender, KeyEventArgs e){if (e.KeyCode == Keys.Enter){if (tbInvcode.Text != ""){if (falg() == true){con.Open();string str = "insert into SuporFCH(invcode,McodeA,DateA)values('" + tbInvcode.Text.ToString().Trim() + "','" + tbMcode.Text.ToString().Trim() + "','" + DateTime.Now.ToString() + "') ";try{if (con.State == ConnectionState.Open){SqlCommand cmd = new SqlCommand(str, con);try{cmd.ExecuteNonQuery();labMessage.Text = tbInvcode.Text.ToString().Trim() + "掃碼成功!";labMessage.ForeColor = Color.Green;}catch{labMessage.Text = "裝箱失敗!";labMessage.ForeColor = Color.Red;}}}catch{labMessage.Text = "數據庫連接錯誤,請檢查網絡連接!";}con.Close();}else{labMessage.Text = tbInvcode.Text.ToString().Trim()+"重復,請檢查!";labMessage.ForeColor = Color.Red;}}else{labMessage.Text = "產品碼不能為空,請檢查!";labMessage.ForeColor = Color.Red; }tbInvcode.Text = "";}}#endregion//判斷產品碼是否重復private bool falg(){con.Open();string str ="select * from SuporFCH where invcode='"+tbInvcode.Text.ToString().Trim()+"'" ;SqlCommand cmd = new SqlCommand(str, con);SqlDataAdapter sda = new SqlDataAdapter(cmd);DataSet ds = new DataSet();sda.Fill(ds);con.Close();if (ds.Tables[0].Rows.Count == 0){return true;}else{return false;}}} }?
第二方案 B工序界面
?
第二方案 B工序代碼
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Net; using System.Data.Sql; using System.Data.SqlClient;namespace 防竄貨系統 {public partial class F_Master : Form{public F_Master(){InitializeComponent();}SqlConnection con = new SqlConnection("server = 172.168.0.15;database = factory ;uid= sa ;pwd= 123456789"); #region 程序載入private void F_Master_Load(object sender, EventArgs e){tbMcode.Text = Dns.GetHostName();selectFalg();selectAll();try{con.Open();if (con.State == ConnectionState.Open){labMessage.Text = "系統準備就緒!";labMessage.ForeColor = Color.Green;}else{labMessage.Text = "數據庫連接錯誤,請檢查網絡設置或聯系開發人員!";labMessage.ForeColor = Color.Red;}con.Close();}catch{labMessage.Text = "數據庫連接錯誤,請檢查網絡設置或聯系開發人員!";labMessage.ForeColor = Color.Red;}}#endregion#region 掃入外箱碼private void tbInvcode_KeyDown(object sender, KeyEventArgs e){if (e.KeyCode == Keys.Enter){if (tbBoxCode.Text != ""){if (flag() == true){con.Open();string str = " update SuporFCH set boxcode = '"+tbBoxCode.Text.ToString().Trim()+"',mcodeB='"+tbMcode.Text.ToString().Trim()+"',dateb='"+DateTime.Now.ToString()+"' where ID=(select MIN(id) as id from SuporFCH where boxcode is null)";SqlCommand cmd = new SqlCommand(str, con);try{cmd.ExecuteNonQuery();labMessage.Text = "<" + tbBoxCode.Text.ToString().Trim() + ">裝箱成功,請檢查!";labMessage.ForeColor = Color.Green;}catch{labMessage.Text = "<" + tbBoxCode.Text.ToString().Trim() + ">裝箱失敗,請檢查!";labMessage.ForeColor = Color.Red;}con.Close();}else{labMessage.Text = "外箱碼<" + tbBoxCode.Text.ToString().Trim() + ">重復,請檢查!";labMessage.ForeColor = Color.Red;}selectFalg();selectAll();}else{labMessage.Text = "彩箱碼不能為空!";labMessage.ForeColor = Color.Red;}tbBoxCode.Text = "";}}#endregion//顯示產品碼private void selectFalg(){con.Open();string str = " select ID as 流水號,invcode as 產品碼 from suporfch where boxcode is null order by id";try {if (con.State == ConnectionState.Open){SqlDataAdapter sda = new SqlDataAdapter(str, con);DataSet ds = new DataSet();sda.Fill(ds);dataGridView1.DataSource = ds.Tables[0];}}catch{labMessage.Text = "數據庫連接出錯,請檢查網絡!";labMessage.ForeColor = Color.Red; }con.Close();}//判斷箱碼是否重復private bool flag(){con.Open();string str = " select * from SuporFCH where boxcode='" + tbBoxCode.Text.ToString().Trim() + "' ";SqlCommand cmd = new SqlCommand(str, con);SqlDataAdapter sda = new SqlDataAdapter(cmd);DataSet ds = new DataSet();sda.Fill(ds);con.Close();if (ds.Tables[0].Rows.Count == 0){return true;}else{return false;}}//顯示掃入的外箱碼private void selectAll(){con.Open();string str = "select top 100 ID as 流水號,invcode as 產品碼,boxcode as 外箱碼 from suporfch where boxcode is not null order by ID desc";try{if (con.State == ConnectionState.Open){SqlDataAdapter sda = new SqlDataAdapter(str, con);DataSet ds = new DataSet();sda.Fill(ds);dataGridView2.DataSource = ds.Tables[0];}}catch{labMessage.Text = "數據庫連接出錯,請檢查網絡!";labMessage.ForeColor = Color.Red;}con.Close();}//拆箱private void butCX_Click(object sender, EventArgs e){F_Del f = new F_Del(this);this.Enabled = false;f.ShowDialog(this);}private void timer1_Tick(object sender, EventArgs e){selectFalg();}} }?
轉載于:https://www.cnblogs.com/hobe6699/p/5619455.html
總結
以上是生活随笔為你收集整理的某企业生产工厂【防窜货】程序实现过程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab如何下载a股数据,matla
- 下一篇: 水泵和PHM和风机