

免费预览已结束,剩余37页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
扬州电大江都分校计算机科学与技术专业毕业设计论文 设计 : 戴震龙 第一章 绪 论伴随着计算机软硬件技术的发展,计算机的技术和应用获得了突飞猛进的发展,计算机已经在大致如下的领域得到广泛的应用:1、科学计算:如在天文学、生物学、空气动力学、核物理学、地质勘探、新材料的研制和天气预报等领域中。2、数据处理:与科学计算不同,数据处理涉及的数据量大,但计算方法较简单。3、过程控制:指由计算机通过传感器及时采集数据,根据采集的数据和预先设定的要求,由计算机处理后,产生控制信号并通过控制系统对受控对象进行控制或调整。4、计算机模拟:用计算机程序及相应的设备代替或模拟实物或实际环境,用于实验、测试、特殊训练等。5、计算机辅助系统:包括计算机辅助设计,计算机辅助制造、计算机辅助教育等。6、人工智能:指用计算机模拟人的思维和行为,包括推理,学习,模拟人的感知等。现在在机器人、专家系统、虚拟现实等方面已经获得了实际的应用。7、办公自动化:可分为事务型、管理型和决策型三个层次。事务型主要处理日常的办公事务。管理型办公自动化系统又称为管理信息系统。决策型办公自动化系统是在上述两个系统的基础上增加决策支持系统构成的。随着互联网、远程会议系统、多媒体技术的发展,同计算机网络连接起来的新型办公室不久将展现在人们面前。8、信息高速公路。9、电子商务10、新闻出版11、音乐、绘画和影视娱乐。随着生产社会化的扩大,科学技术的进步,人类知识总量呈爆炸式的增长,各行各业的管理工作越来越离不开信息,信息已被列为与物质、能源相并列的人类社会发展的三大资源之一。随着以计算机技术、通信技术、网络技术为代表的现代信息技术的飞跃发展,人类正在从工业时代向信息时代迈进,信息处理已经成为当今世界上一项重要的社会活动。由上可知,信息工作的迅速增长,使计算机的应用范围越来越广,应用的功能也由一般的数据处理发展到支持决策。这就导致了管理信息系统的产生。管理信息系统是一个集计算机技术、信息技术、数据库技术、现代管理理论为一体的综合性系统。建立这样一个复杂的系统需要付出昂贵的代价的,因为它属于劳动密集型、智力密集型、资金技术密集型的项目。所以我们有必要对管理信息系统有一个深入的了解,这是建立比较实用的应用系统的前提所在。 第二章 开发方法的选择2.1软件工程方法概述建立一个信息系统,是一项复杂的软件工程的实施。近30年来,软件工程发展成为新科学,至今已经成为软件产业的重要支柱。它以计算机软件为工程对象,研究如何对其进行定义、开发和维护。多年来被人们沿用的手工作坊工的软件开发方法,在软件产品的开发效率和产品质量、成本等方面都无法满足需求。用这种方法所开发的软件产品质量低劣、可靠性差、用户难以使用、开发成本太高等问题,给软件项目带来严重后果。不少单位花费了大量资金,却并未取得预期的效果。2.2结构化生命周期法简介 结构化生命周期法是一种传统的管理信息系统开发方法。其基本思路是把整个系统开发过程分成若干阶段,每个阶段进行若干活动,每项活动应用一系列标准、规范、方法和技术完成一个或者多个任务,形成符合给定规范的产品。结构化生命周期法的主要原则,归纳起来有以下四条:(一) 用户参与的原则(二) 先逻辑后物理的原则(三) 自顶向下的原则(四) 工作成果描述标准化的原则其开发大致分为以下四个阶段:(一) 系统规划:主要目标是制订系统的长期发展方案,决定系统在整个生命周期内的发展方向、规模和发展进程。(二) 系统开发1. 系统分析 系统初步调查 系统的可行性研究 现行系统的详细调查 新系统逻辑方案的提出2. 系统设计 系统总体结构设计 系统总体功能设计 系统总体物理结构设计 系统详细设计 数据库设计 代码设计 输入输出设计 处理过程设计3. 系统实现 程序设计 系统测试系统转换(三) 系统运行及维护(四) 系统评价2.3原型法简介原型法的基本思路是用户与系统分析、设计人员合作,根据用户提出的最基本的问题和想法,先很快建立一个应用软件的骨架,作为应用开发的实验模型,这个实验模型叫做系统原型。用户先运行这个原型系统,熟悉它,使用它,受到启发并取得经验,然后对系统的目标和功能提出精确、具体的要求,在对系统的需求最后决定后,再用传统的方法建设系统,通常原型系统的部分程序可以在后来的系统建设中直接采用。该方法是传统方法和用户开发相结合的方法。建立一个管理信息系统的原型可分四步进行:(1)明确用户基本信息需求(2)建立初始的原型系统(3)使用原型系统,进一步明确用户需求(4)修改和完善原型系统快速原型法的开发过程可分为快速分析、构造模型、运行模型、评价模型、改进模型等。2.4本系统开发方法选择基于上述两种开发方法的优劣,本系统利用软件工程化思想和方法,总体上是采用结构化生命周期法从上而下地进行系统分析和设计的,但系统实现等步骤采用了自下而上的快速原型法。第三章 系统规划系统规划是管理信息系统生命周期的第一阶段,这一阶段的主要目标是制订系统的长期发展方案,决定系统在整个生命周期内的发展方向、规模和发展进程。这一阶段对mis系统的成败,对整个组织信息化的进展具有重要意义,以计算机为主要手段的管理信息系统是使用单位的管理系统的一个组成部分。它的建立应该服从使用单位的整体目标和管理决策活动的需要。为此,这个阶段的主要任务是了解使用单位的战略目标以及内外现实环境,确定系统的总目标和主要功能,拟定总体方案,并从技术、经济、社会条件等方面论证技术方案的可行性,制定投资规划和开发计划,编写可行性论证报告。系统初步调查和可行性分析的工作步骤如图31所示 (使用单位要求) 组织队伍拟定计划 单位情况调查 现行信息系统调查 确定新系统的目标和功能 提出技术方案明确新系统对单 拟定新系统 效益分析位变化的影响 开发计划 可行性论证 不可行 修改 (评审) 不可行 修改(系统分析)图31 可行性论证的工作步骤3.1 系统的初步调查在正式立项之前必须进行可行性分析,而可行性分析的基础是对系统的初步调查。初步调查是在使用单位的高层进行的,系统分析员站在高层观察使用单位的现状,分析现有系统的运行情况。初步调查主要由两部分组成:一般调查和信息需求初步调查。前者包括了解使用单位当前的信息流程,明确使用单位改造的需求以及确定系统目标和主要功能;后者是初步调查的主要内容,调查组织系统的工作职责及活动和各种职能部门所要处理的数据,还需了解环境信息,包括内部环境和外部环境信息。本人对学生成绩管理活动有了一定的了解,本系统初步调查采用的主要方式是与学校的有关负责教学的领导及部分一线教师进行交流,了解他们的需求,把握第一手资料。此外我还到其它学校找有关同行了解他们学校的情况,经过初步调查,当前吴桥中学学生成绩处理情况介绍如下:吴桥中学是一所完全中学,现有在校学生1100人,共15个教学班,分为初中部(9个班)、高中部(6个班)。初二年级新开设物理课程,初三年级新开设化学课程,高一新开设信息技术课,高二文理分科,每次考试,文科班和理科班分开统计,高三与高二类同。所以使用环境复杂,而且具有代表性。现在学生成绩处理采用在几年前用vfp3.0编写的学生成绩管理系统,该系统统计打印结果能够满足学校需求,对总分以及单科的成绩分析很详细,且打印的报表样式优美。本系统能够及时处理出各次期中、期末以及毕业班每学年的8次统考,尽管每个年级人数都在一千人左右,但只要5个小时左右就能处理完毕一个年级的学生成绩,使用效果良好。然而此系统一个不足之处就是学生成绩库中的字段依次为“学号”、“姓名”、“班级号”、“考试代号”、“语文”、“数学”、“英语”、“物理”、“化学”、“政治”、“历史”、“地理”、“生物”、“总分”、“平均”、“班级名次”、“年级名次”、“班名升降”、“年名升降”等,大家一看就明白,如果出现新的考试科目,要么需要重新编程,要么就只有用学生成绩库里面列出的科目代替,所以它的通用性、适应性较弱,当2001年实行3x高考,增加了文科综合、理科综合科目后,此系统就处于更新换代的境地。再来看一下学生成绩管理系统的使用环境,吴桥中学中学实行校长负责制,下设一名分管教学的副校长,副校长直接领导教导处,学校设有微机管理室,平时负责各种数据处理,辅助进行教学管理。微机管理室直接受教导处领导。每次年级考试举行前,各年级组长到教导处领取学生成绩填写单(即各班学生名单,每学期打印一次),考试结束后在规定的时间内将填好的学生成绩交给教导处,教导处送给微机管理室进行成绩处理,微机室在规定的时间内处理完毕学生成绩,将打印结果送给文印室,文印室复印完毕,送给教导处,教导处再将处理结果分发给各班班主任、有关校领导、档案室等处。该学生成绩管理系统的组织机构设置如图32所示学校现在已经实现工资、分班、排课、学籍管理、成绩处理、人事管理的计算机化,全部由微机管理室来进行。而且学生成绩的管理已经初步规范化,学校领导也非常重视这一工作,为了以后更好地开展这项工作,非常支持新系统的开发工作。分管教学的副校长 教导处文印室微机管理室各年级组各班级 图32本系统的组织机构设置图3.2 系统的可行性调查 可行性分析包括两部分内容:分析建立新的管理信息系统的必要性和可能性。分析建立信息系统的必要性时要注意用户提出的理由是否充分和合理;分析建立信息系统的可能性主要包括经济可行性、技术可行性和社会可行性。经济可行性研究的目的是使新系统能达到以最小的开发成本取得最佳的经济效益。需要作投资估算,对开发中所需人员、硬软件支持以及其它费用进行估算,并对系统投入使用后带来的经济效益进行估计。技术可行性研究就是弄清现有技术条件能否顺利完成开发工作,硬软件配置能否满足开发的需要等等。社会可行性研究是指新系统在投入使用后,对社会可能带来的影响进行分析。可行性分析的最后成果是写出可行性分析报告。可行性分析报告包括如下内容:使用单位的战略目标,新系统的总体目标及主要功能;拟定新系统的总体方案;从技术、经济、社会等方面论证技术方案的可行性;制定投资规划和开发计划。在系统初步调查的基础上,明确了使用单位现行管理系统存在的主要问题和建立管理信息系统的初步设想,进一步对系统目标、范围等因素进行分析研究。3.2.1使用单位的战略目标吴桥中学现在是一所县级中学,学校在提高教师队伍素质、狠抓教学质量的同时,非常重视现代化教学管理手段的应用,近几年在这方面投入很大。使用微机及学生成绩管理系统进行学生成绩处理,能够及时准确地对学生的成绩进行统计分析。一方面可使校领导全面及时地了解各位教师的教学效果,另一方面,又能帮助各位班主任及任课教师了解各位学生的学习效果,减轻每次考试统计总分、排名次的工作量,提高效率及准确度。现有的学生成绩管理系统尽管已经满足了当前学生成绩处理的要求,但为了适应未来课程调整的变化,所以非常希望能开发出一个适应性、通用性强的学生成绩管理系统。3.2.2教务管理的目标学校教务管理信息系统的目标是:按照管理信息系统的原理和方法,采用先进的计算机信息技术和手段,充分利用现有微机设备,加强教学管理活动中的各种信息资源的管理和应用,提高学校教务管理的现代化水平,实现学籍管理、学生成绩管理、新生分班、排课表、人事管理、工资管理等的微机化。在为学校教学管理活动提供有关信息服务的基础上,提供教学管理决策支持功能,为实现教学管理的科学化、信息化进行技术准备。 3.2.3学生成绩管理系统的范围和边界学生成绩管理信息系统的范围和边界是:为学校提供各次期中、期末考试及毕业班的统考中有关学生成绩的各种信息,涵盖学生成绩处理的各项工作,涉及成绩管理的各项功能。系统能够对班级的单科、总分成绩,年级的单科、总分成绩进行统计分析。系统的数据来源是根据教导处送来的有关数据(学生名单、学生成绩等),然后由微机管理室工作人员负责录入。系统范围不涉及数据实时采集功能,也不涉及远程信息传输功能。此外,本系统暂时不为学籍管理系统提供有关信息,包括各次考试分数、学生姓名等信息,以后将逐步完善本系统和学籍管理系统,使两者能共享数据。 第四章 系统设计这个阶段的主要目标是将系统分析阶段所提出的反映了用户信息要求的系统逻辑方案转换成可以实施的基于计算机的物理方案。系统设计阶段的主要活动包括:系统总体结构设计。其中包括:系统总体布局方案的确定软件系统总体结构的设计计算机硬件方案的选择和设计数据存储的总体设计功能结构图设计信息系统流程图设计详细设计数据库设计代码设计输出设计输入设计处理过程设计系统实施进度与计划的确定。“系统设计说明书”的编写。本论文主要择其重要环节进行阐述。4.1 系统总体结构设计 4.1.1 系统的总体布局方案 系统的总体布局是指系统的硬软件资源以及数据资源在空间上的分布特征。结合吴桥中学实际情况(吴桥中学的使用环境具有典型性,代表了大多数学校的使用情况),采用以下总体布局方案:1、 本系统的功能比较简单,并且规模不大,采用单机系统2、 从信息资源管理的集中程度来看,采用集中式系统3、 从信息处理的方式来看,采用批处理系统4.1.2软件系统总体结构设计:软件系统总体结构设计的主要任务就是将整个系统合理的划分成各个功能模块,正确处理模块之间与模块内部的联系及它们之间的调用关系和数据联系,定义各模块的内部结构等,本系统的软件总体结构按分解协调的原则,信息隐蔽抽象的原则,自顶向下的原则,一致性原则,面向用户的原则进行设计。4.1.3计算机硬件方案的选择和设计本系统采用单机单用户操作方式,基本配置如下:机型:奔腾四代1.6g以上硬盘:40g以上(至少需要250m自由空间,以运行操作系统和本系统)软驱:3.5/1.44mb内存:256m以上打印机:一台,品牌不限。4.1.4数据存储的总体设计 按用途分类可把本系统文件分成以下几种:(1) 主文件:系统中的主文件是最重要的共享文件,主要存放具有固定值属性的数据。它需要长期保存,并不断更新。如学生信息文件、班级信息文件、用户信息文件、课程文件、考试信息文件。(2) 处理文件:处理文件包含下一次更新文件所需要的全部记录,本系统中的处理文件如学生成绩文件(3) 工作文件:暂时存放数据的文件。如存放学生成绩排序结果的临时文件,存放单科年级分析结果的临时文件,存放年级总分分析结果的临时文件,这些文件使用后里面的记录立即被清除。4.1.5系统总体功能结构设计通过对系统的数据流图进行分析,进一步进行功能分解,直到分解成含义明确,功能单一的功能模块,从而得到系统的功能模块结构图,即系统的hipo图。本系统的hipo图如图41(见下页)所示。学生成绩管理系统用户登录进行口令校验统计打印数据查询 其它数据维护数据录入学生信息录入学生成绩录入课程信息录入学年度更新考试初始化考试信息录入班级课程历次考试信息查询学生信息维护学生成绩维护班级信息维护课程信息维护考试信息维护学生成绩查询学生信息查询打印学生成绩填写单打印年级单科成绩班级学生成绩汇总年级学生成绩汇总年级单科成绩分析打印班级单科成绩关于本软件帮助修改用户及口令年级总分分析班级信息录入 图414.1.6新系统的计算机信息系统流程设计现在对其做一点改进,那就是,为了便于统计分析和输出打印年级总分分析报表、年级单科分析报表,可以先根据课程信息库文件、班级信息库文件、学生成绩库文件、考试信息库文件生成一个临时报表文件,然后再根据这个临时报表库文件进行打印输出,一旦输出打印结束,便将这个临时报表库文件清空。因此,本系统的信息系统流程图如图42所示考试信息库文件学生成绩库文件班级信息库文件课程信息库文件学生信息库文件数据编辑数据编辑数据编辑数据编辑数据编辑考试信息学生成绩单班级信息课程信息各班学生原始名单打印报表数据录入查询维护更新统计分析 图42报表临时库文件第五章 系统实施 系统实施在管理信息系统的生命周期中,要继承此前各阶段的工作,将技术设计转化成为物理实现,是系统建设的实现阶段。因此,系统实施的成果将是系统分析和设计阶段的结晶。系统实施的主要活动: 程序设计 系统测试 系统安装 新旧系统转换5.1程序设计5.1.1 数据库的选择client/server(客户机/服务器)型数据库简介数据库虽然家族庞大,但一般来说可分为两种:文件型数据库和cs型数据库。文件型数据库是基于文件的,数据被按照一定格式储存在磁盘里,使用时由应用程序通过相应的驱动程序甚至直接对数据文件进行读取。dbf(dbase/foxbase/foxpro)数据库就是文件型数据库,这种数据库的访问方式是被动式的,只要了解其文件格式,任何程序都可以直接读取,这就使得它的安全性相当糟糕。使用dbf(dbase/foxbase/foxpro)系列开发工具,可以用它自己的语法开发出应用程序,其中对dbf文件的具体访问操作被封装了,这样才使得大家可以方便地开发应用程序。但是,在蓬勃兴起的网络应用中,文件型数据库更是难有用武之地:效率低下,不支持很多sql命令,不支持视图、触发器、存储过程等高级功能。近二十多年来,网络的普遍使用,使人们提出了客户/服务器(c/s)体系结构。这种结构如图51所示,客户机一般是中低档微机,服务器一般是高档微机或小型机。此种结构的优势在于:可使多人共享服务器资源,协调工作,并且此体系结构的花费要比使用大中型计算机少得多,性能也不差,更加灵活。客户机客户机客户机客户机服务器 图51 c/s体系结构在开发网络计算机系统环境下的数据库应用时,c/s型数据库成为主流是理所当然的事。c/s型数据库非常适合于网络应用,可以同时被多个用户所访问,并赋予不同的用户以不同的安全权限。c/s型数据库支持的数据量要比文件型数据库大得多,还支持分布式的数据库,一般能完善地支持sql语言,非常适于高端应用。c/s型数据库应用程序由两个部分组成:服务器和客户机。服务器指数据库管理系统,用于描述、管理和维护数据库的程序系统,是数据库系统核心组成部分,对数据库进行统一的管理和控制。客户机则将用户的需求送交到服务器,再从服务器返回数据给用户。随着应用复杂性的提高和internet的普及,c/s型数据库也难以满足要求了,于是又出现了三层模型、多层模型,这里不作介绍了。5.1.2 开发工具的选择powerbuilder 7.0简介现在流行的数据库开发工具很多,象delphi,vb,vc+,vfp等,那么为什么本系统要采用powerbuilder 7.0呢?sybase公司推出的pb 7.0是一种可视化的,面向对象的快速应用开发(rad)工具。pb7.0提供了对目前流行的几乎所有的大型数据库和桌面数据库的支持,同时它内置了32位关系型数据库sybase sql anywhere ,可以方便地创建adapter server anywhere本地数据库。pb 7.0还支持多种软硬件平台,它不仅可以跨平台共享程序中的各种对象,还支持应用程序的跨平台开发和分布,极大地减轻了程序员在不同平台上移植程序的工作量。从pb6.5开始,增加了powersite web应用开发技术,成为建立cs和多层分布式应用的一个完整的4gl rad环境。pb 7.0的推出,标志着sybase公司的开发工具的重心已经从桌面转移到跨平台的分布式应用和基于internet的web应用领域。数据窗口(datawindow)有11种显示风格,5种数据源,是人机交互的主要界面。它有两个主要作用:首先通过它可以操作数据库的数据,并对数据进行各种处理,几乎所有的数据库操作都可在其中完成,包括多表更新,复杂的多表数据查询等。其次通过它可以设计数据的输入、输出格式以及数据处理中经常用到的数据图表和多种屏幕显示风格。数据窗口对象是从数据源中获得数据或向数据源中写入数据。掌握pb 7.0这个开发工具的重点也是难点便是全面理解和掌握数据窗口技术,此外还要熟悉powerbuilder的开发环境,掌握使用pb开发软件的一般流程,开发时常用的函数、事件等。这样才能顺利地进行软件的开发。这里只简单地介绍一下应用对象与库及其他对象的关系,如图(52)所示:关于其它技术细节问题,这里就不一一详述了。5.1.3 开发平台的选择 基于上面数据库产品和开发工具的运行要求,考虑到本系统的性能要求,选择了windows 98作为开发、测试和运行平台。5.1.4 各模块程序设计举例一、建立一个新的应用:选择“file”菜单中 “new”菜单项,在弹出的窗口中选择“start wizard”选项卡,再选择其中的“application”图标,然后按提示输入相应的应用名称和路径即可。本应用的名称为“score_manager”。在创建应用的同时,系统提示建立库文件,本系统先建立一个与应用同名的库文件“score_manager.pbl” 。应用对象窗口对象用户对象数据窗口控件菜单库文件它将所有的对象与特定的工程联系起来 图52 一、 创建、连接数据库,创建数据库表:创建、连接数据库以及创建数据库表这里就不一一细说了。这里,新创建了一个名为user.db的用户信息库,存放有用户名和密码。为了判断本系统是否首次运行、运行的次数、连接数据库表,本系统特地建立了名为first.ini的配置文件。文件内容如下:startfirst=1databasedbms=odbcdatabase=userid=databasepassword=logpassword=servername=logid=lock=dbparm=connectstring=dsn=asa 6.0 sample;uid=dba;pwd=sqlprompt=0此文件的进一步应用将在下面介绍。二、 本应用的“open”事件编程:1. 本模块程序框图:如图53所示 2.代码如下:string csinteger rc,syrc=profileint(first.ini,start,first,3) /读取运行次数sy=rc+1cs=string(sy) if rc=1 then /如果系统是首次运行,打开系统注册窗口(转下页)运行次数=66?nn认证通过?进行系统认证ny首次运行?yy打开splash窗口,运行次数加1 图53 (接上页)open(w_test) elseif rc=66 then /如果系统运行了66次,再进行注册 messagebox(注意!,你已经使用了66次了,请注册。)setprofilestring(first.ini,start,first,66)returnelse/如果不是首次运行,打开splash 窗口,并连接数据库 open(w_splash) string ls_startupfile /此变量保存获取数据库信息的文件名/数据库连接信息存储在文件first.ini中 ls_startupfile = first.ini/从文件(pb.ini)中获取数据库连接信息sqlca.dbms = profilestring(ls_startupfile,database,dbms, )sqlca.database=profilestring(ls_startupfile,database,database,) sqlca.userid=profilestring(ls_startupfile,database,userid,)sqlca.dbpass=profilestring(ls_startupfile,database,dbpass, )sqlca.logid = profilestring(ls_startupfile,database,logid, )sqlca.logpass = profilestring(ls_startupfile,database,logpassword, )sqlca.servername = profilestring(ls_startupfile,database,servername, )sqlca.dbparm = profilestring(ls_startupfile,database,dbparm, )/往配置文件中写入新的运行次数setprofilestring(first.ini,start,first,cs)connect; /连接数据库if sqlca.sqlcode0 thenmessagebox(错误,不能连接到数据库)returnend ifend if四、系统认证模块(w_test)当运行此功能时,系统弹出窗口,窗口及各控件的属性设置略。图54该模块的框图如图55所示。y进行系统认证n连接数据库注册数据源认证通过?运行系统登录窗口打开splash窗口,运行次数加1连接上?yn退出图55该模块的代码如下:1w-test 的open事件:/以下代码使窗口居中environment lenv/设置环境变量lenv integer l_screenwidth,l_screenheight,l_rc,l_x=1,l_y=1l_rc=getenvironment(lenv)if l_rc=1 thenl_screenwidth=pixelstounits(lenv.screenwidth,xpixelstounits!)l_screenheight=pixelstounits(lenv.screenheight,ypixelstounits!)l_x=(l_screenwidth/2) - (this.width/2)l_y=(l_screenheight/2) - (this.height/2)this.move(l_x,l_y)end if/由当前系统的秒数和小时数算出一个数字作为序列号,并赋值给sle_1integer yzyz=second(now()*hour(now()sle_1.text=string(yz)2.声明窗口的全局外部函数getcurrentdirectorya(),得出本程序运行的当前路径,此函数属于windows api函数。function ulong getcurrentdirectorya(ulong bufferlen,ref string currentdir)&library kernel32.dll 3.“确定”按钮的click事件代码:int sle3sle3=integer(sle_1.text)*78 + 1216 /算出认证码/比较用户输入结果和认证码是否相同if integer(sle_3.text)sle3 thenmessagebox(对不起!,认证码有误,请重新输入或与软件供应商联系。) else messagebox(注册成功,欢迎使用!)/得出当前程序运行路径 ulong l_buf l_buf=100 string ls_curdir,st,sdrv,sstart,sini ls_curdir=space(l_buf) getcurrentdirectorya(l_buf,ls_curdir) st = ls_curdir+scomana.db sdrv=ls_curdir+dbodbc6.dllsstart=ls_curdir+dbeng6.exe -c 8m/将数据源名称“scomana”注册到hkey_current_usersoftwareodbcodbc.iniodbc data source下registryset(hkey_current_usersoftwareodbcodbc.iniodbc datasources,scomana,regstring!,adaptive server anywhere 6.0)registryset(hkey_current_usersoftwareodbcodbc.iniodbcdata sources,asa 6.0 sample,regstring!,adaptive server anywhere 6.0) /新增以该数据源名称scomana为键名的子键registryset(hkey_current_usersoftwareodbcodbc.iniscomana,regstring!,) /创建连接到数据源所需要的参数registryset(hkey_current_usersoftwareodbcodbc.iniscomana,autostop,regstring!,yes)registryset(hkey_current_usersoftwareodbcodbc.iniscomana,databasefile,regstring!,st)registryset(hkey_current_usersoftwareodbcodbc.iniscomana,databasename,regstring!,scomana) registryset(hkey_current_usersoftwareodbcodbc.iniscomana,driver,regstring!,dbodbc6.dll)registryset(hkey_current_usersoftwareodbcodbc.iniscomana,pwd,regstring!,sql) registryset(hkey_current_usersoftwareodbcodbc.iniscomana,start,regstring!,dbeng6 -q)registryset(hkey_current_usersoftwareodbcodbc.iniscomana,uid,regstring!,dba) /注册asa 6.0 sampleregistryset(hkey_current_usersoftwareodbcodbc.iniasa 6.0 sample,regstring!,) /创建连接到数据源所需要的参数registryset(hkey_current_usersoftwareodbcodbc.iniasa 6.0 sample,autostop,regstring!,yes)registryset(hkey_current_usersoftwareodbcodbc.iniasa 6.0 sample,databasefile,regstring!,st)registryset(hkey_current_usersoftwareodbcodbc.iniasa 6.0 sample,driver,regstring!,sdrv)registryset(hkey_current_usersoftwareodbcodbc.iniasa 6.0 sample,pwd,regstring!,sql)registryset(hkey_current_usersoftwareodbcodbc.iniasa 6.0 sample,start,regstring!,sstart)registryset(hkey_current_usersoftwareodbcodbc.iniasa 6.0 sample,uid,regstring!,dba)registryset(hkey_current_usersoftwareodbcodbc.iniasa 6.0 sample,description,regstring!,adaptive server anywhere sample database)registryset(hkey_current_usersoftwareodbcodbc.iniasa 6.0 sample,integrated,regstring!,no)registryset(hkey_current_usersoftwareodbcodbc.iniasa 6.0 sample,debug,regstring!,no)registryset(hkey_current_usersoftwareodbcodbc.iniasa 6.0 sample,disablemultirowfetch,regstring!,no)setprofilestring(first.ini,start,first,2)string ls_startupfile /此变量保存获取数据库信息的文件名/数据库连接信息存储在文件first.ini中ls_startupfile = ls_curdir+first.ini/从文件(pb.ini)中获取数据库连接信息sqlca.dbms = profilestring(ls_startupfile,database,dbms, )sqlca.database = profilestring(ls_startupfile,database,database, ) sqlca.userid = profilestring(ls_startupfile,database,userid, )sqlca.dbpass = profilestring(ls_startupfile,database,dbpass, )sqlca.logid = profilestring(ls_startupfile,database,logid, )sqlca.logpass = profilestring(ls_startupfile,database,logpassword, )sqlca.servername = profilestring(ls_startupfile,database,servername, )sqlca.dbparm = profilestring(ls_startupfile,database,dbparm, )/连接数据库 connect using sqlca ; if sqlca.sqlcode0 thenmessagebox(错误,不能连接到数据库)return end if open(w_splash)end if4“退出”按钮的click事件:setprofilestring(first.ini,start,first,1)/运行次数置1close(parent)五、创建splash窗口(w_splash)现在的商业化软件在进入程序主界面以前都有一个显示窗口,用来显示一些信息,例如进入powerbuilder时的暗红色窗口就是这种窗口,它的作用是避免因应用程序初始化工作占用时间太长而让用户感到烦燥。本系统的splash窗口采用名为back.jpg的图片作背景,上面写有一些关于本软件的信息,在屏幕上停留8秒钟之后,自动消失。实现本模块功能的代码如下:1 w_splash窗口的open事件代码:/使窗口居中的代码可参考“系统认证”模块中的相关代码,这里从略。p_1.picturename = back.jpgtimer(8,this)/8秒钟后触发计时器事件2 w_splash窗口的timer事件代码:close(this)/关闭此窗口,同时引起close事件3 w_splash窗口的close事件代码: timer(0,this)open(w_login)/打开系统登录窗口close(w_test)4.w_splash窗口的key事件代码:(当用户按下键盘上任意一键时发生) close(this)5. w_splash窗口的click事件代码:(当用户按下鼠标左键时发生) close(this)六、创建系统菜单scomanager: 菜单项具体内容与5.1.5中的图51内容基本一致。部分菜单项设置了快捷键。七、设计系统运行主窗口w_main:系统运行主窗口w_main是系统运行的主界面,里面加入了菜单scomanager和一个工具栏,并设置了一个背景图pic0003.jpg,此窗口的运行结果如图56所示图56八、系统登录窗口(w_login)编程:本模块程序流程图,如图56所示进入系统主界面选择用户,输入密码密码正确?ny 运行时的界面如图57所示,有关控件及属性如何设置略。这里着重 图57讲述一下如何用下拉列表框把user.db表中的用户名给列举出来,这里的下拉列表框又叫下拉子数据窗口。步骤如下:新建一数据窗口对象,其显示风格为“freeform”,“data source”为“quick select”,选择“user”表中的“username”字段,保存该数据窗口对象命名为“d_username”。再新建一数据窗口对象,其显示风格为“freeform”,“data source”为“quick select”,选择“user”表中的“username”字段,在其属性画板中,从“editstyle”列表中选择“dropdowndw”,其“display column”设置为“username”,其“data column”设置为“username”,选中“always show arrow”属性,其“datawindow”设置为“d_username”,这时把上一步建立的数据窗口加入进来了,保存该数据窗口,命名为“d_user”
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 艺术培训上门服务创新创业项目商业计划书
- 2025年教师招聘之《小学教师招聘》通关练习题和答案【有一套】附答案详解
- 2025内蒙古呼伦贝尔林业集团有限公司招聘工作人员5人备考及答案详解(夺冠)
- 2025年教师招聘之《小学教师招聘》通关题库(完整版)附答案详解
- 2025年江西景德镇学院选聘思政课专任教师考试笔试试题(含答案)
- 2025广东广州银行人才招聘笔试备考试题及答案解析
- 2025年度上海市考试录用执法类公务员1004人笔试备考试题及答案解析
- 合肥市商品住宅房地产市场发展趋势:洞察与展望
- 航空航天科技公司股权置换与航天器研发合作协议
- 门诊共济面试题库及答案
- 2024心肺复苏培训课件完整版
- 失能老人健康知识讲座
- 小针刀治疗的应急预案
- 业务外包作业人员培训管理办法
- 中央企业合规管理办法
- 物理化学实验B智慧树知到课后章节答案2023年下北京科技大学
- 1-丁烯安全技术说明书MSDS
- 技术类《核电站通用机械设备》第1部分(阀门)
- 现场签证单模板
- 风机盘管更换施工方案
- Analyst软件应用培训教程
评论
0/150
提交评论