学生综合信息查询系统设计与实现
4.5部分代码讨论
4.5.1验证登陆信息函数
本函数主要完成对登陆信息的验证,根据不同的用户加载与之相应的菜单、窗体和个人信息,登陆后窗体如图4-1~4-3所示。具体函数代码与说明如下:
integer confirmLoginInfor(string loginUserPsd,string loginUser,integer loginUserLb)
/*
参数说明loginUserPsd用户密码,loginUser用户名,UserLb用户类别
返回值,返回值为integer(整型)表示函数一次调用函数操作状态,其可能取值为:
0 操作成功
1 没有此用户
2 密码错误
*/
//函数体
integer flag=0 //返回值标示
string lUser,lPwd //暂存用户名、密码变量
Choose Case loginUserLb
Case 1 //辅导员
//提取用户名,并存入lUser中
select DepartmentHead
into :lUser
from t_department where DepartmentID="001";//管理员为系主任
//验证是否成功操作
if SQLCA.SQLCode=100 then
flag=1 //设置标示
elseif lUser=loginUser then
//提取密码,并存入lPwd中
select pwd into:lPwd from t_teachers where teacherID=:loginUser;
if loginUserPsd<>lPwd then //验证密码
flag=2
end if
end if
Case 2 //教师
//根据形参loginUser检索数据库的t_teachers表
//提取密码置入lPwd中。
select pwd
into :lPwd
from t_teachers where teacherID=:loginUser;
if SQLCA.SQLCode=100 then
flag=1
elseif loginUserPsd<>lPwd then
flag=2
end if
Case 3 //学生
select pwd
into:lPwd
from t_students where StudentID=:loginUser;
if SQLCA.SQLCode=100 then
flag=1
elseif loginUserPsd<>lPwd then
flag=2
end if
End Choose
return flag //返回标示
4.5.2成绩查询窗体说明
1、窗体打开函数,主要是将专业下拉框初始化。具体函数代码与说明如下:
dw_1.SetTransObject(SQLCA)
dw_1.retrieve()
dw_1.setFocus()
ddlb_3.SelectItem(7) //显示全部成绩
//声明一个用于提取专业的游标
String StrClass
declare myCursor cursor for
select distinct SpecialityName from t_Speciality;
open myCursor; //打开游标
fetch myCursor into :StrClass; //提取数据
//初始化专业下拉框
do while sqlca.sqlcode=0
ddlb_1.addItem(StrClass) //填充专业下拉框
fetch myCursor into :StrClass;
loop
close myCursor; //关闭游标
2、专业下拉框的selectionChanged事件,根据专业初始化班级下拉框,具体函数代码与说明如下:
ddlb_2.reset(); //清除班级下拉框中的内容
String StrClass,strN //班级、专业
strN=ddlb_1.text //取得专业
//定义一个根据专业提取班级的游标
declare myCursor cursor for
SELECT t_class.classname
FROM t_class, t_speciality
WHERE ( t_speciality.specialityid = t_class.specialityid and specialityname=:strN);
open myCursor; //打开游标
fetch myCursor into :StrClass; //提取数据
//初始化班级下拉框
do while sqlca.sqlcode=0
ddlb_2.addItem(StrClass) //填充班级下拉框
fetch myCursor into :StrClass;
loop
close myCursor; //关闭游标
3、学生信息中的rowFocusChanged事件,根据所选学生的变化,成绩信息也随之变化,具体函数代码与说明如下:
stuid = this.object.data[currentRow, 1] //取得学生学号
//更新学生成绩信息
dw_2.SetTransObject(SQLCA)
IF dw_2.Retrieve(stuid) = -1 THEN //更新学生信息的检索参数stuid。
MessageBox("更新","更新失败!")
END IF

以上内容只是毕业设计作品的部分资料介绍,如果了解更多详情请联系客服QQ:57510459
购买帮助>>
Tags:
作者:佚名评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论