SQLServer数据库管理与编程课程设计.docx
《SQLServer数据库管理与编程课程设计.docx》由会员分享,可在线阅读,更多相关《SQLServer数据库管理与编程课程设计.docx(18页珍藏版)》请在冰点文库上搜索。
SQLServer数据库管理与编程课程设计
30
课程设计说明书
名称:
财务凭证管理系统
姓名
学号
院 系
班级
湖南理工学院计算机与信息工程系
2014年1月5日
一.需求分析
1.1系统概述
此系统是对于财政凭证管理的一个专门的系统,财务凭证管理系统主要由【系统管理】、【凭证管理】、【科目信息】、【账目查询】和【报表】等模块组成。
进入该系统后,用户可以对系统中的财务信息进行添加、修改、删除、查询以及打印等操作。
另外,管理员还可以添加、修改用户信息以及对密码修改。
1.2基础结构
财务凭证管理系统的前台是使用C#开发Windows应用程序,后台系统采用SQLServer2005作为数据库。
MicrosoftSQLServer2005是一个完整的商务智能(BI)平台,引入使用了Microsoft.NET语言来开发数据库目标的性能,为用户提供了可用于构建典型和创新的分析应用程序所需的各种特性、工具和功能。
1.3系统总体结构
财务凭证管理系统按照功能划分为五大部分:
系统管理,凭证管理,科目信息,账目查询,报表。
系统管理的功能包含:
公司信息,初始化使用时间,初始化科目资金,管理员信息,密码修改。
凭证管理的功能包含:
凭证录入,凭证审核,凭证结算,凭证总汇,凭证查询,凭证修改,科目信息的功能包含:
科目信息,科目查询。
账目查询的功能包含:
总账查询,按凭证查询,按科目查询,账目余额。
报表的功能包含:
按科目名称报表,按凭证号报表。
财务管理系统应包括的基本功能如图所示:
图1.3.1财务凭证管理系统的基本功能
1.4数据库设计
Ø实体关系模式:
Ø管理员信息(姓名,编号,密码,手机号码,工作单位)
Ø账目信息(资金,简码,编号,页码,名称)
Ø日志信息(编号,用户姓名,日期,凭证修改,凭证查询,凭证审核)
Ø凭证管理信息(账目编号,总汇,商品资金,账目结算,账目审核,凭证编号,凭证日期)
Ø用户信息(编号,姓名,文件,电话号码,类型,地址)
Ø联系关系模式:
Ø管理(日志信息,账目)
Ø查询(用户)
Ø报表(凭证信息)
二.数据设计
2.1数据库实现
2.1.1表tb_admInfo(管理员信息)
字段名
数据类型
空/非空
其他
字段简单描述
admId
int
非空
admName
varchar(20)
空
admPassword
varchar(20)
空
admWordk
varchar(20)
空
admPhone
varchar(20)
空
admdate
admdate
空
表描述
【基本用途、所属数据库、表数据量、预计增长量。
所属表空间、分表说明、分区说明。
】
主键
admId
2.1.2表tb_logInfo(日志信息)
字段名
数据类型
空/非空
其他
字段简单描述
logId
int
非空
username
varchar(20)
空
logdate
datetime
空
logshou
varchar(20)
空
表描述
【基本用途、所属数据库、表数据量、预计增长量。
所属表空间、分表说明、分区说明。
】
2.1.3表tb_subjectInfo(账目信息)
字段名
数据类型
空/非空
其他
字段简单描述
subId
varchar(20)
非空
subGkb
varchar(30)
空
subName
varchar(30)
空
subMoney
money
空
subPage
varchar(20)
空
表描述
【基本用途、所属数据库、表数据量、预计增长量。
所属表空间、分表说明、分区说明。
】
主键
subId
2.1.4表tb_UserJob(用户信息)
字段名
数据类型
空/非空
其他
字段简单描述
userId
int
非空
username
varchar(20)
空
usermonofile
varchar(50)
空
useraddress
varchar(30)
空
useracridine
varchar(10)
空
userphone
varchar(15)
空
表描述
【基本用途、所属数据库、表数据量、预计增长量。
所属表空间、分表说明、分区说明。
】
2.1.5表tb_warrantInfo(凭证信息)
字段名
数据类型
空/非空
其他
字段简单描述
warrantId
int
空
warrantDate
datetime
空
subId
varchar(20)
空
subLendmoney
money
空
subGoodsMoney
money
空
subEquation
varchar(30)
空
subRemark
varchar(50)
空
表描述
【基本用途、所属数据库、表数据量、预计增长量。
所属表空间、分表说明、分区说明。
】
2.2模块功能的实现
2.2.1管理员登录时数据流图
2.2.1管理呀登录时数据流图
登录界面:
代码:
GetLoginlog=newGetLogin();
admInfoadm=newadmInfo();
adm.setadmName(this.txtUser.Text);
adm.setadmPassword(this.txtPasword.Text);
stringresult=log.loginDen(adm);
if(result=="adminOK")
{frmMainmain=newfrmMain(this.txtUser.Text.Trim());
main.Show();
this.Hide();
}//登录成功
登录成功后界面图:
代码实现
privatevoidbtnOK_Click(objectsender,System.EventArgse)//确定
{
try
{GetLoginlog=newGetLogin()
admInfoadm=newadmInfo();
adm.setadmName(this.txtUser.Text);
adm.setadmPassword(this.txtPasword.Text);
stringresult=log.loginDen(adm);//调用方法
if(result=="adminOK")
{
frmMainmain=newfrmMain(this.txtUser.Text.Trim());
main.Show();
this.Hide();
}//endblockif
if(result=="adminNO")
{
DialogResulta=MessageBox.Show("用户名或密码错误","提示信息",MessageBoxButtons.OK,MessageBoxIcon.Error);
this.txtUser.Text="";
txtPasword.Text="";
txtUser.Focus();
}//endblockif
if(result=="ConClose")
{
MessageBox.Show("数据库没有打开","提示信息",MessageBoxButtons.OK,MessageBoxIcon.Error);
}//endblockif
}
catch(Exceptionee)
{MessageBox.Show(ee.Message);}
}
privatevoidbtnConcel_Click(objectsender,System.EventArgse)//取消
{
DialogResultbb=MessageBox.Show("是否要退出登录?
","退出登录",MessageBoxButtons.YesNo);
if(Convert.ToString(bb)=="Yes")
{Application.Exit();}
}
privatevoidfrmLoginwe_Load(objectsender,EventArgse)
{
}
privatevoidpictureBox1_Click(objectsender,EventArgse)
{
}
}
}
2.2.2系统管理模块
截图:
代码实现
privatevoid公司信息ToolStripMenuItem_Click(objectsender,EventArgse)
{
frmComnptycpy=newfrmComnpty();
cpy.MdiParent=this;
cpy.Show();
}
privatevoid初始化使用时间ToolStripMenuItem_Click(objectsender,EventArgse)
{
frmSystemDatTimesydate=newfrmSystemDatTime(M_strName);
sydate.MdiParent=this;
sydate.Show();
}
privatevoid初始化科目资金ToolStripMenuItem_Click(objectsender,EventArgse)
{
frmSubjectMoneysuMoney=newfrmSubjectMoney();
suMoney.MdiParent=this;
suMoney.Show();
}
privatevoid管理理员信息ToolStripMenuItem_Click(objectsender,EventArgse)
{
frmAdmInfoadm=newfrmAdmInfo();
adm.MdiParent=this;
adm.Show();
}
privatevoid密码修改ToolStripMenuItem_Click(objectsender,EventArgse)
{
frmAdminPassWordpassword=newfrmAdminPassWord(M_strName);
password.MdiParent=this;
password.Show();
}
2.2.3凭证管理
截图:
代码:
privatevoid凭证录入ToolStripMenuItem_Click(objectsender,EventArgse)
{frmWarrantInfowar=newfrmWarrantInfo();
war.MdiParent=this;
war.Show();
}
privatevoid凭证审核ToolStripMenuItem_Click(objectsender,EventArgse)
{frmWarrantShengsheng=newfrmWarrantSheng();
sheng.MdiParent=this;
sheng.Show();
}
privatevoid凭证结算ToolStripMenuItem_Click(objectsender,EventArgse)
{GetWarInfogetWinfo=newGetWarInfo();
intp_int_Select=getWinfo.GetCount();
if(p_int_Select==1)
{MessageBox.Show("还没有通过审核的记录\n"+"请审核凭证后再结算","结算提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
return;
}
else
{stringP_str_balnd=getWinfo.GetWarrbalance();
if(P_str_balnd=="updateOk")
{MessageBox.Show("结算完毕\n"+"请继续操作","结算提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
return;
}
}
}
privatevoid凭证总汇ToolStripMenuItem_Click(objectsender,EventArgse)
{frmWarrantlSunwsun=newfrmWarrantlSun();
wsun.MdiParent=this;
wsun.Show();
}
privatevoid凭证ToolStripMenuItem_Click(objectsender,EventArgse)
{frmWarrantFindfind=newfrmWarrantFind();
find.MdiParent=this;
find.Show();
}
privatevoid凭证修改ToolStripMenuItem1_Click(objectsender,EventArgse)
{frmWarrantUpdatefrmupdat=newfrmWarrantUpdate();
frmupdat.MdiParent=this;
frmupdat.Show();
}
2.2.4科目信息管理模块
截图:
代码:
privatevoid添加科目ToolStripMenuItem_Click(objectsender,EventArgse)
{frmSbubjectInfosuinfo=newfrmSbubjectInfo();
suinfo.MdiParent=this;
suinfo.Show();
}
privatevoid科目查询ToolStripMenuItem_Click(objectsender,EventArgse)
{frmSubjectIDFindsubFind=newfrmSubjectIDFind();
subFind.MdiParent=this;
subFind.Show();
2.2.5账目查询模块
截图:
代码:
privatevoid总账游览ToolStripMenuItem_Click(objectsender,EventArgse)
{frmSumLooklook=newfrmSumLook();
look.MdiParent=this;
look.Show();
}
privatevoid按凭证查询ToolStripMenuItem_Click(objectsender,EventArgse)
{frmSubjectWarrtIDwarID=newfrmSubjectWarrtID();
warID.MdiParent=this;
warID.Show();
}
privatevoid按科目查询ToolStripMenuItem_Click(objectsender,EventArgse)
{frmSubjectSunsun=newfrmSubjectSun();
sun.MdiParent=this;
sun.Show();
}
privatevoid账目佘额ToolStripMenuItem_Click(objectsender,EventArgse)
{frmLeavMoneyfrmo=newfrmLeavMoney();
frmo.MdiParent=this;
frmo.Show();
}
2.2.6报表模块
截图:
代码:
privatevoid按科目报表ToolStripMenuItem_Click(objectsender,EventArgse)
{frmSubjectSunsun=newfrmSubjectSun();
sun.MdiParent=this;
sun.Show();
}
privatevoid按凭证ToolStripMenuItem_Click(objectsender,EventArgse)
{frmSubjectWarrtIDwarID=newfrmSubjectWarrtID();
warID.MdiParent=this;
warID.Show();
}
2.2.7退出模块
截图:
代码:
privatevoid退出ToolStripMenuItem_Click(objectsender,EventArgse)
{DialogResulta=MessageBox.Show("是否要退出系统?
","退出",MessageBoxButtons.YesNo,MessageBoxIcon.Question);
if(Convert.ToString(a)=="Yes")
{Application.Exit();
}
}
三.设计心得体会
通过对财务凭证管理系统的编程开发,我熟悉了SQLServer2005的使用和操作。
同时也学会了SQLServer中表的操作与管理。
把书本上学习到的SQL语言应用到实际中去,很好的锻炼了我编写SQL语言的能力。
由于是第一次编写这么长的程序,所以对我的提高帮助很大。
自评
意见
自评
等级
良好
指导
教师
意见
签名:
年月日
教研
室意
见
签名:
年月日
系部
意见
签名:
年月日