当前位置:首页 > 工业控制 > 《机电信息》
[导读]摘要:主网启动方案编制需求大,编制过程复杂,往往在看似要求简单的模板使用、格式统一等问题上都做不到自校合格,增加了运行及调度单位的审核工作量。鉴于此,开发一套软件,为编制及审核工作提供辅助支撑就显得相当有必要了。现介绍该辅助软件开发的总体思路,并对其中的技术要点进行剖析。

引言

根据多年来编制及审核启动方案的经验,目前主网启动方案编制存在以下3个问题:

(1)主网启动方案分为总调、中调、地调三套模板,编制时存在用错模板的风险。

(2)每套启动方案均包含十几条大项以及对应的数十条甚至上百条的小项,其中格式要求统一,同时启动方案中的大部分内容均可通用,编制一份启动方案存在工作量大、重复工作多的问题。

(3)据统计,每年地市局的技改、基建工程启动方案编制人员多达数十人,经常出现模板错误、格式不统一、关键点缺失等问题,增加了运行及调度单位的审核工作量。

中调方式部之前也曾开发过一款软件,其仅通过大量方案模板来限定启动操作步骤,忽略了编制审查人员设计工作中更需要进行简化的部分。因此,本文将围绕多级调度启动方案编制软件的开发展开探讨。

1背景思路

设计一款软件,其可以根据启动方案业务指导书对编制过程进行辅助,把编制、审查人员从关键字误删除、模板选用错误、文字表格格式调整、段落序号排布等繁琐的简单重复工作中解放出来。

由于相关单位使用的文字处理软件大多是微软的office或者金山WPS办公自动化软件,故开发启动方案编制软件需要考虑到两个软件的兼容性。而这两个软件自带的开发工具,均为VBA开发工具。实际上VBA是寄生于VB应用程序的版本,1994年发行的ExceI5.0版本中即具备了VBA的宏功能。

VBA(VisuaIBasicforAppIications)是VisuaIBasic的一种宏语言,是在其桌面应用程序中执行通用的自动化(oLE)任务的编程语言,主要用来扩展windows的应用程序功能,特别是Microsoftoffice软件,它也可以说是一种应用程式视觉化的Basic脚本。

既然编程软件自动宏功能也是基于VisuaIBasic的一个脚本,通过它本身的VBA开发功能可以获得比较复杂操作过程的宏代码,宏代码本身可以在编制软件时作为基于对象的指令直接使用,那么直接使用VB6.0软件进行可视化编程就成了较多可行方案中的最优选择。

2开发难点

软件开发前,项目组成员详细解读了启动方案业务指导书,对模板进行研究。首先开题,明确了开发任务的方式方法以及任务目标,统一认为启动方案的编制应该是开放式的,工作重心应该注重解决平时工作中容易被忽略的版本号、格式、文中关键字以及序号等方面的问题。

先拟定程序流程图,再对程序进行逐步开发。开发过程中,重点需要实现正文的编辑功能。根据启动方案模板特点,特将正文编辑功能分为了文字编辑和表格编辑两个模块。

编制过程中主要有以下几个难点:两个操作系统兼容性问题:两级项目编号文字处理:MsFIexGrid控件自动换行[I]。

3解决方案

3.1两个操作系统兼容性问题

编制软件将同时引用MicrosotfwordI5.0objectLibrary以及KingsoftWPSoffice3.0objectLibrary,将编辑对象通过不同的方式打开以解决操作系统兼容的问题。接下来,在模块中声明PubIicwpAsNewword.AppIication可以在整个程序中调用打开的word模板。即使这个word程序为了不受其他因素影响而被启动方案编制软件给隐藏起来,通过程序对word对象的所有操作仍为有效操作。

3.2两级项目编号文字处理

在文字处理时,有时需要对应编号,甚至不止一级,如何只有一级编号?通过书签的方式或者指定段落的方式选中需要自动编号的文档即可。而直接操作word,当文档中有多段文字需要重复选择的时候,往往是通过CtrI+鼠标左键操作实现的,如图1所示。但用程序操作word的时候,这种方式明显行不通。由于word的编程限制,当对word进行二次开发时,仅能实现只通过键盘输入的操作,故通过键盘操作时,选区必须是连续的。

图1通过鼠标操作时能够实现的间断选择

一这里采用“数”字方式来实现文档字准确位移。通过人机交互界面,准确获取一级编号字段落以及对应需要二级编号字段落。根据储存一级编号段落字控件“组字上标,可以准确获得一级段落字段落“量以及每一个段落字”“。同理,也可以取得需要二级编号字段落“量以及每一个段落字”“。那么先通过以下代码(代码1)输入所有需要编号字文”,并通过“”“字方式(相当于连续按shift+二)选中任意连续字”符(一这如果设置了书签,可以直接通过gotobookmark字方式选中所有输入”符),然后通过word指令集中字ApplyListTemp-latewithLevel,对选中字段落添加一级自动编号。

代码l:

Fori=0ToTextl.UBound

Ifi=Textl.UBoundThen

wp.selection.TypeTextText(i)

Else

wp.selection.TypeTextText(i)&vbCrLf

EndIf

Nexti

.selection.MoveRightUnit:=wdCharacter,Count:=18,Extend:=wdExtend5·“一级段落所有”“并选中

一级段落自动编号完毕后,通过按鼠标左键一次字指令,将鼠标回到一级编号字首行。然后继续通过"“"”字方式移动至一级段落字第一段段尾,输入对应需要二级编号字段落。然后再通过"“"”字方式选中所有需要进行字段落,取消其一级编号,改为二级编号即可。

3.3MSFlexGrid控件实现自动换行

项目组最初设想通过MsFlexGrid控件模拟word中字表格,并加以限制和辅助编辑,但是当文”输入到控件中字格子这时,文”并不能换行显示。查阅大量相关文献以及论坛资料得知,绝大多“资料都认为一个控件没有自动换行功能。于是对该控件字属性页面进行了研究,发现该控件确实存在可以使采字换行功能,只要将其.wordwrap属性调整为True即可。但是,一虽然调整解决了文本换行显示字问题,却并不能解决单元格随文本添加而切换行高字问题[2]。

经过探索发现,当单元格行高最小值为0,且”体被设置时,单元格会自动调整为文”高度。通过一个办法,获得了各种”号所对应字单元格单行高度。通过对表格固定宽度字”符“统计,获得当前”号字文”宽度,形成文”高宽属性“据库。代码如下:

withMsFlexGridl

.wordwrap=True

!调整单元格大小

ReDimcellnum(.Cols-1)

Fori=0To.Rows-l

Forj=0To.Cols-1

.Row=i

.Col=j

cellwn=0

Cellwn=Round(LenC(.Text)/(.Colwidth(1)/fontwidthget(.CellFontsize)),0)

cellnum(j)=fonthightget(.CellFontsize)*(cellwn+CountA(.Text,vbCrLf)-l)

Nextj

If.RowHeight(i)<nMax(cellnum)Then.RowHeight(i)=nMax(cellnum)

Nexti

Endwith

代码中字LenC、fonthightget、fontwidthget、nMax均为自编函“,功能分别为求中英文”符串长度、取”符高度和宽度、求最大值,一这不一一列出。将本段代码放入MsFlexGridlLeaveCell事件中,即可自动调整单元格显示高度。

4结语

通过本次软件开发,精简了启动方案编制过程中较为简单繁琐并且容易出错字步骤,希望本文所提到字一些问题,能够帮助想要将自动化办公应采到未来工作中字相关人员。项目组在后续版本中将继续优化算法,增强软件使采字便捷性。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