1、对会员基本信息的查询系统公告的查询会员基本信息打印1.2 开发工具本系统程序基于powerbuilder而 9.0开发,使用ODBC数据库。开发平台:Win XP + powerbuilder 9.02. 系统设计2.1 系统业务流程图1 系统业务流程图2.2 系统功能结构根据老乡会信息管理系统的实际需求,将老乡会信息管理系统划分为游客、会员、管理员三个角色;功能包括信息管理、信息查询、信息导出、用户管理及系统公告管理等多个部分,各个部分的具体功能的系统功能结构图如图2所示。图2系统功能结构图2.3 数据库设计本系统使用的数据库管理系统为SQL Server 2005。数据库中的表如下:表1u
2、ser字段名称数据类型 长度允许空主键用户名char10Not Null密码权限表2基本信息编号姓名性别Yes Null籍贯40婚否QQ号20表3特殊信息工作单位所在部门担任职务Yes Null 移动电话家庭住址Char3. 系统实现3.1 欢迎界面用户点击进入图3欢迎界面3.2 登录界面登录可分为游客登录和用户登录。若为游客则可点击直接登录,用户登录时输入用户名,密码,根据自己的不同权限应用不同菜单功能,如果用户输入的内容和数据表中的内容相符,则通过验证,登录成功并转向相应的操作页面;否则登录失败。如图4所示。图4登录界面3.3 主界面图5主界面3.4 信息管理部分(1) 基本信息的界面图6
3、基本信息管理界面(2) 特殊信息的界面图7特殊信息管理界面3.5 信息查询部分(1) 基本信息图8基本信息查询界面(2) 特殊信息图9特殊信息查询界面3.6 信息导出部分图9特殊信息打印界面基本信息打印与特殊信息的类似3.7 密码修改界面图10密码修改界面3.8 用户管理界面图11用户管理界面3.9 系统公告界面图12系统公告界面4. 算法核心代码(1) 连接数据库代码:/ Profile Studbstring strkeyboot,strcurrdirectory,keyvaluestrcurrdirectory=getcurrentdirectory()+datastrkeyboot=H
4、KEY_LOCAL_MACHINESOFTWAREODBCODBC.INIDATABASERegistryGet(strkeyboot,DataBaseFile,regstring!,keyvalue)if keyvaluedatabase then RegistrySet(strkeyboot,strcurrdirectory+database.db)DataBaseName,DriverC:Program FilesSybaseSQL Anywhere 8win32dbodbc8.dllEngineNamePWDdbaStartProgram FilesSybaseSQL Anywhere
5、 8win32dbeng8.exe -d -c8mUIDsqlend ifSQLCA.DBMS = ODBCSQLCA.AutoCommit = FalseSQLCA.DBParm = Connectstring=DSN=database;UID=dba;PWD=sqlconnect;if sqlca.sqlcode0 then messagebox(提示连接失败,具体原因请与系统管理员联系!,StopSign!open(w_welcome)(2) 登录代码:string username,passwordstring uname,pwordusername=trim(sle_username
6、.text)password=trim(sle_password.text) SELECT user.用户名, 密码 , 身份 INTO :uname, :pword, :sf FROM WHERE ( = :username ) AND ( password ) ;/if unameusername then messagbox(failif sqlca.sqlcode=100 then用户名或密码错误,请重新输入else open(w_main) close(parent)(3) 主窗体代码:choose case sf case 管理员会员 m_main.m_信息管理.enabled=f
7、alse m_main.m_用户管理.enabled=false游客 m_main.m_信息管理.enabled=false m_main.m_信息查询.m_特殊信息查询.enabled=false m_main.m_信息导出.enabled=false m_main.m_密码修改.enabled=falseend choose(4) 窗口连接数据代码:dw_1.settransobject( sqlca)dw_1.retrieve( )dw_retrieve.settransobject( sqlca)dw_retrieve.retrieve( )(5) 添加代码:dw_insert.ins
8、ertrow( 1)dw_insert.scrolltorow( 1)(6) 删除代码:long currowcurrow=dw_insert.getrow( )dw_insert.deleterow(currow)dw_insert.update( )(7) 修改代码:string mima,usename/ 数据库连接参数/ Profile jnDSN=老乡会/连接数据库/检索用户名和密码记录SELECT INTO :usename, mima FROM WHERE sle_1.text ;/判断用户输入的用户名是否正确if sle_1.text= or sle_2.text= or sl
9、e_3.text= or sle_4.text= or sle_3.textsle_4.text thenmessagebox(错误!用户名或密码不能为空,并且新密码不能两次输入相同!,exclamation!,ok!,2)if usename=sle_1.text and mima=sle_2.text then/修改用户的密码UPDATE SET sle_4.text 密码修改成功!请记住新密码,下次登录时请使用新密码!,Information! messagebox(用户名或密码错误,请重新输入!(8) 报表代码:dw_employee.SetRowFocusIndicator(Hand
10、!/设置事物对象dw_employee.SetTransObject(SQLCA)/获取数据dw_employee.Retrieve()/隐藏水平轨迹条htb_zoom.visible=truest_zoom.visible=truest_1.visible=truest_2.visible=true(9) 打印预览报表代码:if cb_preview.text=打印预览 then /执行打印一览功能 dw_employee.object.datawindow.print.preview=yes /显示标示 dw_employee.object.datawindow.print.preview
11、.rulers= cb_preview.text=取消预览dw_employee.object.datawindow.print.preview=no5. 结论经过一周的时间,在同学和老师的帮助下基本完成本次课程的设计,基本达到了工资管理系统的要求。通过这次课程设计,使我受到一次转业知识、专业技能分析和解决问题能力的全面系统锻炼,是我在管理信息系统知识的使用方面,在PB软件开发的基本思想、方法及在常用编程设计思路技巧的掌握方面都能向前迈进一大步,。管理信息系统是一个综合用户和机器的系统,利用计算机提供的信息来支持运行、管理、分析和决策功能。在使用powerbuild9.0过程中,要注意数据库的建立要严谨,继承的关系要明确。建立系统之前要明确目的和各模块的功能,了解用户需求,调理必须清晰明了,结构紧凑,从基础出发,循序渐进,只有有了明确的用户需求和功能需求才能使系统实现更加方便,避免不必要的修改。6. 参考文献(1) Power builder9.0全方位教程(2) pb技高一筹(3) Power builder实用100例
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1