建筑工程管理计算机与信息工程学院规范化课程

上传人:蜀歌 文档编号:145862584 上传时间:2020-09-24 格式:PDF 页数:57 大小:643.69KB
返回 下载 相关 举报
建筑工程管理计算机与信息工程学院规范化课程_第1页
第1页 / 共57页
建筑工程管理计算机与信息工程学院规范化课程_第2页
第2页 / 共57页
建筑工程管理计算机与信息工程学院规范化课程_第3页
第3页 / 共57页
建筑工程管理计算机与信息工程学院规范化课程_第4页
第4页 / 共57页
建筑工程管理计算机与信息工程学院规范化课程_第5页
第5页 / 共57页
点击查看更多>>
资源描述

《建筑工程管理计算机与信息工程学院规范化课程》由会员分享,可在线阅读,更多相关《建筑工程管理计算机与信息工程学院规范化课程(57页珍藏版)》请在金锄头文库上搜索。

1、(建筑工程管理)计算 机与信息工程学院规 范化课程 (建筑工程管理)计算 机与信息工程学院规 范化课程 (建筑工程管理) 计算 机与信息工程学院规 范化课程 (建筑工程管理) 计算 机与信息工程学院规 范化课程 计算机与信息工程学院规范化 课程 计算机与信息工程学院规范化 课程 大型数据库大型数据库 案例案例 丽水学院计算机与信息工程学院丽水学院计算机与信息工程学院 周建东周建东 2007 年 11 月 目录 案例一:项目管理信息系 统.1 案例一:项目管理信息系 统.1 案例二:微机租赁管理系 统.18 案例二:微机租赁管理系 统.18 案 例 三 : 丽 水 学 院 刷 卡 考 勤 系 统

2、.49 案 例 三 : 丽 水 学 院 刷 卡 考 勤 系 统.49 案例一:项目管理信息系统案例一:项目管理信息系统 本例是一个简化的“项目管理信息系统” ,以项目信息(项目编码、项 目名称、 开发经费、 应用情况和参加人员) 以及项目开发人员自身的信息 (编 码、姓名、性别、出生年月、职称、部门)为主线,以部门表等为辅表,实 现了项目和人员信息的录入、查询和管理等功能,展示了用 PowerBuilder 开发系统的方法和技巧。 本系统的主要功能包括以下几部分: 一、创建应用一、创建应用 PowerBuilder8.0 的应用程序是以工作区文件、目标文件、库文件的形 式保存的,因此创建这些文

3、件是编写应用程序的第一步。 1创建应用的步骤如下:1创建应用的步骤如下: 在 Windows 资源管理器中为应用新建一个目录,如 D:Project。此目 录用于保存本系统的工作区文件、 目标文件、 应用库文件和数据库文件。 启动 PowerBuilder8.0,单击 Power 工具栏的新建按钮,打开。 在 New 对话框中选择图标,打开 New 对话框。 选择保存 Workspace 的目录(D:Project) ,并在文件名文本框中输 入 Project,然后单击“保存”按钮,回到 PowerBuilder 主界面。 单击 Power 工具栏中的新建按钮,打开 New 对话框,选择 Ta

4、rget 标 签页,并双击Application 图标,打开 SpecifyNewApplicationandLibrary 对话框。在该对话框中要指定应用 对象名及所用库、目标,输入应用对象名后,按 Tab 键,会以默认方式 自动为应用对象指定 Library 和 Target,如下图所示: 单击 Finish 按钮就建立了一个空白的应用对象 project,可以在 PowerBuilder 的 SystemTree 中看到。 2应用的 Open 事件脚本:2应用的 Open 事件脚本: =ODBC =False =Connectstring=DSN=Project CONNECTUSING

