ImageVerifierCode 换一换
格式:DOCX , 页数:40 ,大小:535.43KB ,
资源ID:12883330      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12883330.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(专业实践net课程实践报告.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

专业实践net课程实践报告.docx

1、专业实践net课程实践报告课程设计报告( / 学年 第 学期)课程名称.NET专业实践设计名称进销存管理信息系统设计时间年月日指导单位指导教师学生姓名班级学号学院(系)专 业目 录第一章 系统需求分析 31.1需求概述 31.2数据流图 3第二章 进销存系统结构 52.1系统功能结构图 52.2系统登录界面 52.3系统主界面 72.4总E-R图设计 8第三章 系统详细设计 83.1 基本资料维护功能 83.1.1操作员资料维护 83.1.2商品资料维护 93.1.3供应商资料维护 103.1.4品牌资料维护 113.2 采购管理功能 123.2.1采购入库 123.2.2采购退货 133.3

2、 销售管理功能 143.3.1销售出库 143.3.2销售退货 153.4 库存统计功能 163.4.1库存查询 163.4.2销售统计 173.4.3采购统计 19第四章 数据库设计 214.1数据库逻辑设计 214.2表设计 22第五章 系统调试 24第六章 结束语 25第一章 系统需求分析1.1需求概述 这里对商品的管理包括进、销、存3个方面。可以建立一个超市进销存管理系统,对超市的管理者、营业员、库存管理员等减轻其工作量,便于经营管理。功能需求:采购管理功能模块:采购计划、采购订单、采购入库、采购退货、应付款、采购付款。销售管理功能模块:、报价单、销售订单、销售出库、销售退货、应收款、

3、销售收款。库存管理功能模块:其它入库、其它出库、库存警报、库存报表、基本资料设计。商品管理需要处理大量的库存信息,还要时刻更新产品的销售信息,不断添加商品信息。面对不同种类的信息,需要合理的数据库结构来保存数据信息,需要有效的程序结构支持各种数据操作的执行。它最主要的特点是能够实时的和准确的控制店内的销售情况。1.2数据流图图1.1 第0层数据流图图1.2 进销存管理系统数据流图(第一层)说明:每一个处理也均可由外部实体直接输入数据图1.3 销售管理数据流程图(第二层)图1.4 仓库管理数据流程图(第二层)图1.5 采购管理数据流程图(第二层)第二章 进销存系统结构2.1系统功能结构图2.2系

4、统登录界面 用户登录系统时,系统会对其身份进行验证,如果系统中不存在该用户,会提示用户名或密码错误!不同的登录类型对系统的访问权限不一样。由于软件界面在整个软件生命周期的重要作用,根据社会工程学、国家标准等相关规范,确定软件界面时要遵循以下原则: 布局合理,界面简洁。 配色合理,图像和显示效果要统一。 整个软件界面风格应该保持一致。 减少用户的操作负担,界面尽可能少的使用鼠标。 所有界面文字清晰明了,不产生歧义。用户身份验证代码: public void loginValidate() UserInfo u = null; SqlConnection con = new SqlConnecti

5、on(DBHelper.conStr); try con.Open(); int userRole = cbo_loginType.SelectedIndex; string sql = string.Format(select * from userInfo where UserloginId=0 and UserPass=1 and UserRole=2, txt_UserloginId.Text, txt_UserPass.Text, userRole); SqlCommand com = new SqlCommand(sql, con); SqlDataReader dr = com.

6、ExecuteReader(); if (dr.Read() u = new UserInfo(); u.UserId = Convert.ToInt32(drUserId); u.UserloginId = drUserloginId.ToString(); u.UserName = drUserName.ToString(); u.UserPass = drUserPass.ToString(); u.UserRole = drUserRole.ToString(); dr.Close(); if (u != null) LoginInfo.LoginUserInfo = u;/保存登录用

7、户信息 this.Visible = false; Frm_Main fm = new Frm_Main(); fm.Show(); else MessageBox.Show(用户名或密码错误!, 登录提示); catch (Exception) MessageBox.Show(请注意数据库连接字符串!, 登录提示); finally con.Close(); 上面代码的cbo_loginType.Text.Trim()中的Trim()方法用于去除字符串两端的空格,代码string.IsNullOrEmpty(cbo_loginType.Text.Trim()用于验证非空。2.3系统主界面当用

8、户进入主界面后,可以选择需要操作的菜单,单击菜单项后会跳转到相应的窗体。在进销存系统中主窗体为MDI窗体,在其下所打开的窗体都会在关闭主窗体之后关闭。要实现让主窗体为MDI窗体,首先要设置主窗体的IsMdiContainer属性为True,再指定子窗体的父窗体是主界面窗体。具体实现代码如下: private void tsmi_StoreQuery_Click(object sender, EventArgs e) fsq.MdiParent = this; if (fsq.Visible) fsq.Focus(); return; else fsq = new Frm_StoreQuery(

9、); fsq.MdiParent = this; fsq.Show(); 2.4总E-R图设计在分析清除系统功能需求之后,总要的就是把系统功能划分成为相对独立的模块或者子系统,便于集中讨论和确定需求,并且需要确定出操作用户,可以直观的表现出该系统的业务流程。第三章 基础功能设计开发3.1 基本资料维护功能3.1.1操作员资料维护提供对操作员添加、删除、修改、查询功能,该界面只有管理员有权进入。为方便管理员查找用户的详细信息,程序提供了根据用户名查询用户详细信息的功能。若要修改用户信息,先选中待修改的项,然后单击“修改”按钮,系统会自动将选中项显示到基本信息文本框中,这时管理员可以修改用户资料,

10、之后点击“保存”按钮,在确定操作后,系统会检测操作员的数据输入。点击“添加”, 系统会自动启动基本信息文本框,输入之后点击保存即完成。选中要删除的项,点击“删除”,然后确定,即可成功删除用户信息。以下代码实现了查询功能:private void tsb_Btn_Lookup_Click(object sender, EventArgs e) if (tsb_Txt_Lookup.Text.Trim() = | String.IsNullOrEmpty(tsb_Txt_Lookup.Text) MessageBox.Show(请输入查询条件, 提示); else lp = GetProductI

11、nfoByProt_Name(tsb_Txt_Lookup.Text); dgv_PrdouctInfo.DataSource = lp; 3.1.2商品资料维护当单击“商品资料维护”选项后,在商品资料维护窗体加载时应该将所有的商信息都显示出来。使用列表控件展现概要信息,附加文本框和下拉列表框显示详细信息,当用户单击列表时需要显示详细信息。可对商品信息进行添加、修改、删除、和查询等操作。以下是实现删除功能的代码:private void tsb_Btn_Delete_Click(object sender, EventArgs e) if (dgv_PrdouctInfo.SelectedRo

12、ws.Count 0) int pId = Convert.ToInt32(dgv_PrdouctInfo.SelectedRows0.Cells0.Value); string sql = delete from productInfo where ProtId= + pId; DialogResult dr = MessageBox.Show(你确定要删除此商品信息吗? 删除之后所有关于该商品的记录将会全部清空, 提示, MessageBoxButtons.OKCancel); string sqlStoreCount = select StoreSum from storeRoom wh

13、ere protid= + pId; int storeCount = 0; SqlConnection con = new SqlConnection(conStr); con.Open(); SqlCommand cmd = new SqlCommand(sqlStoreCount, con); storeCount = Convert.ToInt32(cmd.ExecuteScalar(); if (storeCount 0) MessageBox.Show(该商品还有库存,请先将货物清理出库再删除商品, 提示); return; else string sqlDelStoreCount

14、 = delete from storeRoom where protid= + pId; string sqlDelDetial = delete from orderdetails where protid= + pId; string sqlDelReturn = delete from returnproduct where protid= + pId; ExecuteQuery(sqlDelStoreCount); ExecuteQuery(sqlDelDetial); ExecuteQuery(sqlDelReturn); con.Close(); if (dr = DialogR

15、esult.OK) int result = ExecuteQuery(sql); if (result 0) MessageBox.Show(删除成功!, 提示); lp = GetProductInfoByProt_Name(); dgv_PrdouctInfo.DataSource = lp; 3.1.3供应商资料维护在供应商资料维护窗体加载时,保存按钮和文本框处于禁用状态,与此同时系统会将所有的供应商信息查询出来并显示。可对供应商资料进行添加、修改、删除、和查询等操作。当对供应商资料进行添加、修改和删除操作时,保存按钮和文本框处于启用状态。单击删除按钮系统会弹出“你确定要删除此条信息吗

16、?”的对话框。单击“确定”按钮系统会删除成功或失败。一般涉及数据删除的操作必须给予客户提示,以免操作在客户大意之下发生。以上代码实现了添加功能:private void tsb_Btn_Add_Click(object sender, EventArgs e) type = 0; tsb_Btn_Amend.Enabled = false; tsb_Txt_Lookup.Enabled = false; tsb_Btn_Delete.Enabled = false; tsb_Btn_Lookup.Enabled = false; tsb_Btn_Save.Enabled = true; Dis

17、play(); txt_Prot_Name.Focus(); 3.1.4品牌资料维护为方便查找特定品牌的详细信息,程序提供了根据品牌名称查询品牌详细信息的方法。品牌编号是自动产生,无法修改。可对品牌信息进行添加、修改、删除、和查询等操作。以上代码实现了修改功能。private void tsb_Btn_Amend_Click(object sender, EventArgs e) type = 1; tsb_Btn_Add.Enabled = false; tsb_Btn_Save.Enabled = true; tsb_Btn_Delete.Enabled = false; tsb_Txt_

18、Lookup.Enabled = false; tsb_Btn_Lookup.Enabled = false; Display(); txt_Store_LastNum.Enabled = false; txt_Prot_Name.Focus(); lb_Prot_id.Text = dgv_PrdouctInfo.CurrentRow.Cells0.Value.ToString(); txt_Prot_Name.Text = dgv_PrdouctInfo.CurrentRow.Cells1.Value.ToString(); txt_Prot_Retailprice.Text = dgv_

19、PrdouctInfo.CurrentRow.Cells2.Value.ToString(); txt_Prot_Tradeprice.Text = dgv_PrdouctInfo.CurrentRow.Cells3.Value.ToString(); txt_Prot_Bigunit.Text = dgv_PrdouctInfo.CurrentRow.Cells4.Value.ToString(); txt_Prot_Smallunit.Text = dgv_PrdouctInfo.CurrentRow.Cells5.Value.ToString(); txt_Prot_Rate.Text

20、= dgv_PrdouctInfo.CurrentRow.Cells6.Value.ToString(); cbb_Cards_Name.Text = dgv_PrdouctInfo.CurrentRow.Cells7.Value.ToString(); cbb_Priv_Name.Text = dgv_PrdouctInfo.CurrentRow.Cells8.Value.ToString(); dtp_Prot_Date.Value = Convert.ToDateTime(dgv_PrdouctInfo.CurrentRow.Cells9.Value); 3.2 采购管理功能3.2.1采

21、购入库当将需要采购的商品放入采购商品信息列表中后,系统会自动进行计算总采购数量和总价钱。采购入库时要记录商品基本信息。可对入库的商品基本信息进行保存和删除操作。以上代码实现了保存功能。private void tsb_Btn_Save_Click(object sender, EventArgs e) Save(); lp = GetProductInfoByProt_Name(); dgv_PrdouctInfo.DataSource = lp; Clear(); Conceal(); tsb_Btn_Amend.Enabled = true; tsb_Btn_Delete.Enabled

22、= true; 3.2.2采购退货当商品库存量为0时,想要彻底地删除该商品,需要两步:首先要确保库存中该商品数量为0,其次需要到基本信息维护菜单中选择商品信息维护选项,单击该选项系统会弹出维护商品信息窗体,在其上的商品信息列表中找到要彻底删除的商品,单击“删除”按钮,若显示删除成功,至此才彻底删除了需要删除的商品。private void txt_Out_Num_KeyDown(object sender, KeyEventArgs e) if (e.KeyCode = Keys.Enter) try StoreRoom s = common.s; if (Convert.ToInt32(tx

23、t_Out_Num.Text) s.Store_sum) MessageBox.Show(库存不够,请进货或减少销售); txt_Out_Num.SelectAll(); return; if (Convert.ToInt32(txt_Out_Num.Text) var.Store_sum) MessageBox.Show(库存不够,请进货,或减少销售); txt_Out_Num.SelectAll(); return; var.In_Out_StoreRoom += Convert.ToInt32(txt_Out_Num.Text); sum += Convert.ToInt32(txt_O

24、ut_Num.Text); money += Convert.ToInt32(txt_Out_Num.Text) * var.Prot_tradeprice; if (var.Store_sum - var.In_Out_StoreRoom var.Store_lastNum) MessageBox.Show(请注意该商品销售后,该商品库存小于库存下线,请尽快进货, 警告, MessageBoxButtons.OK, MessageBoxIcon.Exclamation); b = false; break; common.s = null; dgv_Store.DataSource = nu

25、ll; dgv_Store.DataSource = ls; Clear(); txt_Prot_Name.Focus(); lb_money.Text = money.ToString(); lb_num.Text = num.ToString(); lb_sum.Text = sum.ToString(); catch (Exception) MessageBox.Show(请输入正确的数字格式); txt_Out_Num.SelectAll(); 3.3 销售管理功能3.3.1销售出库当光标进入商品名称文本框时,按下Enter键,选择要销售的商品。按下Enter键,输入销售数量,按下En

26、ter键。之后单击“保存”按钮,提示销售成功或失败!当销售的商品数量小于该商品的库存警报数量时,提示该商品已经到达销售警报位置,需要进货。系统提供了按商品名称查询商品的详细信息,并且支持模糊查询。其中品牌名称和供应商绑定到了下拉列表框中,以备客户选择。实现退出功能的代码: private void tsb_Btn_Exit_Click(object sender, EventArgs e) this.Close(); 窗体加载: private void Frm_SellOut_Load(object sender, EventArgs e) dgv_Store.AutoGenerateCol

27、umns = false; cbb_Cards_Name.DisplayMember = Cardsname; cbb_Cards_Name.ValueMember = Cardsid; cbb_Cards_Name.DataSource = LoginInfo.GetCardsByCards_name(); cbb_Priv_Name.DisplayMember = Priv_name; cbb_Priv_Name.ValueMember = Priv_id; cbb_Priv_Name.DataSource = LoginInfo.GetProvidersByPriv_name(); 这是

28、连接数据库的代码:private static readonly string conStr = DBHelper.conStr;这是商品信息集合:List lp = new List(); 3.3.2销售退货光标进入商品名称文本框时,按下Enter键后系统将弹出库存信息查询窗体,与此同时将该窗体上的修改、删除、取消和查询按钮设为隐藏,并显示所有的商品信息列表。商品名称按键事件: private void txt_Prot_Name_KeyDown(object sender, KeyEventArgs e) try if (e.KeyCode = Keys.Enter) common.Prot_name = txt_Prot_Name.Text; Frm_StoreQuery fs = new Frm_StoreQuery(); common.Prot_EnterAndOut = true; fs.ShowDialog(); StoreRoom s = common.s; txt_Prot_Bigunit.Text = s.Prot_Bigunit; txt_Prot_Name.Text = s.Prot_name; txt_Prot_Rate.Text = s.Prot_rate.ToString(); txt_Prot_Retailpri

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1