申报模块是本系统的主要功能。用户登录以后,根据要求填写相关内容,包括项目名称、项目类型、预算合计、预期成果、研究内容和意义等内容。用页面数据校验类PageValidate来对输入的项目经费和开始时间、结束时间进行校验,当输入不符合时,会提示格式不正确。在填写条件和保证时,可能会写得到证书或表彰等,这时就需要上传支撑材料,利用FileUpLoad来上传文档。点击提交以后,如果内容是按要求填写的,显示申请成功。
5.4审批模块
项目的审批是系统的一个重要环节,专家登录系统后,可以申报项目,可以看到自己的申请项目,也可以看到需要评审的项目,并可以查看项目的所有内容,但不能对其进行修改。在评审时,专家根据项目申报书,给出建议资助金额和评审意见,并为该项目是否立项进行投票。管理员根据投票的情况来判断是否立项。
5.5查看申报记录模块
主要用来实现查看申报记录的功能。当查看申报记录时,可以通过关键字来查看所寻找的项目信息,先用request获取界面上的关键字,然后按照关键字来查询该项目,用函数ShowInfo()显示该项目的所有信息。也可以按照项目是否通过审批来查看项目信息,用了控件DropDownList来控制选择的是通过或不通过,当DropDownList控件中的选中项发生变化时,然后调用SelectedIndexChanged()函数如果感觉表格看起来不太方便的话,可以点击详细,查看详细信息。
5.6导出数据模块
主要用来实现把项目的主要信息导出到指定位置的Excel表中。在该模块中使用了组件NPOI。先给导出的数据确定一个位置,也就是一个路径,这里是项目里的一个文件夹。然后在内存中创建一个工作表即Workbook对象wk,接着创建wk中的一个Sheet对象sheet,用来保存项目信息,然后创建了sheet中的一个行对象header,把一个项目需要列出的信息读取到header中,形成表格的头部,利用foreach循环把所有项目信息写进sheet中,将创建好的Workbook写入文件流中。这样就完成了数据导出功能。导出的数据如图5所示。
图5 导出数据图
6.系统测试
软件测试是使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。软件测试的主要过程是根据软件开发各阶段的规格说明和程序内部结构,精心设计若干测试用例,使用这些测试用例运行程序,从而找出程序中隐藏的错误。设计软件测试的目标是能够系统的揭示不同类型的错误,并且耗费最少时间与最小工作量。
本系统采取的测试方法是先对单个模块进行单元测试,经过修改和调整以后,进行集成测试。本系统的部分测试用例如表2所示。
表2 测试用例
测试操作 预期结果 实际结果
登陆时,手动输入用户名和密码 提示:用户名或密码错误。 提示:用户名或密码错误。
输入项目信息时,项目名称为必填项。 提示:项目名称不能为空。
提示:项目名称不能为空。
输入项目信息时,预算合计为必填项,并且必须符合格式。 提示:预算合计格式错误。 提示:预算合计格式错误。
输入项目信息时,开始时间为必填项,并且必须符合时间格式。 提示:开始时间格式正确。 提示:开始时间格式正确。
7.结论
本文针对科研项目申报工作的特点,从登陆验证,到项目申报,评审和立项,以及后台的初始化工作,都是采用三层架构模式来实现的。分析了科研项目网上申报的需求,基于Web的数据库动态开发,按照B/S结构建立,通过Browser访问数据库并实现动态交互的Internet 信息服务技术。VS2010和SQL Server 2008相结合,运用CSS等设计网页工具来设计页面,实现该系统的各大功能。 ASP.net科研申报系统设计与实现(4):http://www.751com.cn/jisuanji/lunwen_2575.html