5、SQLCA; 0THEN Beep(1) MessageBox(连接错误,) HaltClose ELSE /=True =框架窗口工具条 =当前窗口工具条 =左边,上边,右边,下边,浮动,显示文字,图标提示 OPEN(w_login) ENDIF 上述脚本的作用主要是建立与数据库的连接,然后打开登录窗口。 二、创建数据库二、创建数据库 1数据库设计1数据库设计 本 系 统 采 用 了 PowerBuilder8.0 自 带 的 一 个 小 型 关 系 数 据 库 AdaptiveServerAnywhere7.0。 在 PowerBuilder8.0 集成环境下创建数据库的步骤如下: 单击

6、Power 工具栏的 DBProfile 按钮,打开 DatabaseProfiles 对话 框。 在 DatabaseProfiles 对话框中展开 ODBODBC 列表项,在展开其下面 的 Utilities 列 表 项 。 双 击 CreateASADatabase 项 , 系 统 打 开 CreateASADatabase 对话框。 在 CreateASADatabase对话框中输入 DatabaseName(如 D:Project), 其余均用默认值。单击 OK 按钮,系统开始创建数据库。 PowerBuilder 在创建数据库后,自动创建了 ODBC 数据源 Project 和描

7、述文件 Project,并自动连接上数据库。如果用 SybaseCentral 创建 ASA 数 据库,还需要手工创建 ODBC 数据源和描述文件。 2创建数据表2创建数据表 本数据库包含 5 个数据表: 部门信息表(department) 列名列标识数 据 类 型 宽度小数空值主键 部 门 编 码 dept_idchar20NY 部 门 名 称 dept_namechar200NN 人员信息表(personnel) 列名列标识数据类型宽度小数空值主键 编码p_idchar40NY 姓名namechar100NN 性别sexchar10YN 项目信息表(project) 列名列标识数据类型宽度

8、小数空值主键 项目编码pro_idchar40NY 项目名称pro_namechar400NN outlaydouble80YN 项目参与人员表(member) 列名列标识数据类型宽度小数空值主键 项目编码pro_idchar40NY 编码p_idchar40NY 系统用户信息表(users) 列名列标识数据类型宽度小数空值主键 用户编码user_idchar100NY 用户姓名user_namechar100NN 密码passwdchar60YN 创建表的外键和索引创建表的外键和索引 以创建表 personnel 的外键为例,介绍创建外键的步骤。 在数据库画板的 Object 视图中,找到并

9、双击打开 personnel 表,右 击 ForeignKeys,打开弹出式菜单。 在弹出式菜单中选择 NewForeignKey 菜单项,进入 ForeignKey 视图。 在 Gereral 标签页中设置外键名称和本表外键对应字段;在 PrimaryKey 标 签页中设置外键的对应表;在 Rules 标签页中设置外键连接规则。其创建的 外键为: fk_dept_id,外键字段为 p_id,对应 department 表的主键 dept_id 设置完成后,单击工具栏上的 Save 按钮,保存所创建的外键。 表 member 的两个外键,分别为: fk_member_proid:外键字段为 p

10、ro_id,对应 project 表的主键 pro_id fk_member_pid:外键字段为 p_id,对应表 personnel 的主键 p_id 3创建编辑风格3创建编辑风格 在数据库画板中创建编辑风格,并设定表中某列的编辑风格,这样在日 后生成数据窗口时,该列将使用在数据画板中定义的编辑风格,从而可以节 省设计的时间和工作量。 本实例需要创建三个编辑风格, 分别命名为 es_department、 es_project 和 es_personnel,分别用来显示部门数据、项目数据和开发人员数据。这三 个编辑风格均使用下拉数据窗口样式,因此,在创建编辑风格之前,首先应 创建三个数据窗口

11、对象。 创建 dddw_department 数据窗口对象 该数据窗口的表现风格为 Tabular,数据源为 department 表的所有列。在数 据窗口画板下,把 dept_id 设为不可见。该数据窗口的布局如图所示。 下面以创建 es_department 编辑风格为例,介绍具体操作步骤为: 在数据库画板下,打开扩展属性(ExtendedAttributes)视图,右击 EditStyles 项目,显示弹出式菜单。 在弹出式菜单中选择 New 菜单项,打开 EditStyle 对话框。 按照下图所示,输入各有关参数。 输入完毕,单击 OK 按钮,返回数据库画板。 三、创建用户对象、全局函

