当前位置:首页 >> 计算机软件及应用 >> 超市管理系统项目

超市管理系统项目


《C#.NET 访问数据库设计报告》
项目名称: 班 学 姓 级: 号: 名: 超市管理系统_ 09 软大 2 班 200902040233 龚新菊 2010-12-25

完成日期:

1

<一>:系统分析
项目名称 其他参与 人员 本人在本 项目中主 要完成的 工作 超市管理系统项目设计 谢如意 邹浩杰 李义 王胜 姓名 徐黎 龚新菊

2

<一>系统需求分析:
1:现计算机管理超市的功能,具体完成用户基本信息管理、员工基本信息管 理、进货基本信息管理、商品基本信息管理、超市供应商基本信息管理、销售基 本信息管理等功能。 2:系统的功能需求:本系统用户分为普通用户和管理员用户两类,管理员用 户负责系统的维护,包括对用户信息、员工基本信息、进货基本信息、商品基本 信息、超市供应商基本信息、销售基本信息管理的录入、修改、查询、删除等。 普通用户有查看的权限。 3:系统功能划分:用户通过身份验证后进入主界面。主界面为管理员提供所 有选择:用户信息管理、员工信息管理、进货信息管理、商品基本信息管理、超 市供应商基本信息管理、销售基本信息管理、和退出系统。普通用户有查看的权 限和使用销售基本信息管理的出售表功能。

<二>系统的功能分析:
1:用户基本信息管理:在维护用户基本信息管理中,只有管理员可以增加、修 改、查询、删除车主信息,普通用户只能查看。 2:员工基本信息管理:在给出员工基本信息,只有管理员可以实现增加、修改、 查询、删除车辆信息、普通用户只能查看。 3:进货基本信息管理:在给出所有进货基本信息中,只有管理员可以实现增加、 修改、查询、删除车辆信息、普通用户只能查看。 4:商品基本信息管理:在给出所有:商品基本信息中,只有管理员可以实现增 加、修改、查询、删除车辆信息、普通用户只能查看。 5:超市供应商基本信息管理:在给出所有超市供应商信息中,只有管理员可以 实现增加、修改、查询、删除车辆信息、普通用户只能查看。
6:销售信息管理:给出的所有销售信息中,只有管理员实现增加、修改、查询、删除

车辆信息、普通用户只能查看。

<三>功能模块设计:
对上述功能进行集中分析、分块,按照结构化程序设计的要求,得到功能模块图如下:

3

超市管理系统

用 户 管 理 系统

员工 管 理 系统

进 货 管 理 系统

商 品 信 息 管理

供 应 商 管 理

销 售 信 息 管理

用 户 信 息 添 加

用 户 信 息 修 改

用 户 信 息 查 询

员 工 信 息 添 加

员 工 信 息 修 改

员 工 信 息 查 询

进 货 信 息 添 加

进 货 信 息 修 改

进 货 信 息 查 询

商 品 信 息 添 加

商 品 信 息 修 改

商 品 信 息 查 询

供 应 商 信 息 添 加

供 应 商 信 息 修 改

供 应 商 信 息 查 询

销 售 信 息 添 加

销 售 信 息 修 改

销 售 信 息 查 询

ID 用 户

用户密码

用 户 名

用户权限 Y-ID 性别

姓名 住址 员工档案表 身份证号码 联系电话

工号

年龄

4

进货 价格 进货数目

P-ID G-ID 产地 计 算 单 位

商品标价 进货表 I-ID 商 品 表

生产日期

保质期

商品名

条形码号 S-ID G-ID 库存 量 备注

销售表 G-ID

商品 数量

操作 人员

邮 政 编码

负责人 供货商 供货商表 联系电话

P-ID 银 行 账号

开户银行

5

<四>数据库设计和实现
数据库设计得合理与否,对数据的完整性、安全性、程序运行的效率和程序 设计的复杂程度等有着十分密切的关心。 数据库设计的内容包括数据库管理系统 的选择、数据实体的确定和数据库的具体实现。

数据库结构设计
超市管理系统的数据库名为”CSGLXT”其中包括 6 个数据表:用户表信息, 员工信息表、供货商信息表、进货表信息表、商品信息表、销售信息表。以下是 这些表的结构。 1)用户信息表:用于保存所有的用户信息,如下图所示。

说明:该表以[U-ID]为主键。 2)员工信息表:用于保存所有的员工信息,如下图所示。

说明:该表以[Y-ID]为主键。

3)供货商信息表:用于保存所有的供货商信息,如下图所示。

6

说明:该表以[P-ID]为主键。

4)进货表信息表:用于保存所有的进货信息,如下图所示。

说明:该表以[I-ID]为主键。

5)商品信息表:用于保存所有的商品信息表,如下图所示。

