企业销售管理系统课程设计的实验报告_第1页
企业销售管理系统课程设计的实验报告_第2页
企业销售管理系统课程设计的实验报告_第3页
企业销售管理系统课程设计的实验报告_第4页
企业销售管理系统课程设计的实验报告_第5页
已阅读5页,还剩10页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

企业销售管理系统课程名称:分布式数据库综合实验一、项目介绍:销售管理系统可以说是企业最直接的效益实现着,在企业的管理中具有重要的地位。它可以作为销售部门掌握市场供求关系的依据,企业通过销售管理系统可以方便的管理和掌握产品的销售情况,以及为企业适时地调整销售方案提供参考行依据。二、小组内成员的分工:三、需求分析:1、功能分析、进货时入库登记,以便日后查看库存信息,本系统考虑从数据库中添加;、售出商品,需要开出销售单,售出后需要在库存中做出相应的修改,并且在销售表里添加售出信息,以便日后查询销售情况;、现实企业销售中不可避免会有顾客会退货,故需建立商品的退货管理,对退货信息,也需要填写相应的退货单据,并将退货商品信息存入退货信息,日后同样可以查询退货信息;、为方便管理者,需提供基本的信息查询,库存信息查询、销售信息查询、退货信息查询等;、在各个查询功能中提供按照不同的查询方式,如按编号、按日期、按商品名称等实现分类查询功能;、为了体现人性化管理,系统需要提供基本的用户管理,用户修改密码、添加一个管理用户等。2、性能分析本系统适合一般的企业销售管理,能为企业的销售提供相对有效和稳定的服务,但是出于团队的知识和能力的限制,以及分析可能不够尽善尽美,加之系统有待于进一步进行测试完善,本系统可能存在些许不足之处。3、数据库分析在这个企业销售系统中我们设计了系统需要的表:商品表、用户表、销售表、退货表商品表,用来存储库存商品的信息,在进入商品时可以往商品表里添加或者修改,售出商品时可以在相应的商品信息处修改;并且可以为库存信息查询显示信息;用户表,存储管理员的账号和密码,通过对此表的基本操作可以实现用户信息管理;销售表,存储售出商品的信息,当然通过对此表操作可以实现商品销售信息的查询,销售单的添加;退货表,存储退货商品的基本信息,通过对此表的操作可以实现退货商品信息的添加和查询、删除等。4、运行环境操作系统要求Windowsxp及以上;MicrosoftVisualStudio2005以上版本,数据库需要运行在SQLServer2000中。四、详细设计1、功能结构图1[销售开]L退货单1、11单J库存信息退货信\ 丿销售信1 J修改密码[重新登录I Jk J2、数据库设计数据库中各表的具体字段如下:1)商品表