12、数和祖先窗口三、创建用户对象、全局函数和祖先窗口 为了减轻应用程序设计的工作量,以及使应用程序更容易维护,在进行 系统开发时往往需要创建一些用户对象。本实例需要创建多个命令按钮用户 对象和两个数据窗口用户对象,还需要创建一个用来对用户口令加密的全局 函数,创建一个作为所有表单(Sheet)祖先的窗口。 1创建命令按钮用户对象1创建命令按钮用户对象 为应用中常用的命令按钮创建用户对象,然后根据需要把这些按钮用户 对象添加到窗口中,可以使应用界面保持一致,也便于日后维护。本实例需 要创建 8 个按钮用户对象。这 8 个按钮用户对象的名称、属性和功能如下表 所示。 名称Text 属性值功能 uo_o

13、k确定( MessageBox(提示,数据已存盘) ELSE ROLLBACKUSINGSQLCA; MessageBox(提示,数据无法存盘,Exclamation!) ENDIF 该事件用来更新并提交数据窗口的当前记录。 编写 dberror 事件的脚本。 MessageBox(数据库错误,错误代码:+string(sqldbcode)+ IFf_encrypt(ls_pw)gs_pwdTHEN IFii_time=3THEN MessageBox(登录错误,对不起,你无权使用本系统!,Exclamation!) HALTCLOSE ELSE ii_time+ MessageBox(登录错

14、误,请输入正确的用户名或密码,Exclamation!) ENDIF sle_() ELSE IFls_type=0THEN/管理用户 gb_manager=TRUE ENDIF gs_userid=ls_name OPEN(w_main) Close(Parent) ENDIF ENDIF 上面的语句主要用来实现密码的验证功能,如果密码正确,则允许进入 系统,同时把用户名保存到全局变量中;如果密码错误,则提示重新输入, 当三次输入错误的密码后,系统强行关闭。 在这段程序中使用了 SQL 嵌入语句“SELECT”, 保存窗口,窗口名字为 w_login。 关于用户登录窗口的改进关于用户登录窗口

15、的改进 如下图所示,将用户名文本框改为下拉列表框,用户可从下拉列表框中 选择用户名而不需要自己输入用户名。 上述操作员登录窗口的控件列表如下: 控件类型控件名说明 窗口W_login响应类型窗口 下拉列表框Ddlb_1用于显示操作员列表供选择 单行编辑框Sle_1供用户输入口令 按钮Cb_1用于输入完毕后的确认 按钮Cb_2用于取消输入,推出登录 图片P_1用于显示窗口左面的图片 在登录窗口的 Open 事件中,取得操作员的用户名供登录者选择,并置 入默认的操作员。脚本如下: Stringls_opid/声明操作员姓名变量 Stringls_lastid/声明上次登录操作员姓名变量 /1、获取

16、操作员信息 SetPointer(HourGlass!)/把鼠标指针改为漏斗状 DECLAREmy_cursorDYNAMICCURSORFORSQLSA;/定义动态游标 PREPARESQLSAFROMSELECTnameFROMoperatorsORDERBYname; OPENDYNAMICmy_cursor;/打开动态游标 FETCHmy_cursorINTO:ls_opid;/从数据库中取数据 =0/如果取到数据 ddlb_1.AddItem(ls_opid)/把取得的操作员名添加到下拉列表框 FETCHmy_cursorINTO:ls_opid;/取下一数据 Loop/循环 CLOSEmy_cursor;/关闭动态游标 /2、设置初始操作员 IFddlb_1.TotalItems()0THEN/如果操作员列表存在列表项 ls_lastid=ProfileString(,操作员信息,上次登录操作员姓名 ,)/从 INI 文件中取得上次登录的操作员 IFls_lastid=THEN/如果未取到 ddlb_1.Select

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 经营企划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号