南水北调东线调水信息报送系统设计及应用

2022-01-01 23:49丁韶辉
治淮 2022年9期
关键词:东线调水南水北调

冯 峰 丁韶辉

(淮河水利委员会水文局(信息中心) 蚌埠 233001)

1 引言

2014年8 月,南四湖地区出现严重旱情,正式启用南水北调东线一期工程向南四湖生态应急调水,此后,通过南水北调东线向山东调水进入常态化。为了做好水资源配置与调度管理工作,自2014年起,水利部逐年下达了南水北调东线一期工程年度水量调度计划,并由南水北调东线总公司负责实施。按照工作安排,淮委水文局在南水北调省际泵站进行调水量监测,并将每日调水量向上级部门报送。

在东线一期工程调水信息报送工作中,需要每日从数据库查询调水监测数据、计算调水量、编辑简报、发送邮件和短信。首先从实时水情数据库系统(Microsoft SQL Server)查询各测站的测流时间、流量、水位等数据,然后将数据输入有确定公式和格式的Excel 表格进行累计调水量计算,下一步结合计算结果编写具有固定简报格式的Word 文档,形成简报,然后将简报作为附件群发邮件至各相关部门人员,另外通过短信群发平台群发调水简讯。简报及短信发送工作重复性较强,很大程度上可以利用软件来实现。

本文采用C#面向对象语言设计软件界面,结合SQL Server 数据库查询、Word 和Excel 文档处理、邮件、网页等相关类库和控件进行程序编写,实现简报及短信发送的自动化,极大地提高了工作效率。

2 C#及.NET Framework 类库介绍

C#是微软公司发布的一种面向对象的、运行于.NET Framework 之上的高级程序设计语言,具有安全、稳定、使用简单等特点。C#由C和C++衍生而来,继承了C 和C++强大功能,同时去掉了一些复杂特性。C#综合了VB 简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言。

.NET Framework 类库是一个由类、接口和值类型组成的库,通过该库中的内容可访问系统功能,它是生成.NET Framework 应用程序、组件和控件的基础,使用者可以根据需要使用恰当的命名空间中的类进行编程,提高编程效率。

3 软件设计

软件主要包含四个模块,即数据库操作模块、文档处理模块、邮件发送模块和短信发送模块。

软件的设计思路:首先,利用数据库操作模块,提取数据库中近两天的水位、流量等数据,判断当天监测数据是否收到,如果收到,将最新的数据按照一定的表结构转存到本地数据库;然后取出本地数据,利用文档处理模块将取出的数据填入Excel表并自动计算,根据计算结果自动生成Word 简报文档;最后通过邮件发送模块和短信发送模块进行邮件和短信的发送。

3.1 数据库操作模块

调水期间,测流人员对各泵站的调水流量进行监测,随后将监测情况上报并最终传输至雨水情数据库。但由于网络故障等原因,有时会出现漏报或数据上传故障,实时雨水情库不能随意改动,所以需要另外建立数据库,专门存放各泵站的流量监测数据。

提取与转存数据库中的数据,主要使用了SqlDataAdapter、SqlBulkCopy 等类。其中,SqlData-Adapter 类利用数据库连接和查询命令从SQL Server数据库获取调水流量监测数据,存入DataSet;SqlBulkCopy 类用于将从水情实时数据库中取得的数据批量加载到本地SQL Server 数据库。

3.2 文档处理模块

近两年,南水北调东线调水量均是利用Excel表格进行计算,为了工作上的延续性及便捷性,本软件也利用Excel 表格计算。首先将数据库中的调水监测数据导入Excel 表格,结合Excel 自身的计算功能,算出调水量,然后根据计算结果,结合简报格式,生成Word 简报文档。该模块主要使用Microsoft.Office.Interop.Excel 和Microsoft.Office.Interop.Word 命名空间中的类。

3.3 邮件发送模块

东线调水简报每日通过邮件发送到各相关部门工作人员,本软件可以利用邮件发送模块实现该功能。邮件发送模块主要使用MailMessage 和SmtpClient 类,利用SMTP 简单邮件传输协议完成信件发送。程序中添加发件人账户、密码及收件人账户,在运行软件时,首先选择要发送的简报作为附件,点击发送即可完成群发。编写程序时需添加命名空间System.Net.Mail。

3.4 短信发送模块

调水期间,除发送简报邮件外,还需把各泵站调水量通过短信平台以短信的形式发送到相关部门工作人员,本软件利用短信发送模块的WebBrowser控件实现该功能。WebBrowser 控件可以在Windows窗体应用程序中承载网页,利用成员函数将控件导航到指定的短信平台网址,自动完成账号和密码的填入、登录;然后跳转到发送页面,自动获取Excel 表格中的计算结果数据作为发送内容,将其与接收方的手机号码填入网页,用户只需确认无误后点击发送即可。

4 软件应用

将该软件应用到南水北调东线2017—2018年度调水的简报发送工作中,软件能够完成监测数据的提取、结合Excel 表计算调水量、自动生成调水简报Word 文档、发送简报与短信等工作,软件使用简单,发简报所用时间由原来的25 分钟左右缩减到2~3 分钟,大大提高了工作效率。

5 结语

(1)本文介绍了C#结合SQL Server 数据库、Office 文档的开发方式,分析了软件制作、发送简报的思路,构建了软件架构,讨论了软件代码细节,实现了软件制作与发送简报的功能。

(2)调水简报发送软件界面简洁,操作简便,应用于南水北调东线调水简报发送工作,极大地提高了工作效率。

(3)本文仅针对南水北调东线调水过程中的简报发送工作展开分析与研究,对于其他需要频繁发送简报的类似工作,具有较高的参考价值,可在此基础上研究与推广■

猜你喜欢
东线调水南水北调
我国调水工程概况及管理趋势分析
东线混战
中俄东线天然气管道开通
俄罗斯天然气通过中俄东线 天然气管道正式进入中国
斗严寒
用好南水北调征地移民资金
双调水仙子游青城山
重大报道中的“微表达”——以湖北日报《琼瑶话调水》专栏为例
大事件 高占位 精制作——湖北日报南水北调中线一期工程正式通水报道评述
南水北调 主体工程全部开工