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

上传人:b****1 文档编号:1204028 上传时间:2023-04-30 格式:DOCX 页数:40 大小:535.43KB
下载 相关 举报
专业实践net课程实践报告.docx_第1页
第1页 / 共40页
专业实践net课程实践报告.docx_第2页
第2页 / 共40页
专业实践net课程实践报告.docx_第3页
第3页 / 共40页
专业实践net课程实践报告.docx_第4页
第4页 / 共40页
专业实践net课程实践报告.docx_第5页
第5页 / 共40页
专业实践net课程实践报告.docx_第6页
第6页 / 共40页
专业实践net课程实践报告.docx_第7页
第7页 / 共40页
专业实践net课程实践报告.docx_第8页
第8页 / 共40页
专业实践net课程实践报告.docx_第9页
第9页 / 共40页
专业实践net课程实践报告.docx_第10页
第10页 / 共40页
专业实践net课程实践报告.docx_第11页
第11页 / 共40页
专业实践net课程实践报告.docx_第12页
第12页 / 共40页
专业实践net课程实践报告.docx_第13页
第13页 / 共40页
专业实践net课程实践报告.docx_第14页
第14页 / 共40页
专业实践net课程实践报告.docx_第15页
第15页 / 共40页
专业实践net课程实践报告.docx_第16页
第16页 / 共40页
专业实践net课程实践报告.docx_第17页
第17页 / 共40页
专业实践net课程实践报告.docx_第18页
第18页 / 共40页
专业实践net课程实践报告.docx_第19页
第19页 / 共40页
专业实践net课程实践报告.docx_第20页
第20页 / 共40页
亲,该文档总共40页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

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

《专业实践net课程实践报告.docx》由会员分享,可在线阅读,更多相关《专业实践net课程实践报告.docx(40页珍藏版)》请在冰点文库上搜索。

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

专业实践net课程实践报告

 

课程设计报告

(/学年第学期)

 

课程名称

.NET专业实践

设计名称

进销存管理信息系统

设计时间

指导单位

指导教师

 

学生姓名

班级学号

学院(系)

专业

 

目录

第一章系统需求分析3

1.1需求概述3

1.2数据流图3

第二章进销存系统结构5

2.1系统功能结构图5

2.2系统登录界面5

2.3系统主界面7

2.4总E-R图设计8

第三章系统详细设计8

3.1基本资料维护功能8

3.1.1操作员资料维护8

3.1.2商品资料维护9

3.1.3供应商资料维护10

3.1.4品牌资料维护11

3.2采购管理功能12

3.2.1采购入库12

3.2.2采购退货13

3.3销售管理功能14

3.3.1销售出库14

3.3.2销售退货15

3.4库存统计功能16

3.4.1库存查询16

3.4.2销售统计17

3.4.3采购统计19

第四章数据库设计21

4.1数据库逻辑设计21

4.2表设计22

第五章系统调试24

第六章结束语25

 

第一章系统需求分析

1.1需求概述

这里对商品的管理包括进、销、存3个方面。

可以建立一个超市进销存管理系统,对超市的管理者、营业员、库存管理员等减轻其工作量,便于经营管理。

功能需求:

①采购管理功能模块:

采购计划、采购订单、采购入库、采购退货、应付款、采购付款。

②销售管理功能模块:

、报价单、销售订单、销售出库、销售退货、应收款、销售收款。

③库存管理功能模块:

其它入库、其它出库、库存警报、库存报表、基本资料设计。

商品管理需要处理大量的库存信息,还要时刻更新产品的销售信息,不断添加商品信息。

面对不同种类的信息,需要合理的数据库结构来保存数据信息,需要有效的程序结构支持各种数据操作的执行。

它最主要的特点是能够实时的和准确的控制店内的销售情况。

1.2数据流图

●图1.1第0层数据流图

●图1.2进销存管理系统数据流图(第一层)

说明:

每一个处理也均可由外部实体直接输入数据

●图1.3销售管理数据流程图(第二层)