列名数据类型长度允许空商口口编号char40否商品名称char4o是入库单价float8是销售单价float8是数量float8是2)用户表列名数据类型长度允许空账号char10密码char103)销售表列名数据类型长度允许空销售编号char30是商品名称char30是销售日期datetime8是销售单价float8是销售数量float8是应付金额float8是4)退货表列名数据类型长度允许空退货编号char30是销售编号char30是商品名称char30是销售单价float8是退货单价float8是退货时间datetime8是销售数量float8是退货数量float8是应退金额float8是3、编码:部分代码及运行结果a、登录当输入账号和密码时,通过对数据库用户表进行匹配,如果是用户表中的成员,则允许继续访问。代码如下:privatevoidbtnOk_Click_1(objectsender,EventArgse){if(txtName.Text.Trim()==""||txtPassword.Text.Trim()=="")MessageBox.Show(""请输入用户名和密码!!","提示”);else{myCon.Open();SqlCommandcmd=newSqlCommand("",myCon);stringsql="select*from用户表where账号='"+txtName.Text.Trim()+"'and密码='"+txtPassword.Text.Trim()+"'";cmd.CommandText=sql;if(cmd.ExecuteScalar()!=null){this.Visible=false; //隐藏登陆窗口frmMainmain=newfrmMain(txtName.Text); //创建并打开主界面main.Tag=this.FindForm();main.ShowDialog();}elseMessageBox.Show(”用户名或密码错误”,”警告”);myCon.Close();}图<用户登录界面>b、主窗体通过主窗体可以进行对各个功能的操作图<主窗口>C、添加用户通过向用户表中添加信息来添加用户,并通过下列代码来保证添加的正确性:privatevoidbtnOk_Click(objectsender,EventArgse){if(txtName.Text.Trim()==""||txtCode.Text.Trim()==""||txtCode1.Text.Trim()==""){MessageBox.Show(""请输入完整信息!",”警告");}else{if(txtCode.Text.Trim()!=txtCode1.Text.Trim()){MessageBox.Show(”两次密码输入不一致!","警告”);}else{myCon.Open();SqlCommandcmd=newSqlCommand("",myCon);stringsql="select*from用户表where账号='"+txtName.Text.Trim()+"'";cmd.CommandText=sql;if(cmd.ExecuteScalar()==null){sql="insertinto用户表values('"+txtName.Text.Trim()+"','"+txtCode1.Text.Trim()+"')";cmd.CommandText=sql;cmd.ExecuteNonQuery();MessageBox.Show(”添加用户成功!","提示”);myCon.Close();this.Close();}else{MessageBox.Show(”用户名"+txtName.Text.Trim()+"已经存在!","提示");txtName.Text="";txtCode1.Text="";txtCode.Text="";txtName.Focus();myCon.Close();}}图<添加用户>d、销售管理(销售单和退货)添加销售单主要代码:privatevoidtoolAdd_Click(objectsender,EventArgse) //添加销售订单{if(txtSellID.Text.Trim()==""||txtGoodsName.Text.Trim()==""||DaSellGoodsTime.Text.Trim()==""||txtSellGoodsNum.Text.Trim()=="")MessageBox.Show('请输入完整信息","提示”);else{myCon.Open();stringsql="select*from销售表 where销售编号='"+txtSellID.Text.Trim()+"'";stringsql2="select*from商品表where商品名称='"+txtGoodsName.Text.Trim()+"'";SqlCommandcmd2=newSqlCommand(sql2,myCon);SqlCommandcmd=newSqlCommand(sql,myCon);if(cmd2.ExecuteScalar()==null)MessageBox.Show(”与库存信息不一致”,”提示”);elseif(cmd.ExecuteScalar()!=null)MessageBox.Show(”销售编号重复”,”提示”);else{sql="insertinto销售表values('"+txtSellID.Text.Trim()+"','"+txtGoodsName.Text.Trim()+ "','" +DaSellGoodsTime.Text.Trim()+ "','" +txtSellGoodsNum.Text.Trim()+"','"+txtdeSellPrice.Text.Trim()+"','"+txtFlag.Text.Trim()+"')";cmd.CommandText=sql;cmd.ExecuteNonQuery();stringsql1="update商品表set数量=数量-'" +txtSellGoodsNum.Text.Trim()+"'where商品名称="'+txtGoodsName.Text.Trim()+"'";SqlCommandcmd1=newSqlCommand(sql1,myCon);cmd1.CommandText=sql1;cmd1.ExecuteNonQuery();MessageBox.Show("添加成功","提示");}myCon.Close();Clear();ShowInfo();实现添加退货信息的主要代码:privatevoidtoolAdd_Click(objectsender,EventArgse){if(txtThGoodsID.Text.Trim()==""||txtSellID.Text.Trim()==""||txtThGoodsName.Text.Trim()==""||txtThGoodsNum.Text.Trim()==""||txtNum.Text.Trim()=="")MessageBox.ShowC请填写完整信息","提示”);//elseif(strcmp(txtThGoodsNum.Text.Trim(),txtThGoodsPrice.Text.Trim())<0)//MessageBox.Show(”错误:输入退货数量超过购买数量","提示”);else{myCon.Open();stringsql="select*from退货表where退货编号='" +txtThGoodsID.Text.Trim()+"'";stringsqll="select*from销售表where销售编号="'+txtSellID.Text.Trim()+"'and商品名称="'+txtThGoodsName.Text.Trim()+""';stringsql2="select*from商品表where商品名称='" +txtThGoodsName.Text.Trim()+"'";SqlCommandcmd=newSqlCommand(sql,myCon);SqlCommandcmdl=newSqlCommand(sqll,myCon);SqlCommandcmd2=newSqlCommand(sql2,myCon);if(cmd.ExecuteScalar()!=null)MessageBox.Show("退货编号重复","提示");else{sql="insertinto退货表values('"+txtThGoodsID.Text.Trim()+"','"+txtSellID.Text.Trim()+"','"+txtThGoodsName.Text.Trim()+"','"+txtPrice.Text.Trim()+"','"+txtThGoodsPrice.Text.Trim()+"','"+RebackTime.Text.Trim()+"','"+txtNum.Text.Trim()+"','"+txtThGoodsNum.Text.Trim()+"','"+txtThGoodsResult.Text.Trim()+"')";sqll="update销售表set销售数量=销售数量」”+txtThGoodsNum.Text.Trim()+”'where销售编号="'+txtSeHID.Text.Trim()+”川;sql2="update商品表set数量=数量+'"+txtThGoodsNum.Text.Trim()+"'where商品名称='"+txtThGoodsName.Text.Trim()+"'";cmd2.CommandText=sql2;cmd2.ExecuteNonQuery();cmdl.CommandText=sqll;cmdl.ExecuteNonQuery();cmd.CommandText=sql;cmd.ExecuteNonQuery();MessageBox.Show("添加成功","提示");}myCon.Close();ShowInfo();}图<销售单>图<退货单>e、查询统计(库存信息查询、销售信息查询、退货信息查询)各个信息查询模块都设置了分类查询功能下面三个查询结果是分别按不同条目查询出的库存信息、销售信息和退货信息,此处只给出usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Data.SqlClient;usingSystem.Windows.Forms;namespaceManagement{publicpartialclassfrmSellInfo:Form{publicstaticstringstr="";privateSqlConnectionmyCon=newSqlConnection(Management.dbConnection.connection);publicfrmSellInfo(){InitializeComponent();}DataSetds; //在下框中显示privatevoidShowInfo(){myCon.Open();stringsql="select销售编号as销售编号,商品名称as商品名称,销售日期as销售日期,销售数量as销售数量,销售单价as销售单价,应付金额as应付金额from销售表";SqlDataAdapteradp=newSqlDataAdapter(sql,myCon);ds=newDataSet();ds.Clear();adp.Fill(ds,"myCon");this.dataGridView1.DataSource=ds.Tables["myCon"].DefaultView;〃设置dgvUser控件的SelectionMode属性为FullRowSelect使控件能够整行选择this.dataGridView1.SelectionMode =DataGridViewSelectionMode.FullRowSelect;〃设置dgvUser控件的DefaultCellStyle.SelectionBackColor属性,使其选择行为黄绿色this.dataGridView1.DefaultCellStyle.SelectionBackColor=Color.Blue;//设置dgvUser控件的ReadOnly属性,使其为只读this.dataGridView1.ReadOnly=true;myCon.Close();privatevoidShowInfo2(){myCon.Open();stringsql="select销售编号as销售编号,商品名称as商品名称,销售日期as销售日期,销售数量as销售数量,销售单价as销售单价,应付金额as应付金额from销售表where"+choices.Text.Trim()+"='"+keywords.Text.Trim()+"'";SqlDataAdapteradp=newSqlDataAdapter(sql,myCon);ds=newDataSet();ds.Clear();adp.Fill(ds,"myCon");this.dataGridView1.DataSource=ds.Tables["myCon"].DefaultView;〃设置dgvUser控件的SelectionMode属性为FullRowSelect使控件能够整行选择this.dataGridView1.SelectionMode =DataGridViewSelectionMode.FullRowSelect;〃设置dgvUser控件的DefaultCellStyle.SelectionBackColor属性,使其选择行为黄绿色this.dataGridView1.DefaultCellStyle.SelectionBackColor=Color.Blue;//设置dgvUser控件的ReadOnly属性,使其为只读this.dataGridView1.ReadOnly=true;myCon.Close();}privatevoidfrmSelectSell_Load(objectsender,EventArgse){ShowInfo();}privatevoidbutton2_Click(objectsender,EventArgse){if(keywords.Text.Trim()=="")ShowInfo();elseShowInfo2();}private

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论