说明:该表以[G-ID]为主键。

6)销售信息表:用于保存所有的销售信息表,如下图所示。

7

说明:该表以[S-ID]和[G-ID]共同为主键。

系统数据库实现
1. 创建数据库 通过“开始”菜单,选择“MICROSOFT SQL SERVER 2005”, 启动“ SQL SERVER MANAGEMENT STUDIO EXPRESS”,首先连接到服 务器。选择本地服务器“ (LOCAL) SQLEXPRESS ”,身份验证为“WINDOWS 身份验证” 。单机“连接”按钮后,输入数据库名“CSGLXT”,然后单机确定按 钮创建数据库后,单机该数据库左侧的“+”按钮,将该数据库展开,选择“新 建表” ,后创建五个表,本输入数据。每个表的测试数据如下图。

图: 连接到服务器

8

图:

创建数据库界面

图:商品信息测试数据

图:供货商信息测试数据

9

图:

销售测试数据

图: 用户测试数据

图:进货测试数据

图: 员工测试数据

10

项目文件夹设计

图:项目文件及文件夹结构。

1.主窗体及登录窗体设计
为了承载各功能窗体, 超市管理系统设计了一个主窗体。在主窗体上设置菜 单栏,用于启动其他的功能窗体;同时还设置状态栏,用于显示当前系统运行过 程中的相关信息。登录窗体运行后,要进入主窗体界面。

11

图:主窗体界面 主窗体代码:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using 销售信息管理; using 销售信息查询; using 超市管理系统.员工信息管理; using 超市管理系统.用户信息管理; using 超市管理系统.商品信息管理; using 超市管理系统.进货信息管理; using 供货商信息查询; using 供货商更新; using 超市管理系统.销售信息管理;

//using 员工信息管理.员工更新管理;

12

namespace 超市管理系统 { public partial class frmMain : Form { public frmMain() { InitializeComponent(); }

销售信息查询.销售信息查询 bb=null; 销售管理 aa=null; 员工更新管理 cc = null; 员工信息管理.员工信息查询 dd = null; 用户信息查询 ee = null; 用户增改删 ff = null; 商品更新窗体 hh = null; 商品信息查询 gg = null; 进货查询 ii = null; 进货更新窗体 jj = null; Form6 kk = null; frmDepartment ll = null; 收银 { Application.Exit(); } private void frmMain_Load(object sender, EventArgs e) { this.tslUserName.Text = "||操作用户:" + frmLogin.userName; this.tslUserRight.Text = "||用户权限:" + frmLogin.userRight; } private void 万年历ToolStripMenuItem_Click(object sender, EventArgs e) { System.Diagnostics.Process.Start("explorer.exe", "http://site.baidu.com/list/wannianli.htm");} private void 计算器ToolStripMenuItem_Click(object sender, EventArgs e) { System.Diagnostics.Process.Start("calc.exe");//启动计算器程序 } private void 记事本ToolStripMenuItem_Click(object sender, EventArgs e) { mm = null; private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)

13

System.Diagnostics.Process.Start("notepad.exe");//启动记事本程序 } private void 销售管理ToolStripMenuItem_Click(object sender, EventArgs e) { panel1.Controls.Clear(); Button b1 = new Button(); b1.Text = "销售管理"; b1.Left = 10; b1.Top = 10; b1.Click += new EventHandler(b1_Click); panel1.Controls.Add(b1); if (frmLogin.userRight.ToString().Trim() == "用户") { b1.Visible = false; } Button b2 = new Button(); b2.Text = "销售信息查询"; b2.Left = 10; b2.Top = 50; b2.Click += new EventHandler(b2_Click); panel1.Controls.Add(b2); Button b13 = new Button(); b13.Text = "收银管理"; b13.Left = 10; b13.Top =90; b13.Click+=new EventHandler(b13_Click); panel1.Controls.Add(b13); } void b2_Click(object sender, EventArgs e) { //throw new Exception("The method or operation is not implemented."); if (bb == null) { bb = new 销售信息查询.销售信息查询(); bb.TopLevel = false; bb.Size = panel2.Size; panel2.Controls.Add(bb); } if (bb.Visible == false) { bb = new 销售信息查询.销售信息查询(); bb.TopLevel = false;

14

bb.Size = panel2.Size; panel2.Controls.Add(bb); } bb.FormBorderStyle = FormBorderStyle.None; bb.Show(); bb.BringToFront(); } void b1_Click(object sender, EventArgs e) { //throw new Exception("The method or operation is not implemented."); if (aa == null) { aa = new 销售管理(); aa.TopLevel = false; aa.Size = panel2.Size; panel2.Controls.Add(aa); } if (aa.Visible==false) { aa = new 销售管理(); aa.TopLevel = false; aa.Size = panel2.Size; panel2.Controls.Add(aa); } aa.FormBorderStyle = FormBorderStyle.None; aa.Show(); aa.BringToFront(); } void b13_Click(object sender, EventArgs e) { if (mm == null) { mm = new 收银(); mm.TopLevel = false; mm.Size = panel2.Size; panel2.Controls.Add(mm); } if (mm.Visible == false) { mm = new 收银(); mm.TopLevel = false; mm.Size = panel2.Size;

15

panel2.Controls.Add(mm); } mm.FormBorderStyle = FormBorderStyle.None; mm.Show(); mm.BringToFront(); } private void frmMain_FormClosed(object sender, FormClosedEventArgs e) { Application.Exit(); } private void panel2_SizeChanged(object sender, EventArgs e) { for (int i = 0; i < panel2.Controls.Count; i++) { Form f = (Form)panel2.Controls[i]; f.Size = panel2.Size; } } } private void timer1_Tick(object sender, EventArgs e) { toolStripStatusLabel1.Text = System.DateTime.Now.ToLongDateString(); } private void timer2_Tick(object sender, EventArgs e) { toolStripStatusLabel2.Text = System.DateTime.Now.ToLongTimeString(); }



