学生姓名:汤长江 周子坤 彭年
专业班级:信息与计算科学1001班
学院名称: 金融与数学学院
指导老师: 范祥林
绪论
大学生社团以“繁荣校园文化,打造社团品牌,推进素质拓展,服务广大同学”为宗旨,以实现大学学生社团的自我管理、自我监督、自我发展为目标,通过多层面组织引导学生社团活动,进行能力培养,提高大学生思想觉悟,增强大学生的综合素质。
数据库的设计
本系统是单机版的系统,使用的是SQL server2008数据库。
数据库有成员表、活动表、用户表、社团表、社团基本情况表。
数据库名:皖西学院社团管理系统
表名:成员表
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
1 | xh | varchar | 50 | 0 | 是 | 否 | ||||
2 | xm | varchar | 50 | 0 | 是 | |||||
3 | xb | varchar | 50 | 0 | 是 | |||||
4 | psw | varchar | 50 | 0 | 是 | |||||
5 | stmc | varchar | 50 | 0 | 是 | |||||
6 | zw | varchar | 50 | 0 | 是 | |||||
7 | lxdh | varchar | 50 | 0 | 是 |
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
1 | hdmc | varchar | 20 | 0 | 是 | 否 | ||||
2 | ssst | varchar | 20 | 0 | 是 | |||||
3 | xgnr | varchar | 50 | 0 | 是 | |||||
4 | hdsj | varchar | 20 | 0 | 是 |
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
1 | uid | varchar | 50 | 0 | 是 | 否 | ||||
2 | id | varchar | 50 | 0 | 是 | |||||
3 | mk | varchar | 50 | 0 | 是 | |||||
4 | psw | varchar | 50 | 0 | 是 |
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
1 | stmc | varchar | 20 | 0 | 是 | 否 | ||||
2 | stcsr | varchar | 20 | 0 | 是 | |||||
3 | stfzr | varchar | 20 | 0 | 是 | |||||
4 | clrq | varchar | 20 | 0 | 是 |
序号 | 列名 | 数据类型 | 长度 | 小数位 | 标识 | 主键 | 外键 | 允许空 | 默认值 | 说明 |
1 | stgs | varchar | MAX | 0 | 是 | |||||
2 | hyfs | varchar | MAX | 0 | 是 |
主程序窗体设计
(1)实现目标
程序启动后,在“系统登录”界面验证操作员密码后,将进入主程序界面。主程序界面主要实现如下功能:
(1)可通过菜单和工具栏快速选取项目,调用相应子程序。
(2)在窗口显示前,根据登录界面中的权限代码来设置不同用户可以使用不同的功能模块。
主程序界面如下:
登陆界面如下:
主要代码如下:
string name,psw,check_ddlb_1
int li_n
name=trim(sle_1.text)
psw=trim(sle_2.text)
check_ddlb_1=trim(ddlb_1.text)
if name="" or psw="" then
messagebox("错误提示用户或密码不能为空")
else
choose case check_ddlb_1
case "管理员"
select count(*) into :li_n
from login
where mk='管理员' and id=:name and psw=:psw;
if li_n = 1 then
open(w_demo1)
w_demo1.changemenu(m_main)
close(parent)
else
messagebox("错误提示无此管理员"+string(li_n))
end if
case "成员"
select count(*) into :li_n
from login
where mk='成员'and id=:name and psw=:psw;
if li_n= 1 then
open(w_demo1)
w_demo1.changemenu(m_main2)
close(parent)
else
messagebox("错误提示无此成员")
end if
end choose
end if
修改密码界面如下:
主要代码如下:
string ls_xh,ls_mm,ls_a,ls_b
int li_n
ls_xh=trim(sle_1.text)
ls_mm=trim(sle_2.text)
ls_a=trim(sle_3.text)
ls_b=trim(sle_4.text)
if ls_xh="" or ls_mm="" then
messagebox("提示用户名和密码不能为空")
else
select count(*) into :li_n
from admin
where id=:ls_xh and psw=:ls_mm;
if li_n=0 then
messagebox("警告用户或密码错误")
else
if ls_a <> ls_b then
messagebox('提示','新密码不一致,请重新输入')
else
if li_n <> 0 and ls_a=ls_b then
messagebox("提示修改成功")
update login
set psw=:ls_b
where id=:ls_xh;
commit;
close(w_demo3)
open(w_demo1)
return 0
end if
end if
end if
end if
社团信息管理界面如下:
由界面可见添加,编辑两个按钮会弹出界面来添加或编辑数据。删除功能,直接在界面上体现。
添加界面如下:
主要代码如下:
if dw_1.textline( )="" then
messagebox("提示不能为空")
elseif dw_1.update( )=1 then
messagebox("提示添加成功")
w_st.cb_1.event clicked()
close(parent)
else
messagebox("提示添加失败,请重新操作")
end if
编辑界面如下:
主要代码如下:
if dw_1.textline( )="" then
messagebox("提示不能为空")
elseif dw_1.update( )=1 then
messagebox("提示更新成功")
w_st.cb_1.event clicked()
close(parent)
else
messagebox("提示更新失败,请重新操作")
end if
总结
经过几个星期的设计和努力。皖西学院社团管理系统基本完成。其基本功能符合用户需求,能够实现社团基本信息的录入、修改、删除等操作。
但由于我们没有全面掌握power builder,所以该系统还有许多不尽如人意的地方,比如用户界面不够完美,出错处理不够等多方面的问题,这些都有待进一步的完善。
虽然有许多不足之处,但我们对它也有了更多的了解。在以后的日子里,我们会更加严格的要求自己,多学习,多请教,学做事,学做人,遇事多角度考虑,不管做什么事,要有计划有布置的去做。