●图1.4仓库管理数据流程图(第二层)

●图1.5采购管理数据流程图(第二层)

第二章进销存系统结构

2.1系统功能结构图

2.2系统登录界面

用户登录系统时,系统会对其身份进行验证,如果系统中不存在该用户,会提示用户名或密码错误!

不同的登录类型对系统的访问权限不一样。

由于软件界面在整个软件生命周期的重要作用,根据社会工程学、国家标准等相关规范,确定软件界面时要遵循以下原则:

布局合理,界面简洁。

配色合理,图像和显示效果要统一。

整个软件界面风格应该保持一致。

减少用户的操作负担,界面尽可能少的使用鼠标。

所有界面文字清晰明了,不产生歧义。

用户身份验证代码:

publicvoidloginValidate()

{UserInfou=null;

SqlConnectioncon=newSqlConnection(DBHelper.conStr);

try

{

con.Open();

intuserRole=cbo_loginType.SelectedIndex;

stringsql=string.Format("select*fromuserInfowhereUserloginId='{0}'andUserPass='{1}'andUserRole={2}",txt_UserloginId.Text,txt_UserPass.Text,userRole);

SqlCommandcom=newSqlCommand(sql,con);

SqlDataReaderdr=com.ExecuteReader();

if(dr.Read())

{

u=newUserInfo();

u.UserId=Convert.ToInt32(dr["UserId"]);

u.UserloginId=dr["UserloginId"].ToString();

u.UserName=dr["UserName"].ToString();

u.UserPass=dr["UserPass"].ToString();

u.UserRole=dr["UserRole"].ToString();

}

dr.Close();

if(u!

=null)

{LoginInfo.LoginUserInfo=u;//保存登录用户信息

this.Visible=false;

Frm_Mainfm=newFrm_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系统主界面

当用户进入主界面后,可以选择需要操作的菜单,单击菜单项后会跳转到相应的窗体。

在进销存系统中主窗体为MDI窗体,在其下所打开的窗体都会在关闭主窗体之后关闭。

要实现让主窗体为MDI窗体,首先要设置主窗体的IsMdiContainer属性为True,再指定子窗体的父窗体是主界面窗体。

具体实现代码如下:

privatevoidtsmi_StoreQuery_Click(objectsender,EventArgse)

{

fsq.MdiParent=this;

if(fsq.Visible)

{

fsq.Focus();

return;

}

else

{

fsq=newFrm_StoreQuery();

fsq.MdiParent=this;

fsq.Show();

}

}

 

2.4总E-R图设计

在分析清除系统功能需求之后,总要的就是把系统功能划分成为相对独立的模块或者子系统,便于集中讨论和确定需求,并且需要确定出操作用户,可以直观的表现出该系统的业务流程。

第三章基础功能设计开发

3.1基本资料维护功能

3.1.1操作员资料维护

提供对操作员添加、删除、修改、查询功能,该界面只有管理员有权进入。

为方便管理员查找用户的详细信息,程序提供了根据用户名查询用户详细信息的功能。

若要修改用户信息,先选中待修改的项,然后单击“修改”按钮,系统会自动将选中项显示到基本信息文本框中,这时管理员可以修改用户资料,之后点击“保存”按钮,在确定操作后,系统会检测操作员的数据输入。

点击“添加”,系统会自动启动基本信息文本框,输入之后点击保存即完成。

选中要删除的项,点击“删除”,然后确定,即可成功删除用户信息。

以下代码实现了查询功能:

privatevoidtsb_Btn_Lookup_Click(objectsender,EventArgse)

{

if(tsb_Txt_Lookup.Text.Trim()==""||String.IsNullOrEmpty(tsb_Txt_Lookup.Text))

{

MessageBox.Show("请输入查询条件","提示");

}

else

{

lp=GetProductInfoByProt_Name(tsb_Txt_Lookup.Text);

dgv_PrdouctInfo.DataSource=lp;

}

}

3.1.2商品资料维护

当单击“商品资料维护”选项后,在商品资料维护窗体加载时应该将所有的商信息都显示出来。

使用列表控件展现概要信息,附加文本框和下拉列表框显示详细信息,当用户单击列表时需要显示详细信息。

可对商品信息进行添加、修改、删除、和查询等操作。

以下是实现删除功能的代码:

privatevoidtsb_Btn_Delete_Click(objectsender,EventArgse)

{

if(dgv_PrdouctInfo.SelectedRows.Count>0)

{

intpId=Convert.ToInt32(dgv_PrdouctInfo.SelectedRows[0].Cells[0].Value);

stringsql="deletefromproductInfowhereProtId="+pId;

DialogResultdr=MessageBox.Show("你确定要删除此商品信息吗?

删除之后所有关于该商品的记录将会全部清空","提示",MessageBoxButtons.OKCancel);

stringsqlStoreCount="selectStoreSumfromstoreRoomwhereprotid="+pId;

intstoreCount=0;

SqlConnectioncon=newSqlConnection(conStr);

con.Open();

SqlCommandcmd=newSqlCommand(sqlStoreCount,con);

storeCount=Convert.ToInt32(cmd.ExecuteScalar());

if(storeCount>0)

{MessageBox.Show("该商品还有库存,请先将货物清理出库再删除商品","提示");

return;

}

else

{stringsqlDelStoreCount="deletefromstoreRoomwhereprotid="+pId;

stringsqlDelDetial="deletefromorderdetailswhereprotid="+pId;

stringsqlDelReturn="deletefromreturnproductwhereprotid="+pId;

ExecuteQuery(sqlDelStoreCount);

ExecuteQuery(sqlDelDetial);

ExecuteQuery(sqlDelReturn);

}

con.Close();

if(dr==DialogResult.OK)

{intresult=ExecuteQuery(sql);

if(result>0)

{

MessageBox.Show("删除成功!

","提示");

lp=GetProductInfoByProt_Name("");

dgv_PrdouctInfo.DataSource=lp;

}}

}}

3.1.3供应商资料维护

在供应商资料维护窗体加载时,保存按钮和文本框处于禁用状态,与此同时系统会将所有的供应商信息查询出来并显示。

可对供应商资料进行添加、修改、删除、和查询等操作。

当对供应商资料进行添加、修改和删除操作时,保存按钮和文本框处于启用状态。

单击删除按钮系统会弹出“你确定要删除此条信息吗?

”的对话框。

单击“确定”按钮系统会删除成功或失败。

一般涉及数据删除的操作必须给予客户提示,以免操作在客户大意之下发生。

以上代码实现了添加功能:

privatevoidtsb_Btn_Add_Click(objectsender,EventArgse)

{

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;

Display();

txt_Prot_Name.Focus();

}

3.1.4品牌资料维护

为方便查找特定品牌的详细信息,程序提供了根据品牌名称查询品牌详细信息的方法。

品牌编号是自动产生,无法修改。

可对品牌信息进行添加、修改、删除、和查询等操作。

以上代码实现了修改功能。

privatevoidtsb_Btn_Amend_Click(objectsender,EventArgse)

{

type=1;

tsb_Btn_Add.Enabled=false;

tsb_Btn_Save.Enabled=true;

tsb_Btn_Delete.Enabled=false;

tsb_Txt_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.Cells[0].Value.ToString();

txt_Prot_Name.Text=dgv_PrdouctInfo.CurrentRow.Cells[1].Value.ToString();

txt_Prot_Retailprice.Text=dgv_PrdouctInfo.CurrentRow.Cells[2].Value.ToString();

txt_Prot_Tradeprice.Text=dgv_PrdouctInfo.CurrentRow.Cells[3].Value.ToString();

txt_Prot_Bigunit.Text=dgv_PrdouctInfo.CurrentRow.Cells[4].Value.ToString();

txt_Prot_Smallunit.Text=dgv_PrdouctInfo.CurrentRow.Cells[5].Value.ToString();

txt_Prot_Rate.Text=dgv_PrdouctInfo.CurrentRow.Cells[6].Value.ToString();

cbb_Cards_Name.Text=dgv_PrdouctInfo.CurrentRow.Cells[7].Value.ToString();

cbb_Priv_Name.Text=dgv_PrdouctInfo.CurrentRow.Cells[8].Value.ToString();

dtp_Prot_Date.Value=Convert.ToDateTime(dgv_PrdouctInfo.CurrentRow.Cells[9].Value);

}

3.2采购管理功能

3.2.1采购入库

当将需要采购的商品放入采购商品信息列表中后,系统会自动进行计算总采购数量和总价钱。

采购入库时要记录商品基本信息。

可对入库的商品基本信息进行保存和删除操作。

以上代码实现了保存功能。

privatevoidtsb_Btn_Save_Click(objectsender,EventArgse)

{

Save();

lp=GetProductInfoByProt_Name("");

dgv_PrdouctInfo.DataSource=lp;

Clear();

Conceal();

tsb_Btn_Amend.Enabled=true;

tsb_Btn_Delete.Enabled=true;

}

3.2.2采购退货

当商品库存量为0时,想要彻底地删除该商品,需要两步:

首先要确保库存中该商品数量为0,其次需要到基本信息维护菜单中选择商品信息维护选项,单击该选项系统会弹出维护商品信息窗体,在其上的商品信息列表中找到要彻底删除的商品,单击“删除”按钮,若显示删除成功,至此才彻底删除了需要删除的商品。

privatevoidtxt_Out_Num_KeyDown(objectsender,KeyEventArgse)

{if(e.KeyCode==Keys.Enter)

{try

{

StoreRooms=common.s;

if(Convert.ToInt32(txt_Out_Num.Text)>s.Store_sum)

{MessageBox.Show("库存不够,请进货或减少销售");

txt_Out_Num.SelectAll();

return;

}

if(Convert.ToInt32(txt_Out_Num.Text)<=0)

{MessageBox.Show("销售退货不能为负值和0");

txt_Out_Num.SelectAll();

return;

}

else

{boolb=true;

foreach(StoreRoomvarinls)

{if(var.Prot_id==common.s.Prot_id)

{

if(var.In_Out_StoreRoom+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_Out_Num.Text);

money+=Convert.ToInt32(txt_Out_Num.Text)*var.Prot_tradeprice;

if(var.Store_sum-var.In_Out_StoreRoom

{

MessageBox.Show("请注意该商品销售后,该商品库存小于库存下线,请尽快进货","警告",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);

}

b=false;

break;

}

}

common.s=null;

dgv_Store.DataSource=null;

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键,输入销售数量,按下Enter键。

之后单击“保存”按钮,提示销售成功或失败!

当销售的商品数量小于该商品的库存警报数量时,提示该商品已经到达销售警报位置,需要进货。

系统提供了按商品名称查询商品的详细信息,并且支持模糊查询。

其中品牌名称和供应商绑定到了下拉列表框中,以备客户选择。

实现退出功能的代码:

privatevoidtsb_Btn_Exit_Click(objectsender,EventArgse)

{

this.Close();

}

窗体加载:

privatevoidFrm_SellOut_Load(objectsender,EventArgse)

{

dgv_Store.AutoGenerateColumns=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("");

}

这是连接数据库的代码:

privatestaticreadonlystringconStr=DBHelper.conStr;

这是商品信息集合:

Listlp=newList();

3.3.2销售退货

光标进入商品名称文本框时,按下Enter键后系统将弹出库存信息查询窗体,与此同时将该窗体上的修改、删除、取消和查询按钮设为隐藏,并显示所有的商品信息列表。

商品名称按键事件:

privatevoidtxt_Prot_Name_KeyDown(objectsender,KeyEventArgse)

{

try

{

if(e.KeyCode==Keys.Enter)

{

common.Prot_name=txt_Prot_Name.Text;

Frm_StoreQueryfs=newFrm_StoreQuery();

common.Prot_EnterAndOut=true;

fs.ShowDialog();

StoreRooms=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-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2