登录窗体:

16

登录窗体代码:
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; namespace 超市管理系统 { public partial class frmLogin : Form { public frmLogin() { InitializeComponent(); } public static string userName;//记录登录用户名字,主窗体中使用 public static string userRight;//记录登录用户的权限,主窗体中使用 SqlConnection conn;//声明连接对象变量 SqlCommand com;//声明命令对象变量 SqlDataAdapter da;//声明适配器对象变量 SqlDataReader dr;//声明读取器对象变量 private void frmLogin_Load(object sender, EventArgs e) { try //捕获异常 { conn = new SqlConnection("server =(local)\\SQLEXPRESS;integrated security=true;database=CSGLXT"); DataSet ds = new DataSet(); da = new SqlDataAdapter("select 用户名 from 用户信息表 ", conn);

17

if (conn.State == ConnectionState.Closed)//若当前连接状态为关闭 { conn.Open(); } da.Fill(ds, "用户信息表"); conn.Close(); cbxUserName.DataSource = ds.Tables["用户信息表"]; cbxUserName.DisplayMember = "用户名"; } catch (Exception ex) { MessageBox.Show(ex.Message.ToString());//显示异常信息 } } private void cbxUserName_SelectedIndexChanged(object sender, EventArgs e) { try { com = new SqlCommand("select 用户名,用户权限 ='" + cbxUserName.Text + "'", conn); if (conn.State == ConnectionState.Closed) { conn.Open(); } dr = com.ExecuteReader(); if (dr.Read()) { lblUserRight.Text = dr["用户权限"].ToString();//将权限值显示到窗体上 userRight = lblUserRight.Text;//将权限值存放到变量中 } dr.Close(); conn.Close(); { MessageBox.Show(ex.Message.ToString()); } } private void btnLogin_Click_1(object sender, EventArgs e) { try { da = new SqlDataAdapter("select DataSet ds = new DataSet(); * from 用户信息表 where 用户名='" + cbxUserName.Text.Trim() + "' and 用户密码='" + txtUserPwd.Text.Trim() + "'", conn); } catch (Exception ex) from 用户信息表 where 用户名

18

if (conn.State == ConnectionState.Closed) { conn.Open(); } da.Fill(ds, "用户信息表"); conn.Close(); if (ds.Tables["用户信息表"].Rows.Count > 0)//数据集中的记录数不为0 { userName = cbxUserName.Text; frmMain frmmain = new frmMain(); this.Hide(); frmmain.Show(); } else { MessageBox.Show("用户名或密码错误!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); txtUserPwd.Text = ""; cbxUserName.Focus(); } } catch (Exception ex) { MessageBox.Show(ex.Message.ToString()); } } private void btnExit_Click(object { Application.Exit(); } }} sender, EventArgs e)

员工信息管理窗体:

19

图:员工更新管理 实现代码:
namespace 超市管理系统.员工信息管理 { public partial class 员工更新管理 : Form { public 员工更新管理() { InitializeComponent(); } public string connStr = "server=.\\SQLEXPRESS;Database=CSGLXT;Integrated security=true"; public SqlConnection conn; public SqlCommand comm; public SqlCommandBuilder commBuilder; public SqlDataAdapter da; public DataSet ds; private void 员工更新管理_Load(object sender, EventArgs e) { toolStripButton5.Enabled = false; toolStripButton4.Enabled = false; conn = new SqlConnection(connStr); comm = new SqlCommand("select da = new SqlDataAdapter(comm); * from 员工档案表", conn);

20

ds = new DataSet(); commBuilder=new SqlCommandBuilder (da); da.Fill(ds,"员工档案表"); dataGridView1.DataSource = ds; dataGridView1.DataMember = "员工档案表"; textBox1.DataBindings.Add("Text", ds, "员工档案表.Y-ID"); textBox2.DataBindings.Add("Text", ds, "员工档案表.姓名"); textBox3.DataBindings.Add("Text", ds, "员工档案表.住址"); textBox4.DataBindings.Add("Text", ds, "员工档案表.联系电话"); textBox5.DataBindings.Add("Text", ds, "员工档案表.身份证号码"); textBox6.DataBindings.Add("Text", ds, "员工档案表.年龄"); textBox7.DataBindings.Add("Text", ds, "员工档案表.工号"); comboBox1.DataBindings.Add("Text", ds, "员工档案表.性别");

} private void button1_Click(object sender, EventArgs e) { //this.BindingContext[ds, "Stu2"].Position = 0; this.BindingContext[ds, "员工档案表"].Position = 0; } private void button2_Click(object sender, EventArgs e) { this.BindingContext[ds, "员工档案表"].Position = this.BindingContext[ds, "员工档 案表"].Count - 1; } private void button3_Click(object sender, EventArgs e) { this.BindingContext[ds, "员工档案表"].Position--; } private void button4_Click(object sender, EventArgs e) { this.BindingContext[ds, "员工档案表"].Position++; } private void toolStripButton1_Click(object sender, EventArgs e) {

21

toolStripButton5.Enabled =true; toolStripButton4.Enabled = true; // this.BindingContext[ds, "员工档案表"].EndCurrentEdit(); //this.BindingContext[ds, "员工档案表"].AddNew(); this.BindingContext[ds, "员工档案表"].EndCurrentEdit(); this.BindingContext[ds, "员工档案表"].AddNew(); //comboBox1.DataSource = ds; //comboBox1.DisplayMember = "员工档案表.性别"; //comboBox1.ValueMember = "员工档案表.性别"; comboBox1.Items.Add("男"); comboBox1.Items.Add("女");

} private void toolStripButton2_Click(object sender, EventArgs e) { // da.Update(ds, "Stu2"); //MessageBox.Show("Updata 4 ok is very good"); toolStripButton5.Enabled = true; toolStripButton4.Enabled = true; //da.Update(ds, "员工档案表"); // MessageBox.Show("修 改 成 功"); } private void toolStripButton3_Click(object sender, EventArgs e) { string Y_ID=ds.Tables["员工档案表"].Rows[this.BindingContext[ds,"员工档案表 "].Position][0].ToString(); DataRow[] drs = ds.Tables["员工档案表"].Select("[Y-ID]='" + Y_ID + "'"); drs[0].Delete(); da.Update(ds,"员工档案表"); MessageBox.Show("删除成功"); } private void toolStripButton6_Click(object sender, EventArgs e) { this.Close(); } private void toolStripButton4_Click(object sender, EventArgs e) { if (!Regex.IsMatch(textBox4.Text.Trim(),"^\\d{11,}$")) {

22

errorProvider1.SetError(textBox4,"电话号码格式错误!"); return; } else if (!Regex.IsMatch(textBox5.Text.Trim(), "^\\d{18,}$")) { errorProvider2.SetError(textBox5, "身份证号码输入有误"); return; } else { errorProvider3.SetError(textBox6,"年龄输入有误"); return; } this.BindingContext[ds, "员工档案表"].EndCurrentEdit(); Update(); MessageBox.Show("本次操作成功"); } private void toolStripButton5_Click(object sender, EventArgs e) { this.BindingContext[ds, "员工档案表"].CancelCurrentEdit(); MessageBox.Show("你有取消这次操作"); } } if(!Regex.IsMatch(textBox6.Text.Trim(),"^[0-9]*$"))

员工信息管理:

23

图:用户查询窗体 代码:
namespace 超市管理系统.用户信息管理 { public partial class 用户信息查询 : Form { public 用户信息查询() { InitializeComponent(); } public string connStr = "server=.\\SQLEXPRESS;Database=CSGLXT;integrated security=true"; public SqlConnection conn; public SqlCommand comm; public SqlCommandBuilder commBuilder; public SqlDataAdapter da; public DataSet ds; private void 用户信息查询_Load(object sender, EventArgs e) { conn = new SqlConnection(connStr); comm = new SqlCommand("select da = new SqlDataAdapter(comm); ds = new DataSet(); commBuilder = new SqlCommandBuilder(da); da.Fill(ds,"用户信息表"); dataGridView1.DataSource = ds; dataGridView1.DataMember = "用户信息表"; * from 用户信息表", conn);

24

} private void button5_Click(object sender, EventArgs e) { comm.CommandText = "select * from textBox5.Text + "%'"; ds.Clear(); da.Fill(ds, "用户信息表"); } private void button1_Click(object sender, EventArgs e) { comm.CommandText = "select * from ds.Clear(); da.Fill(ds, "用户信息表"); } private void button2_Click(object sender, EventArgs e) { this.Close(); } 用户信息表 "; 用户信息表 where [U-ID] like '%" +

图:用户增删改; 代码:
namespace 超市管理系统.用户信息管理 {

25

public partial class 用户增改删 : Form { public 用户增改删() { InitializeComponent(); } public string connStr = "server=.\\SQLEXPRESS;Database=CSGLXT;integrated security=true"; public SqlConnection conn; public SqlCommand comm; public SqlCommandBuilder commBuilder; public SqlDataAdapter da; public DataSet ds;

private void toolStripButton6_Click(object sender, EventArgs e) { //Application.Exit(); this.Close(); } private void 用户查询增改删_Load(object sender, EventArgs e) { toolStripButton4.Enabled = false; toolStripButton5.Enabled = false; conn = new SqlConnection(connStr); comm = new SqlCommand("select da = new SqlDataAdapter(comm); ds = new DataSet(); commBuilder = new SqlCommandBuilder(da); da.Fill(ds, "用户信息表"); dataGridView1.DataSource = ds; dataGridView1.DataMember = "用户信息表"; // dataGridView1.DataSource = ds; // dataGridView1.DataMember = "用户信息表"; textBox1.DataBindings.Add("Text", ds, "用户信息表.U-ID"); textBox2.DataBindings.Add("Text", ds, "用户信息表.用户名"); textBox3.DataBindings.Add("Text", ds, "用户信息表.用户密码"); textBox4.DataBindings.Add("Text", ds, "用户信息表.用户权限"); } * from 用户信息表", conn);

26

private void button1_Click(object sender, EventArgs e) { this.BindingContext[ds, "用户信息表"].Position = 0; } private void button2_Click(object sender, EventArgs e) { this.BindingContext[ds, "用户信息表"].Position--; } private void button3_Click(object sender, EventArgs e) { this.BindingContext[ds, "用户信息表"].Position++; } private void button4_Click(object sender, EventArgs e) { this.BindingContext[ds, "用户信息表"].Position = this.BindingContext[ds, "用户信 息表"].Count; } private void toolStripButton7_Click(object sender, EventArgs e) { comm.CommandText = "select * from ds.Clear(); da.Fill(ds,"用户信息表"); } private void toolStripButton1_Click(object sender, EventArgs e) { toolStripButton4.Enabled = true; toolStripButton5.Enabled = true; this.BindingContext[ds, "用户信息表"].EndCurrentEdit(); this.BindingContext[ds, "用户信息表"].AddNew(); } private void toolStripButton2_Click(object sender, EventArgs e) { toolStripButton4.Enabled = true; toolStripButton5.Enabled = true; } private void toolStripButton3_Click(object sender, EventArgs e) { 用户信息表 ";

27

string U_ID = ds.Tables["用户信息表"].Rows[this.BindingContext[ds, "用户信息表 "].Position][0].ToString(); DataRow[] drs = ds.Tables["用户信息表"].Select("[U-ID]='" + U_ID + "'"); drs[0].Delete(); da.Update(ds, "用户信息表"); MessageBox.Show("删除成功"); } private void toolStripButton4_Click(object sender, EventArgs e) { this.BindingContext[ds, "用户信息表"].EndCurrentEdit(); Update(); MessageBox.Show("本次操作成功"); } private void toolStripButton5_Click(object sender, EventArgs e) { this.BindingContext[ds, "用户信息表"].CancelCurrentEdit(); MessageBox.Show("你有取消这次操作"); } }

图:销售信息管理 代码:
namespace 销售信息管理 { public partial class 销售管理 : Form { public 销售管理()

28

{ InitializeComponent(); } public string connStr = "server=.\\SQLEXPRESS;Database=CSGLXT;Integrated security=true"; public SqlConnection conn; public SqlCommand comm; public SqlDataAdapter da; public SqlCommandBuilder commBuilder; public DataSet ds; private void 销售管理_Load(object sender, EventArgs e) { tsbSave.Enabled = false; tsbCancel.Enabled = false; conn = new SqlConnection(connStr); comm = new SqlCommand("select da = new SqlDataAdapter(comm); ds = new DataSet(); commBuilder = new SqlCommandBuilder(da); da.Fill(ds, "销售表"); dataGridView1.DataSource = ds; dataGridView1.DataMember = "销售表"; txtSid.DataBindings.Add("Text", ds, "销售表.S-ID"); txtshul.DataBindings.Add("Text", ds, "销售表.G-ID"); txtGid.DataBindings.Add("Text", ds, "销售表.商品数量"); txtreny.DataBindings.Add("Text", ds, "销售表.操作人员"); } private void tsbAdd_Click(object sender, EventArgs e) { this.BindingContext[ds, "销售表"].EndCurrentEdit(); this.BindingContext[ds, "销售表"].AddNew(); } private void tsbEdit_Click(object sender, EventArgs e) { tsbSave.Enabled = true; tsbCancel.Enabled = true; } private void tsbDel_Click(object sender, EventArgs e) { * from 销售表", conn);

29

string S_ID = ds.Tables["销售表"].Rows[this.BindingContext[ds, "销售表 "].Position][0].ToString(); DataRow[] drs = ds.Tables["销售表"].Select("[S-ID]='" +S_ID + "'"); drs[0].Delete(); da.Update(ds, "销售表"); MessageBox.Show("删除成功"); } private void tsbSave_Click(object sender, EventArgs e) { this.BindingContext[ds, "销售表"].EndCurrentEdit(); Update(); MessageBox.Show("本次操作成功"); } private void tsbCancel_Click(object sender, EventArgs e) { this.BindingContext[ds, "销售表"].CancelCurrentEdit(); MessageBox.Show("你有取消这次操作"); } private void tsbExit_Click(object sender, EventArgs e) { // Application.Exit(); this.Close(); }

图:商品更新窗体 代码:
30

namespace 超市管理系统.商品信息管理 { public partial class 商品更新窗体 : Form { public 商品更新窗体() { InitializeComponent(); } public string connStr = "server=.\\SQLEXPRESS;Database=CSGLXT;Integrated Security=True"; public SqlConnection conn; public SqlCommand comm; public SqlDataAdapter da; public SqlCommandBuilder commBuilder; public DataSet ds; private void 商品更新窗体_Load(object sender, EventArgs e) { butsave.Enabled = false; butcancle.Enabled = false; conn = new SqlConnection(connStr); comm = new SqlCommand("Select * da = new SqlDataAdapter(comm); da.SelectCommand = comm; commBuilder = new SqlCommandBuilder(da); ds = new DataSet(); da.Fill(ds, "商品信息表"); // dataGridView1.DataSource = ds.Tables["Stu2"]; dataGridView1.DataSource = ds; dataGridView1.DataMember = "商品信息表"; textBox1.DataBindings.Add("Text", ds, "商品信息表.G-ID"); textBox2.DataBindings.Add("Text", ds, "商品信息表.商品名"); textBox3.DataBindings.Add("Text", ds, "商品信息表.商品标价"); textBox4.DataBindings.Add("Text", ds, "商品信息表.产地"); textBox5.DataBindings.Add("Text", ds, "商品信息表.条形码号"); textBox6.DataBindings.Add("Text", ds, "商品信息表.备注"); textBox7.DataBindings.Add("Text", ds, "商品信息表.库存量"); } private void butadd_Click(object sender, EventArgs e) { this.BindingContext[ds, "商品信息表"].EndCurrentEdit(); this.BindingContext[ds, "商品信息表"].AddNew(); } from 商品信息表", conn);

31

private void butdelete_Click(object sender, EventArgs e) { string G_ID = ds.Tables["商品信息表"].Rows[this.BindingContext[ds, "商品信息表 "].Position][0].ToString(); DataRow[] drs = ds.Tables["商品信息表"].Select("[G-ID]='" + G_ID + "'"); drs[0].Delete(); da.Update(ds, "商品信息表"); MessageBox.Show("删除成功"); } private void butsave_Click(object sender, EventArgs e) { this.BindingContext[ds, "商品信息表"].EndCurrentEdit(); Update(); MessageBox.Show("本次操作成功"); } private void butcancle_Click(object sender, EventArgs e) { this.BindingContext[ds, "商品信息表"].CancelCurrentEdit(); MessageBox.Show("你有取消这次操作"); } private void button1_Click(object sender, EventArgs e) { this.BindingContext[ds, "商品信息表"].Position = 0; } private void button2_Click(object sender, EventArgs e) { this.BindingContext[ds, "商品信息表"].Position--; } private void button3_Click(object sender, EventArgs e) { this.BindingContext[ds, "商品信息表"].Position++; } private void button4_Click(object sender, EventArgs e) {

32

this.BindingContext[ds, "商品信息表"].Position = this.BindingContext[ds, "商品信 息表"].Count; } private void toolStripButton1_Click(object sender, EventArgs e) { this.Close(); }

图:进货更新窗体 代码:
namespace 超市管理系统.进货信息管理 { public partial class 进货更新窗体 : Form { public 进货更新窗体() { InitializeComponent(); } public string connStr = "server=.\\SQLEXPRESS;Database=CSGLXT;Integrated security=true"; public SqlConnection conn; public SqlCommand comm; public SqlCommandBuilder commBuilder; public SqlDataAdapter da; public DataSet ds;

33

private void 进货更新窗体_Load(object sender, EventArgs e) { toolStripButton4.Enabled = false; toolStripButton5.Enabled = false; conn = new SqlConnection(connStr); comm = new SqlCommand("select * da = new SqlDataAdapter(comm); ds = new DataSet(); commBuilder = new SqlCommandBuilder(da); da.Fill(ds,"进货表"); dataGridView1.DataSource = ds; dataGridView1.DataMember = "进货表"; textBox1.DataBindings.Add("Text", ds, "进货表.I-ID"); textBox2.DataBindings.Add("Text", ds, "进货表.G-ID"); textBox3.DataBindings.Add("Text", ds, "进货表.进货数量"); textBox4.DataBindings.Add("Text", ds, "进货表.进货价格"); } private void button1_Click(object sender, EventArgs e) { this.BindingContext[ds, "进货表"].Position = 0; } private void button2_Click(object sender, EventArgs e) { this.BindingContext[ds, "进货表"].Position--; } private void button4_Click(object sender, EventArgs e) { this.BindingContext[ds, "进货表"].Position++; } private void button3_Click(object sender, EventArgs e) { this.BindingContext[ds, "进货表"].Position = this.BindingContext[ds, "进货表 "].Count; } private void toolStripButton1_Click(object sender, EventArgs e) { toolStripButton4.Enabled = true; toolStripButton5.Enabled =true; from 进货表", conn);

34

this.BindingContext[ds, "进货表"].EndCurrentEdit(); this.BindingContext[ds, "进货表"].AddNew(); } private void toolStripButton2_Click(object sender, EventArgs e) { toolStripButton4.Enabled = true; toolStripButton5.Enabled = true; } private void toolStripButton3_Click(object sender, EventArgs e) { toolStripButton4.Enabled = true; toolStripButton5.Enabled = true; string I_ID = ds.Tables["进货表"].Rows[this.BindingContext[ds, "进货表 "].Position][0].ToString(); DataRow[] drs = ds.Tables["进货表"].Select("[I-ID]='" + I_ID + "'"); drs[0].Delete(); da.Update(ds,"进货表"); MessageBox.Show("删除成功"); } private void toolStripButton4_Click(object sender, EventArgs e) { if (!Regex.IsMatch(textBox4.Text.Trim(), "^[0-9]*$")) { errorProvider1.SetError(textBox1, "输入格式有误"); return; } this.BindingContext[ds, "进货表"].EndCurrentEdit(); Update(); MessageBox.Show("本次操作成功"); } private void toolStripButton5_Click(object sender, EventArgs e) { this.BindingContext[ds, "进货表"].CancelCurrentEdit(); MessageBox.Show("你有取消这次操作"); }

35

private void toolStripButton6_Click(object sender, EventArgs e) { Application.Exit(); } } }

图:供货商窗体 代码:
namespace { public partial class frmDepartment : Form { public frmDepartment() { InitializeComponent(); } public string connStr = "server=.\\SQLEXPRESS;Database=CSGLXT;Integrated security=true"; public SqlConnection conn; public SqlCommand comm; public SqlCommandBuilder commBuilder; public SqlDataAdapter da; public DataSet ds; private void frmDepartment_Load(object sender, EventArgs e) { tsbSave.Enabled = false; tsbCancel.Enabled = false; 供货商更新

36

conn = new SqlConnection(connStr); comm = new SqlCommand("select da = new SqlDataAdapter(comm); ds = new DataSet(); commBuilder = new SqlCommandBuilder(da); da.Fill(ds, "供应商信息表"); dataGridView1.DataSource = ds; dataGridView1.DataMember = "供应商信息表"; textBox1.DataBindings.Add("Text", ds, "供应商信息表.P-ID"); textBox2.DataBindings.Add("Text", ds, "供应商信息表.联系电话"); textBox3.DataBindings.Add("Text", ds, "供应商信息表.银行帐号"); textBox4.DataBindings.Add("Text", ds, "供应商信息表.邮政编码"); comboBox1.DataBindings.Add("Text", ds, "供应商信息表.供货商"); comboBox2.DataBindings.Add("Text", ds, "供应商信息表.开户银行"); comboBox3.DataBindings.Add("Text", ds, "供应商信息表.负责人"); } private void tsbAdd_Click(object sender, EventArgs e) { tsbSave.Enabled = true; tsbCancel.Enabled = true; this.BindingContext[ds, "供应商信息表"].EndCurrentEdit(); this.BindingContext[ds, "供应商信息表"].AddNew(); } private void tsbDel_Click(object sender, EventArgs e) { string P_ID = ds.Tables["供应商信息表"].Rows[this.BindingContext[ds, "供应商信息 表"].Position][0].ToString(); DataRow[] drs = ds.Tables["供应商信息表"].Select("[P-ID]='" + P_ID + "'"); drs[0].Delete(); da.Update(ds, "供应商信息表"); MessageBox.Show("供应商信息表"); } private void tsbSave_Click(object sender, EventArgs e) { this.BindingContext[ds, "供应商信息表"].EndCurrentEdit(); Update(); MessageBox.Show("本次操作成功"); } private void tsbCancel_Click(object sender, EventArgs e) { * from 供应商信息表", conn);

37

this.BindingContext[ds, "供应商信息表"].CancelCurrentEdit(); MessageBox.Show("你有取消这次操作"); } private void tsbExit_Click(object sender, EventArgs e) {; this.Close(); } private void tsbEdit_Click(object sender, EventArgs e) { tsbSave.Enabled = true; tsbCancel.Enabled =true; } } }

项目设计感触:
1.团队合作的重要深深铭记。 2.需求分析真的很重要,需要花很多的时间思考,要不断的完善,要对你做 的这是项目是哪个领域,要对这个领域比较了解,才能做出完善的需求分 析。 3.每个人做一个模块,专一做。好好的思考,尽自己的能力,及努力做好。 同时各成员要经常沟通,才能保证项目的正确性。 4.应该好好利用网络资源,好好参考,借自己有用的资源。 5.也应该多与非本组的同学多多交流,看看他吗们的系统,学习学习,好处多 多。 6.多思考自己的模块要实现哪些功能,与其它模块的联系, 7.也可以为了实现哪个功能多想想办法,如用 PS 做几个漂亮的按钮。 8.多与老师交流你的系统,有不明白的,不知道的,多问问老师,学问学问, 就是学习和发问。 9.做项目是一种很好的学习方式,能发现很多问题,能学到很多。 10.学习是快乐的,当你有所收获,有所突破。

38


赞助商链接
更多相关文档:

超市管理信息系统项目背景

超市管理信息系统项目背景内容:项目背景及意义 项目背景: 随着现代科学技术的高速发展, 计算机技术已经渗透到各个领域, 成为各行业必不可少的工具。 网络与信息化的...

超市管理系统项目 需求说明书

项目名称: 超市管理系统 组长 : 信计 081-高坤 小组成员人 小组成员人:信计 081-08-刘瑜 信计 081-10-曹仁中 信计 081-15-赵天骄 超市管理系统项目需求...

《超市管理系统-软件项目计划说明书》_图文

15 2 3 4 5 2 1.1 编写目的 此项目开发计划书的编写主要是为了给开发《超市管理系统》做主要的规划和整合,在 开发过程中起到引导作用, 以及给使用者提供...

XX大型连锁超市管理系统项目解决方案

XX 大型连锁超市管理系统 项目解决方案 1. 引言 超市管理系统,它包括订购管理,仓库管理,销售管理等.仓库管理是其中重 要的一个环节,不容忽视的一个环节, 它在...

超市管理系统项目开发计划书

超市管理系统项目开发计划书 - 超市管理系统 项目开发计划书 1. 引言 1.1 目旳` (1)大大提高超市旳`运作效率; (2)通过全面旳`信息采集和处理,辅助提高超市...

《超市管理系统-软件项目计划说明书》_图文

超市管理系统-软件项目计划说明书》 - 目录 1.1 编写目的......

XX大型连锁超市管理系统项目解决方案

XX大型连锁超市管理系统项目解决方案 - XX 大型连锁超市管理系统 项目解决方案 1. 引言 超市管理系统,它包括订购管理,仓库管理,销售管理等.仓库管理是其中重要的一...

超市管理系统

超市管理系统_财务管理_经管营销_专业资料。一、 课程设计的原始资料及依据项目开发与管理课程设计的前驱条件是要求学生们必须具备“软件工程”和“项目开发管理”等...

XX大型连锁超市管理系统项目解决方案_图文

XX大型连锁超市管理系统项目解决方案 - XX 大型连锁超市管理系统 项目解决方案 1. 引言 超市管理系统,它包括订购管理,仓库管理,销售管理等.仓库管理是其中重要旳の...

【精选】超市管理系统项目开发计划书

【精选】超市管理系统项目开发计划书 - 超市管理系统 项目开发计划书 1 1. 引言 1.1 目的 (1)大大提高超市的运作效率; (2)通过全面的信息采集和处理,辅助...

更多相关标签:
网站地图

文档资料共享网 nexoncn.com copyright ©right 2010-2020。
文档资料共享网内容来自网络,如有侵犯请联系客服。email:zhit325@126.com