1主要功能模块分析
工程管理模块:主要包括工程管理中的修改、删除和增加功能。其中,为方便用户能够录入海量数据,Excel可以直接导入工程数据,一方面节省大量人力物力,另外一方面能够避免因人工录入而造成的数据错误。登录模块:启动模式页面是在登陆成功以后进入,在不同的启动模式下,确定参加风险计算的特定参数。计算模块:工程里面所涉及到的数据会在打开工程以后,按照单段为单位而进行显示,一次计算方式在此软件中采用,使得操作步骤简化,通过点击一次计算按钮而计算出工程所有风险值。通过改进的优化算法,能够缩短计算时间,节能计算投入。(4)系统模块:系统原始评估参数的相关数值修改在此模块中进行,此模块为交互模块,管理相关所用风险评价计算所需要的参数。(5)输出模块:能够根据软件要求显示三种数据计算后显示方式,表格形式、柱状图形式以及单段输出格式。人性化则是数据输出的最大特点,用户能够根据自己需要而进行自主选择输出方式。(6)导出模块:主要指能够将计算所得的数据,为了方便拷贝存档以及相关的其他作业使用,利用文件读写的方法而导出至EXCEL电子文档,(7)打印模块:本软件主要提供四种相应的打印方式,还具备打印预览功能,能够满足工程的各种需要。
2数据利用
2.1FileStream读写数据文件
在网络路径或者磁盘路径上指向文件的流可以通过FileStream实现,文件中的读和写字节的操作通过该方法实现,在执行这些功能时往往使用StreamWriter或者StreamReader,这是因为字符数据则是Stream类所操作内容,而FileStream类操作的则是字节和字节数组。在实际应用中,比较容易使用字符数据,但是对于随机文件访问等操作来说,要访问文件中间的某点数据,就应该通过FileStream对象来进行。其中,创建FileStream对象的构造函数如下:FileStreamfile=newFileStream(fileName,FileMode.Member);FileStreamfile=newFileStream(fileName,FileMode.Member,FileAcess.Member);对于Stream类来说,其主要操作的则是字符数据通过StreamWriter可以在文件内写入字符和字符串,而不同于只能操作字节和字节数组的FileStream,Stream类主要处理底层转换,通过FileStream对象写入数据,同样类似于StreamReader。
2.2Excel与sqlserver进行数据交换分析
(1)Excel导入SQLServer表通过定义OpenDataSource函数,在SQLServer中来引用哪些不经常访问的OLEDB数据源,同时,这个函数上还建立了我们的数据互导操作。(2)SQLServer导出为Excel表要想直接导出到Excel表格则是通过T-SQL语句,需要借用SQLServer管理器的相关的扩展存储过程,即xp_cmdshell,在此过程中的作用主要是,按照操作系统命令行解释器的相关方式,来执行给定的命令字符串,同时还以文本方式来返回任何输出。(3)在SQLSERVER里查询Excel数据查询示例,通过用于Jet的OLEDB提供程序来进行查询Excel电子表格。SELECT*FROMOpenDataSource('Microsoft.Jet.OLEDB.4.0','DataSource="d:\book1.xls";UserID=Admin;Password=;Extendedproperties=Excel5.0')...xactions(4)将Excel的数据导入SQLserver:SELECT*intonewtableFROMOpenDataSource('Microsoft.Jet.OLEDB.4.0','DataSource=''d:\book1.xls";UserID=Admin;Password=;Extendedproperties=Excel5.0')...[Sheet1$]实例:SELECT*intonewtableFROMOpenDataSource('Microsoft.Jet.OLEDB.4.0','DataSource=''d:\Finance\account.xls";UserID=Admin;Password=;Extendedproperties=Excel5.0')...xactions利用上述方法能够较为容易把SQLSERVER和EXCEL电子表格软件中的数据进行转换,使得数据高效利用成为可能。
3结语
通过设计的软件,能满足对于资源利用最大化的要求,截面设计友好,可操作性很强,对于计算机操作水平没有过多要求。通过系统模块设计,在一定范围内可以进行灵活调整,而不再拘泥于特定的某项使用范围。在评估体制发生变化的情况下,可以相应调整软件系统,因为在软件开发过程中,以模块为单位的开发模式要求每个模块的耦合度并不太高,当为更好适用于其他行业相关的需求时,只要进行相应的替换和调整模块就能进行相应的风险评估。
作者:刘超 单位:中国海洋石油国际有限公司