1、管理信息系统课程设计程序代码附录附录C Program程序代码using System;using System.Collections.Generic;using System.Windows.Forms;using xyq20091204;using System.Data.SqlClient; static class Program / / 应用程序的主入口点。 / STAThread static void Main() Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(fa
2、lse); Application.Run(new 用户登录(); if (SQL_Class.LoginState = 1) data.data.ConnStr = Data Source=CAE47;Initial Catalog=xyq20091204;Integrated Security=True; Application.Run(new 供应商管理信息系统(); 附录D Property_Class代码using System;using System.Collections.Generic;using System.Text;using System.ComponentModel
3、;namespace xyq20091204 class Property_Class private string Id; private string Manager; private string Tel; private string Email; private string Addr; CategoryAttribute(供应商基本信息), DescriptionAttribute(显示供应商编号) public string 供应商编号 get return Id; set Id = value; CategoryAttribute(供应商基本信息), DescriptionAt
4、tribute(显示负责人) public string 负责人 get return Manager; set Manager = value; CategoryAttribute(供应商基本信息), DescriptionAttribute(显示联系电话) public string 联系电话 get return Tel; set Tel = value; CategoryAttribute(供应商基本信息), DescriptionAttribute(显示电子邮箱) public string 电子邮箱 get return Email; set Email = value; Cate
5、goryAttribute(供应商基本信息), DescriptionAttribute(显示通讯地址) public string 通讯地址 get return Addr; set Addr = value; 附录F SQL-Class代码using System;using System.Collections.Generic;using System.Text;using System.Data;using System.Data.SqlClient;namespace xyq20091204 public class SQL_Class public static int Login
6、State = 0; public static SqlConnection xyq_con; public static string xyq_sqlcon = Data Source=CAE47;Initial Catalog=xyq20091204;Integrated Security=True; public static SqlConnection getcon() xyq_con = new SqlConnection(xyq_sqlcon); /用SqlConnection对象与指定的数据库相连接 xyq_con.Open(); /打开数据库连接 return xyq_con;
7、 /返回SqlConnection对象的信息 public void con_close() if (xyq_con.State = ConnectionState.Open) /判断是否打开与数据库的连接 xyq_con.Close(); /关闭数据库的连接 xyq_con.Dispose(); /释放xyq_con变量的所用空间 public SqlDataReader getcom(string SQLstr) getcon(); /打开与数据库的连接 SqlCommand xyq_com = xyq_con.CreateCommand(); /创建一个SqlCommand对象 xyq_
8、com.CommandText = SQLstr; /获取指定的SQL语句 SqlDataReader xyq_read = xyq_com.ExecuteReader(); /执行SQL语句,生成一个SqlDataReader结果 return xyq_read; /返回读取结果 public void getsqlcom(string SQLstr) getcon(); /打开与数据库的连接 SqlCommand SQLcom = new SqlCommand(SQLstr, xyq_con);/创建一个SqlCommand对象 SQLcom.ExecuteNonQuery(); /执行S
9、QL语句 SQLcom.Dispose(); /释放SQLcom变量的所有空间 con_close(); /调用con_close()方法,关闭与数据库的连接 public DataSet getDataSet(string SQLstr, string tableName) getcon(); /打开与数据库的连接 SqlDataAdapter SQLda = new SqlDataAdapter(SQLstr,xyq_con);/创建SqlDataAdapter对象 DataSet xyq_DataSet = new DataSet(); /创建dataset对象 SQLda.Fill(x
10、yq_DataSet, tableName); /把读取的数据写入指定的数据表中 return xyq_DataSet; /返回DataSet对象的信息 附录J 添加新产品设计代码using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;using System.Collections
11、;namespace xyq20091204 public partial class 添加产品信息 : Form public ArrayList aryTem = new ArrayList(); public 添加产品信息() InitializeComponent(); SQL_Class SQLClass = new SQL_Class(); public string cmbString; /传递选中的供应商节点 public string ID; /传递选中产品的编号 public int OP_Type; /操作类型标识 public int OP_OK; /操作完成标识 pr
12、ivate void 添加产品信息_Load(object sender, EventArgs e) switch (OP_Type) case 0: /添加新产品信息 SqlDataReader DR = SQLClass.getcom(select 供应商编号,供应商名称 from 供应商信息表 ); bool ifcom = DR.Read(); if (!ifcom) MessageBox.Show(请先添加供应商!, 警告!, MessageBoxButtons.OK,MessageBoxIcon.Information); OP_OK = 0; /没有执行相关操作 this.Clo
13、se(); else 供应商编号cmb.Text = cmbString; /复选框的Text为cmbString的值 this.供应商编号cmb.Enabled = false; break; case 1: /修改产品信息 LoadInfo(); /调用自定义方法LoadInfo(),对窗体中的控件进行赋值。 产品编号txt.ReadOnly = true; this.供应商编号cmb.Enabled = false; this.批次号txt.Enabled = false; this.数量txt.Enabled = false; this.单价txt.Enabled = false; t
14、his.联系人txt.Enabled = false; break; public void LoadInfo() DataSet DSet = SQLClass.getDataSet(select * from 产品信息表 where 产品编号= + ID + , 产品信息表); DataTable dt = DSet.Tables产品信息表; 产品编号txt.Text = ID; 产品名称txt.Text = dt.Rows0产品名称.ToString(); 所属系列cmb.Text = dt.Rows0所属系列名称.ToString(); 产品类型cmb.Text = dt.Rows0产
15、品类型.ToString(); 质量等级txt.Text = dt.Rows0质量等级.ToString(); 规格txt.Text = dt.Rows0规格.ToString(); 保质期txt.Text = dt.Rows0保质期.ToString(); 净重txt.Text = dt.Rows0净重.ToString(); 产地txt.Text = dt.Rows0产地.ToString(); 产品编号txt.ReadOnly = true; 产品名称txt.Enabled = true; 供应商编号cmb.Enabled = true; 所属系列cmb.Enabled = true;
16、产品类型cmb.Enabled = true; 质量等级txt.Enabled = true; 规格txt.Enabled = true; 保质期txt.Enabled = true; 净重txt.Enabled = true; 产地txt.Enabled = true; 批次号txt.Enabled = true; 数量txt.Enabled = true; 单价txt.Enabled = true; 联系人txt.Enabled = true; private void 确定_Click(object sender, EventArgs e) string strDept = 供应商编号c
17、mb.Text.Split(, ); /定义一个string数组strDept switch (OP_Type) case 0: if (产品编号txt.Text.Trim() = | 产品名称txt.Text.Trim() = | 产品类型cmb.Text.Trim() = | 所属系列cmb.Text.Trim() = | 供应商编号cmb.Text.Trim() = | 批次号txt.Text.Trim() = | 数量txt.Text.Trim() = | 单价txt.Text.Trim() = ) MessageBox.Show(带*为必填选项,不可为空!, 警告!, Message
18、BoxButtons.OK, MessageBoxIcon.Information); return; if (数量txt.Text.Trim() = 0 | 单价txt.Text.Trim() = 0) MessageBox.Show(数量及单价不可为零!, 警告!, MessageBoxButtons.OK, MessageBoxIcon.Information); return; string sq = select * from 产品信息表 where 产品编号= + 产品编号txt.Text.Trim() + ; SqlDataReader DR = SQLClass.getcom(
19、sq); bool x = DR.Read(); if (!x) string sql = insert into 产品信息表 values ( + 产品编号txt.Text.Trim() + , + 产品名称txt.Text.Trim() + , + 产品类型cmb.Text.Trim() + , + 所属系列cmb.Text.Trim() + , + 规格txt.Text.Trim() + , + 净重txt.Text.Trim() + , + 保质期txt.Text.Trim() + , + 产地txt.Text.Trim() + , + 质量等级txt.Text.Trim() + );
20、 SQLClass.getsqlcom(sql); string sq1 = select * from 供应商产品关联表 where 产品编号= + 产品编号txt.Text.Trim() + and 供应商编号= + strDept0.ToString() + ; SqlDataReader DR1 = SQLClass.getcom(sq1); bool y = DR1.Read(); if (!y) aryTem.Add(产品编号txt.Text.Trim(); aryTem.Add(产品名称txt.Text.Trim(); aryTem.Add(产品类型cmb.Text.Trim()
21、; aryTem.Add(所属系列cmb.Text.Trim(); aryTem.Add(规格txt.Text.Trim(); aryTem.Add(净重txt.Text.Trim(); aryTem.Add(保质期txt.Text.Trim(); aryTem.Add(产地txt.Text.Trim(); aryTem.Add(质量等级txt.Text.Trim(); sq1 = select * from 供应商产品关联表 where 产品编号= + 产品编号txt.Text.Trim() + and 供应商编号= + strDept0.ToString() + and 批次号= + 批次
22、号txt.Text.Trim() + ; DR1 = SQLClass.getcom(sq1); y = DR1.Read(); if (!y) string sql1 = insert into 供应商产品关联表 values ( + 产品编号txt.Text.Trim() + , + strDept0.ToString() + , + 批次号txt.Text.Trim() + , + 数量txt.Text.Trim() + , + 单价txt.Text.Trim() + , + 联系人txt.Text.Trim() + ); SQLClass.getsqlcom(sql1); else M
23、essageBox.Show(this, 该批次已存在,请重新添加!, 提示, MessageBoxButtons.OK, MessageBoxIcon.Information); return; OP_OK = 1; /操作完成 break; case 1: if (产品名称txt.Text.Trim() = | 产品类型cmb.Text.Trim() = | 所属系列cmb.Text.Trim() = ) MessageBox.Show(带*为必填选项,不可为空!, 警告!, MessageBoxButtons.OK, MessageBoxIcon.Information); return
24、; string sql2 = update 产品信息表 set 产品名称= + 产品名称txt.Text.Trim() + ,产品类型= + 产品类型cmb.Text.Trim() + ,所属系列名称= + 所属系列cmb.Text.Trim() + ,规格= + 规格txt.Text.Trim() + ,净重= + 净重txt.Text.Trim() + ,保质期= + 保质期txt.Text.Trim() + ,产地= + 产地txt.Text.Trim() + ,质量等级= + 质量等级txt.Text.Trim() + where 产品编号= + 产品编号txt.Text.Trim(
25、) + ; SQLClass.getsqlcom(sql2); OP_OK = 1; /操作完成 break; SQLClass.con_close(); this.Close(); private void 取消_Click(object sender, EventArgs e) OP_OK = 0; SQLClass.con_close(); this.Close(); private void 供应商编号cmb_SelectedIndexChanged(object sender, EventArgs e) this.供应商编号cmb.Items.Clear(); DataSet DSe
26、t = SQLClass.getDataSet(select 供应商编号,供应商名称 from 供应商信息表, 供应商名称表); DataTable dt = DSet.Tables供应商名称表; /创建一个DataTable对象 for (int i = 0; i 0) 产品名称txt.Text = dt.Rows01.ToString(); 产品类型cmb.Text = dt.Rows02.ToString(); 所属系列cmb.Text = dt.Rows03.ToString(); 规格txt.Text = dt.Rows04.ToString(); 净重txt.Text = dt.R
27、ows05.ToString(); 保质期txt.Text = dt.Rows06.ToString(); 产地txt.Text = dt.Rows07.ToString(); 质量等级txt.Text = dt.Rows08.ToString(); 产品名称txt.Enabled = false; 产品类型cmb.Enabled = false; 所属系列cmb.Enabled = false; 规格txt.Enabled = false; 净重txt.Enabled = false; 保质期txt.Enabled = false; 产地txt.Enabled = false; 质量等级txt.Enabled = false; else 产品名称txt.Text = ; 产品类型cmb.Text = ; 所属系列cmb.Text = ; 规格txt.Text = ; 净重txt.Text = ; 保质期txt.Text = ; 产地txt.Text = ; 质量等级txt.Text = ; 产品名称txt.Enabled = true; 产品类型cmb.Enabled = true; 所属系列cmb.Enabled = true; 规格txt.Enabled = true