电脑桌面
添加盘古文库-分享文档发现价值到电脑桌面
安装后可以在桌面快捷访问

表单设计范文

来源:盘古文库作者:开心麻花2025-09-151

表单设计范文(精选10篇)

表单设计 第1篇

1 表单设计

表单是数据处理的用户界面,用户通过各种表单来认识和使用数据处理应用软件。在开发一个数据库应用系统时,表单的设计是非常重要、不可缺少的一个环节。

表单设计的基本步骤:

1)设置数据环境。分析表单是否涉及到数据表或视图中的数据,根据需要在数据环境中添加数据表或视图。数据环境及其中的表或视图都是对象,可以对其进行属性设置,数据环境的设置与表单一起保存。在运行表单时,VFP自动打开其数据环境中的表或视图。

2)设计表单界面:添加各类控件,设置各个对象的属性,调整布局。

3)编写事件代码:事件代码设计是表单设计的关键。对某些对象,如命令按钮等进行相关的事件设计,事件代码在对象的事件触发时自动执行。

2 数据源说明

本文以学生-课程-成绩数据库为数据源,数据库中包括主要三个数据表,关系模式分别为:

Xuesheng(Xh,Xm,Xb,Csrq),字段分别表示学生的学号、姓名、性别和出生日期;

Kecheng(Kcdh,Kcm,Llxs,Syxs,Bxk,Xq,Kcbz),其中字段分别表示课程代号、课程名、理论学时、实验学时、必修课、开课学期和课程备注;

Chengji(Xh,Kcdh,Cj),其中字段分别表示学号、课程代号和成绩。

在Xuesheng与Chengji之间、Kecheng与Chengji之间建立一对多永久关系。

部分数据如图1所示。

3 查询表单设计

运行查表单询,用户可以通过交互方式,实现根据输入查询信息,得到相关信息。

本文设计如图2所示的查询表单,运行表单,用户输入学生姓名,点击“查询”按钮查询其选修课程及成绩,结果显示在表单上的表格中,点击“退出”按钮,释放表单。

3.1 利用SQL-SELECT语句设计查询表单

SELECT语句是SQL(Structured Query Language)语言的核心语句,提供对数据库的查询。SELECT语句使用方式灵活,功能丰富,不仅可以完成单表查询,也可以完成复杂的连接查询和嵌套查询。

表单设计分析:利用SELECT语句设计图2所示表单,设计界面如图3所示,表单文件名设为F1。单击“查询”按钮,根据文本框Text1中输入的姓名进行查询,查询结果保存在临时表T1中,要使查询结果在Grid1中显示,表格Grid1的数据源Recordsource应设定为临时表T1。为避免表单初次运行表格Grid1中无数据出现空白表,在表单的Init事件中将表格的数据源进行初始化。

设计步骤如下:

1)使用SELECT语句不需要打开要查询的数据表,所以无需考虑数据环境。

2)添加两个标签,将Label1的Caption属性设为“基于VFP的查询表单”,FontName为“楷体_GB2312”,FontSize为18,Label2的Caption属性设为“请输入姓名”,FontName为“楷体_GB2312”,FontSize为14。

3)添加一个文本框Text1,用于运行时输入要查询的信息。

4)添加两个命令按钮,Caption属性分别设为“查询”和“退出”,FontName为“楷体_GB2312”。

5)添加表格Grid1,用于显示查询信息。

6)调整各个对象大小和布局。

7)表单事件代码设计:

Form1的Init事件代码:

讨论:由于SQL-SELECT语句功能强大,可以对单表、多表实现单条件查询、多条件组合查询的查询功能,使用这种方法设计查询表单。对于不同的数据源和查询要求,可参照上例,多条件时增加输入文本框(或使用组合框、选项按钮组等),修改SELECT语句即可。3.2利用参数化视图设计查询表单

3.2 利用参数化视图设计查询表单

视图是关系数据库系统提供给用户从多种角度观察数据库中数据的重要机制。视图是从一个或者几个基本表(或视图)导出的表,它与基本表不同,是一个虚表。数据库中只存放视图的定义,而不存放视图对应的数据,这些数据仍存放在原来的基本表中。在创建视图时,可以创建参数化视图,用它来限定视图的作用范围,避免每取一部分记录就单独创建一个视图。

利用参数化视图设计如图2所示表单,设计界面如图4所示,表单文件名设为F2。

设计步骤如下:

1)打开学生-课程-成绩数据库,利用视图设计器创建参数化视图St1。将Xuesheng、Chengji与Kecheng添加到视图中,在字段选项卡选定Xuesheng.Xh,Xuesheng.Xm,Kecheng.Kcdh,Kecheng.Kcm,Chengji.Cj,在“筛选”选项卡中设置条件:Xuesheng.Xm=?xx,用“?xx”方式调用参数变量。这里,xx是变量名。参数化视图St1的设计界面如图5所示。

2)将参数化视图St1添加到查询表单数据环境中,并将数据环境中的参数化视图St1(Cursor1)的Nodataonload属性设置为.t.。Nodataonload属性设为.t.,表单初始化时,打开视图,但视图不取得任何数据。这样可以避免运行表单时参数化视图弹出要求输入参数变量的对话框。

3)标签、文本框、命令按钮的添加和属性设置同图3表单F1的设计。

4)把数据环境中的参数化视图St1拖放到表单中,生成表格grdSt1。

5)调整各个对象大小和布局。

6)表单事件代码设计:

Form1的Init事件代码:

Local xx&&通过定义变量xx,实时改变视图的参数变量。

“查询”按钮的Click事件代码:

讨论:视图从一个或者几个基本表(或视图)导出数据,同样可以对单表、多表实现单条件查询、多条件组合查询。通过设计参数化视图,当参数变量发生变化时刷新视图,实现交互查询。对于不同的数据源和查询要求,参照上例,多条件时增加输入文本框(或使用组合框、选项按钮组等),修改参数化视图的设计即可。在设计时需要根据参数的个数、名称在表单的Init事件中设置对应的变量,在对参数变量重新赋值后,使用=ReQuery()函数刷新视图。ReQuery()的参数为视图名。

3.3 利用数据过滤器设计查询表单

在VFP中数据过滤器可以为数据表或视图设置逻辑表,将不符合条件的记录“屏蔽”起来。一个表或视图设置过滤器后,对表的操作仅限于满足条件的记录。数据过滤器实现可以通过菜单方式,也可以使用SET FILTER TO命令实现。

利用SET FILTER TO命令设计如图2所示的查询表单,设计界面如图6所示,表单文件名设为F3。设计步骤如下:

1)该表单查询数据涉及到的数据表有Xuesheng.dbf、Kecheng.dbf和Chengji.dbf,打开学生-课程-成绩数据库,创建视图St2,字段包含Xuesheng.dbf中的Xh,Xm,Kecheng.dbf中的Kcdh,Kcm,Chengji.dbf中的Cj字段。将视图St2添加到表单数据环境中。

2)标签、文本框、命令按钮的添加和属性设置同图3表单的设计。

3)把数据环境中的视图St2拖放到表单中,生成表格grdSt2。

4)调整各个对象大小和布局。

5)表单事件代码设计:

“查询”按钮的Click事件代码:

讨论:表单F3涉及多个表,使用视图作为数据源相对来说操作更方便,如果要多条件组合查询,只需在表单上增加输入文本框,修改SET FILTER TO命令的条件即可。如果对单表进行查询,用这种设计方法更能显出优势,直接将要查询的数据表加入数据环境,代码编写简单,易于实现。

4 结束语

该文对VFP查询表单的涉及进行了探讨,利用SQL-SELECT、参数化视图和数据过滤器等方法设计并实现了查询表单,详细说明了设计思路及步骤,提供了事件代码。利用SQL-SELECT方法设计查询表单,关键在SELECT语句。利用参数化视图,关键在参数化视图的设计。数据过滤器方法关键在数据源的组织和SET FILTER TO命令中条件表达式的表示。

摘要:利用SQL-SELECT、参数化视图和数据过滤器等方法设计并实现了查询表单,并对三种设计方法进行了讨论。

关键词:VFP,查询,表单设计

参考文献

[1]王珊,萨师煊.数据库系统概论[M].北京:高等教育出版社,2006.

[2]刘瑞新,汪远征.Visual FoxPro程序设计教程[M].北京:电子工业出版社,2006.

《网页制作表单的设计》教学设计 第2篇

15电商4、5班2课时

一、【教学目标】

学会使用表单中文本域、图片域、单选按钮、复选框、跳转菜单、文本区域等的应用

二、【教学重点与难点】:

重点:文本域、跳转菜单,单选按钮的应用 难点:单选按钮的应用,跳转菜单的制作

三、【教学方法】

讨论法、讲授法、演示法、练习法

五、【教学过程】

一、认识表单

表单的作用:表单就是浏览者可以在网页中填写信息的表格,其作用是接收浏览者填写的信息并将其提交给表单处理程序进行处理。

二、生成表单

1、表单的创建与表单字段的添加

“插入”—“表单”—“选择需要的表单类型”

2、表单向导

“文件”—“新建”—“网页”--“常规”——“表单网页向导”

三、表单内容编辑

1、文本域——账号和密码的输入

3、图片域——制作提交按钮

4、单选按钮——性别选项设计

5、复选框——兴趣爱好设置

6、按钮(“验证有效性按钮” 登录)

7、跳转菜单菜单——密保问题的设置

8、文本区域——留言框的制作

四、学生练习制作表单

制作一个注册信息表单,要求包括下面的内容:会员帐号、您的姓名、您的性别、输入密码、密码确认、密码提示问题、密码提示答案、电子邮件、留言框、收货地址、兴趣爱好、提交按钮、重填按钮

六、【课程小结】

七、【作业】

从管理表单开始 第3篇

他在一家快速消费品公司的新媒体营销中心工作,经常需要就产品的命名和用户进行互动。2013年6月他们举办过一次微信有奖活动,吸引了一万多名粉丝参与,最后评选出1000名幸运者。当时的做法是让粉丝将姓名、手机、地址等信息发到官方微信后台以便寄送奖品。“于是我们有两个同事将消息一条一条地从后台复制粘贴到Execl里,加班到凌晨3点。并且,很多用户并不按模版回复信息,额外增加了很多工作量。”

直到听人推荐开始使用麦客,他可以制作不同的表单,通过网页、微博、微信等平台发布,填完的表单会自动统一汇集在麦客后台,他再进行必要的筛选、过滤,生成统计图表或者导出为Excel。

“这一年多时间里我和同事用麦客制作了63个表单,有一万多人通过表单提交了信息。”吴为说。

麦客的背后是一家位于成都的创业公司,创始人是25岁的北京邮电大学计算机系毕业生李卉。

企业工具这件事李卉已经研究了好几年。读研究生期间,她和另外两个同学开始给校外的企业做外包项目,其中有给银行做的薪酬体系计算工具,有给水文监测站做的数据统计工具,以及给企业、科研机构等做的一些项目。李卉负责谈客户,梳理需求,设计产品逻辑,另外两个同学负责开发产品。虽然他们当时并没有关于企业管理的知识,也不太懂系统设计的逻辑,但是依靠扎实的技术,做这些纯定制工具倒也不难。

做外包项目可以养活这个3人团队,但是很难在业务和人手上扩张。因为客户领域跨度太大,每个客户的需求又都不一样,几乎不可能复制。“我们经常花了很多心思去雕琢,出各种很炫的图,”李卉说,“但是一旦做完,就完了。”

如何把好的工具给更多的企业用?李卉开始接触SaaS(软件即服务)概念,“SaaS的好处是一次开发可以服务数量庞大的用户。”SaaS当时在国内也是刚刚起步的阶段,适应与否,如何发展尚没有定论,但是李卉认为SaaS会是企业工具更科学的形态,可以用SaaS的方式做出更通用的产品。

李卉从做外包项目的过程中总结经验,发现了表单的用处。“能够自定义创建一个表,分发给用户填写后能够保存,能够对表单进行搜索、筛选、排序,能够导出Excel,这样的一套逻辑是可能覆盖企业系统百分之七八十的需求的,”李卉说,“比如请假、报销,或者工程立项,又或者评审打分表,形式上其实是通用的。”

更进一步,通过表单收集的信息应该有一部分能够沉淀为企业的长期资源,“关键看填表人是谁,因为接触的人都是会跟公司产生关联的人,无论用户,还是供应商,人的信息对系统来说是通用的。”李卉说。

2012年9月,李卉成立了公司,开始做这样一款表单制作和联系人管理工具,也就是麦客。第一版产品开发用了一年,期间麦客拿到了投资。

最终呈现出来的产品是一个基于网页端的工具,分为“表单”、“联系人”和“群组”3部分。表单部分提供了制作模板、自定义组件以及配色方案等,用户根据需求进行简单的拖拽和勾选便可以生成表单。收集回来的表单中的个人信息会被自动添加至“联系人”中,并且打上相应的标签,比如活动报名留下的联系人会被打上“××活动观众”标签,方便发送活动反馈,或者通知下次活动。群组部分则方便用户进一步管理联系人。

最难的是前端的产品设计,看似简单,但因为要满足大量用户的需求,要在表单功能设计以及交互上做到足够丰富和流畅,同时不能让用户觉得太复杂,李卉这样形容:“每天我要把自己分裂成一万个用户去想象在一万个场景下使用麦客时会遇到什么问题。”

如何让用户更有效地管理联系人也是关键,除了表单联系人归集,用户也可以导入原有联系人。针对每个联系人,系统会将相关的行为信息都记录下来,比如他曾经填过哪些表单,有哪些往来邮件等等,这样可以有效地帮用户将联系人进行分层,哪些是需要保持长期联系的,哪些是可能做成生意的,哪些是没有价值的。

“当你从市场的角度看你的客户的时候,信息量是巨大的,如果不整合起来是没有办法辨识几千个客户里面哪几百个是比较活跃的,”李卉说,“麦客是市场型的产品,把你散落在各个平台上的信息聚集起来,得到你想要的结果。”

后来麦客又新增了“邮件”和“短信”功能,可以批量向联系人发送邮件或短信。李卉认为,在麦客的系统里,有用的信息通过表单进来,沉淀在联系人中,然后再通过邮件短信传播出去,下次再通过表单进来,形成了一个闭环,这样企业可以更有效地传播它的影响力。

所以,麦客实际上与其他做调查工具的互联网公司不一样,它不是工具,而是客户关系管理系统(CRM),同时,与传统CRM又不一样。“传统CRM是一个漏斗,每一个客户有一个阶段性的标签,如潜在客户、意向客户、洽谈中、订单签成等,销售人员每天跟进这些客户,把他们从一个阶段向下一个阶段推进,”李卉解释说,“而麦客是直接铺面的。企业完全可以利用麦客筛选出真正有价值的客户,再与销售进行对接。”

麦客的第一版产品发布选在技术媒体36kr的开放日上,同时参加的其他创业企业成为麦客最早的一批用户。接下来的半年多时间里,麦客并没有进行宣传推广,直到2014年4月才招到了市场部的第一个员工。

推广上的谨慎实际上是因为刚开始的产品并没有做到完全令她满意。李卉认为如果将一个不够好用的产品推出去,用户觉得不好,以后可能就再也不会来了。其次,面向企业用户的产品需要客户服务做支撑,如果用户增长太快,对客服也是巨大的压力。

麦客在最初的时候并没有专门的客服人员,而是由全公司所有员工轮流担任客服,李卉是第一个,前端工程师是第二个,然后是技术、产品、行政等等。李卉还把自己的电话号码放在客服电话号码旁边,以至于有时候接电话接到晚上12点多。用户的反馈大多是不知道怎么用而求助,或者不能满足需求,这些意见成为麦客早期产品迭代的重要参考。

如今麦客有超过10万用户,分布在互联网、教育、电商、金融等领域,应用方式五花八门,有做试驾报名的,有做考试测验的,还有的不太用表单,而是把麦客当成联系人管理和分享工具。

在与用户的沟通中李卉发现,对工具的需求并非处于待培养,而是处于亟需满足的状态,产品的开发跟不上用户的需求,是李卉目前最着急的事情。李卉计划在今年秋天发布一个新的版本,在功能上全面加强,尤其在联系人管理方面,“规模会是现在的5倍”。同时在付费功能和开放接口上开始尝试—用户可以付费试用更高级的功能,以及可以在企业系统中接入麦客API。

表单设计 第4篇

1 Bootstrap框架

Bootstrap是Twitter推出的一个开源的用于前端开发的工具包。它由Twitter的设计师Mark Otto和Jacob Thornton合作开发, 是一个CSS/HTML框架。Bootstrap提供了优雅的HTML和CSS规范, 它即是由动态CSS语言Less写成。Bootstrap一经推出后颇受欢迎, 一直是Git Hub上的热门开源项目, 包括NASA的MSNBC (微软全国广播公司) 的Breaking News都使用了该项目。

Bootstrap中包含了丰富的Web组件, 根据这些组件, 可以快速的搭建一个漂亮、功能完备的网站。并且可以对Bootstrap中所有的CSS变量进行修改, 依据自己的需求定制代码。

2 动态表单设计思路

由于表单中元素的不确定性, 动态表单设计器必须能根据用户的需要, 自由的添加或删除表单中的元素, 并能通过发布给用户填写的表单来收集所需要的信息[2]。想要实现表单设计器, 可以像可视化编程环境中的控件拖放一样将已设计好的表单组件从组件库中取出放在系统界面的合适位置上, 最后保存生成动态表单, 表单保存成功后会在关系数据库中自动新建对应的数据表, 表名为该表单的拼音, 用于存储用户填写表单信息。动态表单实现原理如图1所示。

系统所涉及的关系数表包括表单表 (Form) , 表单组件表 (Element) , 组件值表 (Element Value) 。表单表中的字段有Id, Form Name, Description, Owner Id, Create Date。Form Name表示创建表单的中文名称, Description字段对欲创建的表单进行描述说明, Owner Id表示创建表单的用户Id, Create Date表示创建表单的当前时间。表单组件表中的字段包括Id, Form Id和Type Id。其中Form Id表示该组件所属的表单Id, Type Id表示表单中当前组件的类型Id, 如:Text, Radio或Checkbox。组件值表中包括的字段有Id, Element Id, Element Name, Element Value。其中Element Id表示组件Id, 记录值为表单组件表 (Element) 中的主键Id值, Element Name表示表单中组件的name属性值, Element Value表示表单中组件的value属性值。用户在表单的设计过程中将填写的动态表单中元素添加到表单组件表中, 使系统能识别什么元素存储于什么表中。Types表是存储常用的不同组件的类型, 类型可以是:“text”, “radio”, “label”, “checkbox”, “select”等类型。Element Value则用来存储这些元素组件相应的value值。

3 具体功能实现

利用Bootstrap框架设计出用户界面, 前台利用特定格式的字符串传给后台, 后台再将字符串中需要的部分存入关系数据库的四个表中。即用简单的置换型模板引擎实现将指定模板内容 (字符串) 中的特定标记 (子字符串) 替换, 便生成了最终需要的动态表单。特殊格式的字符串如下:

字符串第一项为当前的表单名称

然后分别存入Form表, Element元素表, Element Value元素值表中。

默认传输数据为:Checbox, 复选框, 3, 选项一, 选项二, Select, 下拉菜单, 3, 选项一, 选项二, Radio, 单选框, 2, 选项一, 选项二, label, 文本框, input1, text, input1.

3.1 设计表单

管理员可以设计表单, 由于表单元素的不确定性, 由用户来添加或者删除表单中的元素。目前只可以有文本框, 下拉框, 单选框和多选框拖入 (或点击) 表单, 在表单区域, 单击相应的字段会弹出属性设置对话框, 用户填写相关的信息后点击“确定”按钮即可保存设置;若不需要一些表单字段, 可以鼠标左键将相应的字段拖到控件区域便可移除。设计好后保存, 保存成功会在右下角出现消息提示。前台根据特定格式的字符串, 传给后台, 然后进行向四个表中填写数据。

3.2 发布表单

管理员可以将设计好的表单发布给指定用户填写, 可以选择表单以及何人可以填写表单等, 发布后, 存入Task表中, 其他用户即可在待填表单中进行填写提交。

3.3 导出表单

管理员可以将用户填写的表单导出成Excel, 利用SQL语句关联表单将信息导出。

4 结语

文章主要阐述了动态表单设计器的设计思路和实现, 基本的用户设计表单和用户填写数据功能已经实现。该系统能够满足用户对信息管理系统中表单形式不断变化的要求, 并且通过动态表单系统收集用户填写的信息。下一步的研究方向为用户多次填写表单后, 表单的数据遗留问题。

参考文献

[1]洪英汉, 刘竹松, 龙桂和.基于SSH框架的动态表单设计与实现[J].现代计算机:下半月版, 2009 (9) :186-188.

表单设计 第5篇

1、更高大的输入框

增加输入框高度,加粗字体,可以让网页上的输入框看起来更容易填写和阅读。随着电脑显示器尺寸变大,这样的输入框也显得更大气。

2、添加选取器。

与其让人输入不如提供选择,选取内容只要点几下,就自动填充进输入框,不但可以减少输入障碍,还能预防出错。可以把任何希望的数据做成选取器,比如日期、颜色、地址或者历史记录等等。

举个例子:前面的“对方开户姓名”输入框,需要填写对方的姓名,如果对方名字里有汉字不认识该怎么办呢?于是我们可以加上一个生僻字的选取器,如图:

打开字库,可以根据模糊读音选取汉字填入输入框。另外,姓名输入框有校验,选取完成后不要忘记对输入框内容进行再一次校验。

3、预置文字。

采用预置文字来简化输入经常在手机上看到,现在在网页上也常使用。比如微博上发言的输入框,会保留你上一次未发出的内容,可以重新编辑。

在网上也会看到把“输入提示”与“预置文字”混用。当然,你怎样称呼他们都是可以的,但要明白这是两种交互方式。输入提示的目的是指导填写的,聚焦输入框后文本消失;而预置文字是属于待修改的正式内容,字体样式应与正式输入的样式相同,聚焦后文本是不会消失的。

当表单输入遇到选填与必填难以抉择时,考虑预置文字会是一个不错的折中方案。比如在一个申请付款的表单中,对用户来说主要需填写的是“对方账号”和“付款金额”,付款说明是一个选填项。但对系统来说,又必须采集付款说明,作为交易凭据之一,这个付款说明怎样处理呢?比较下面3个方式,显然复选框的方式不适合,因为用户若不填写我们就无法收集到数据,而输入提示的方式还是需要用户去填写,所以意义也不大,

折中了业务和用户两方面,预置“转账”两字还是不错的,不想填写的人完全可以跳过它。

4、设备读取。

摄像头读取、语音输入……最近,各种智能录入方式在手机上甚是流行,网页上也不甘心示弱,纷纷添加了这些功能~还有人脸识别,不知道不久后会不会流行起来呢?

5、设置输入属性。

现在比较靠谱的还是Html5提供的一些表单类型属性。除了限制输入类型之外还有一些有意思的设置。拖放属性,可以从桌面上直接拖进相应的输入框里。在邮箱中拖入附件,若主题为空还可自动填写主题。而range和number属性,可以直接替换掉输入框,对数值输入很有用,在chrome里显示如图:

6、额外输入渐进展开

当遇到需要增加高级或额外的选项时,可以采用即时添加删除的方式。不需要填写时,可以完全忽略,需要填写时点击一下就会显示。

7、利用输入反馈。

除了校验填写是否正确,输入反馈也可以帮助简化用户填写,其中有不少窍门。

比如在手机充值表单里,需要重复输入一遍号码才能确认提交。再重复输入一次,好像认定你肯定会出错。增加了号码归属地的反馈(配合历史记录)可以避免这种让人有点烦躁的方式。

下面这个例子将校验获得的推荐邮政编码填写到输入框中,让电脑变得更聪明一些。推荐的内容减少了思考和填写过程。

在反馈的显示方式上,也值得挑剔一下。比如数值输入框里被输入了字母,格式错误。如果对最简单的提供错误提示不满意,可以试试让输入的字母先显示1秒,然后即被删除,这样比单纯的限制输入类型要更容易理解。另外,还可以自动修改显示格式:号码输入完成后,自动增加空格,可以方便阅读。在需要强调时这样使用还可以提示用户进行检查,但是在普通的输入框中就不需要那么复杂了。

给金额自动补全小数,比如下面的例子服务费是有小数的,自动补全金额的小数,可以消减顾虑,而且挺有趣。

基于Web工作流表单的设计与实现 第6篇

工作流是一类能够完全或者部分自动执行的经营过程, 它根据一系列过程规则、文档、信息或任务能够在不同的执行者之间进行传递与执行[1]工作流中表单是为流程节点提供工作界面, 通常将设计好的表单绑定在对应的人工节点上, 流程推动到某个节点时调用其对应的表单。在以往开发工作流管理系统中, 常侧重于工作流引擎、用户权限及流程管理等问题, 而轻视与用户紧密关联的工作界面。良好的工作界面直接影响着系统的可用性, 传统上根据用户需求将设计好的表单固定在工作流管理系统中, 虽然当时能较好的满足用户要求, 然而随着用户需求或企业业务逻辑的不断变化, 该表单由于修改困难、可扩展性差等问题将无法适应这种变化, 因此, 在工作流管理系统中亟需一个表单设计器。表单设计器虽然能满足用户设计表单的需求, 但将该自定义表单集成于工作流中, 由于自定义表单的可变性和工作流流程推动接口的复杂性, 传统的流程推动模型必须做修改以适应这种柔性的变化。针对这个问题提出一种基于表单的流程推动模型, 它实现了自定义表单和工作流集成的要求, 增强了工作流管理系统的柔性和可扩展性

1 工作流表单信息模型

过程定义:一个过程是定义好的一个有向图p= (A, L) , 这里A={ai i=1, …, N}是活动集;L<{ (aiaαj) ai, aj∈A}是链接集, 一个链接如 (ai, aj) 表示第i个活动是第j个活动的前置活动。

表单定义:一个表单Fk (k=1, …, K) 是由一系列的表单单元组成, 每个表单单元由最基本的表单元素组成, 即Fk={Um m=1, …, M}, U表示表单的基本单元, Um={fi i=1, …, L}, f表示表单的基本元素[2]。

表单的基本元素主要包括控制信息和用户信息, 控制信息主要保存流程执行的控制数据;用户信息是一个流程活动节点需要处理的主要信息, 表示每个活动节点的详细内容, 由一系列数据域定义组成。

流程推动定义:依过程定义是由活动节点ai到活动节点aj的事件驱动, 按照预先定义的映射规则实现节点之间的状态转换和数据传递。

2 表单设计器模型

主要采用了Ajax设计, 客户端与用户交过程主要采用JavaScript脚本编写, 通过DWR (DirectWeb Remoting) 框架与服务器端进行数据交互, 以xml文档格式传递数据, 利用Dom技术实现文档解析, 将解析的数据存储到数据库中, 通过表单生成器生成一个Jsp页面表单。表单设计器结构图如图1。

2.1 表单设计器的数据模型

表单设计器中主要的两个表分别是表单Form和表单实例Form_In, Form用于表单设计信息的存储, 其表结构为:Form=〈IF, PF, XF〉, IF表示表单在系统中的唯一标识 (djsn) , PF表示表单的基本属性, 包括表单内码 (djid) , 表单名称 (djname) , 表单种类 (djlx) , 通常将一个流程定义为一个表单种类, XF表示表单显示的html字符串 (ntext类型) , 该字符串用于显示整个表单。Form_In用于实例化表单后表单实例信息存储, 其表结构为:Form_In=<IFI , MFI , FUD>, IFI表示表单实例唯一标识 (Form_In_Id) , 通常对应节点实例ID, MFI表示该表单实例属于哪个表单 (djsn) , FUD表示表单中需与用户交互的数据域控件所对应的字段。

2.2 可视化表单定制

让用户通过可视化界面设计表单, 该表单定制工具提供各种控件, 用户可直接拖拽控件至设计域中[3]。将所有控件定义为一个对象列表, 用户拖拽控件时在设计域中增加对应的控件代码, 所有控件代码是预先定义好用于显示表单的html代码。保存该表单时进行xml文档树封装, 封装的xml字符串为:〈root〉〈no〉表单的唯一标识IF〈/no〉〈no〉表单的基本属性PF〈/no〉〈no〉表单显示的html字符串XF〈/no〉〈/root〉, 利用DWR框架传递该xml字符串至服务器进行解析处理。

2.3 客户端与服务器端的交互

采用DWR框架将表单的xml文档树递交到后台进行xml解析和存储。DWR框架解决了Java方法调用的同步特征与Ajax异步特性之间的矛盾, 在异步模型里, 结果只有在方法结束后才有效。DWR把回调函数当成参数传给方法, 处理完成后, 自动调用回调方法。采用DWR框架需要进行以下配置。

dwr.xml配置与后台WebDesignDwr.java交互的JS:

配置客户端虚拟路径:

如此在客户端就可以调用服务器端的Java函数, 如:

WebDesignDwr.designdjsave (sXml, remessage) , sXml是封装的xml字符串。remessage是回调方法。

2.4 表单的解析、存储和生成

表单数据的解析和存储是通过服务器端designdjsave (sXml, remessage) 方法, 主要采用Dom解析技术对传递过来的xml树进行解析, 利用org.3c.dom.*中提供给Dom的各个接口[4], 实现对整个xml的文档树的遍历查询, 提取需要的IFPFXF信息, 存入数据表Form中。

表单实例数据的存储是利用JS取出表单数据域中实例数据与表单标识MFI, 取当前节点实例ID作为表单实例ID, 封装为sql语句, 递交至服务器执行, 将表单实例数据存储于Form_In表中。

表单生成主要是生成用户需求的Jsp表单页面。通过从数据表Form中提取IFXF, 利用文件输出流生成名为 IF、主体为XF的表单, 保存该页面表单, 当流程推动到绑定了表单的节点调用其对应的表单时, 直接调用该页面表单即可, 不需从数据库中取出数据动态生成一个表单, 提高了系统运行效率。生成表单之前应在表单设计器的根目录下新建一个名为该表单种类djlx的文件夹, 用于存放该流程的所有页面表单。

3 基于表单的流程推动

工作流过程的运行实际上就是过程中的各个活动节点按照一定的逻辑规则依次执行, 而活动节点的执行主要就是由活动参与人员对该活动节点的表单进行处理的过程。因此在定义过程时需要将定义好的表单分配给过程的各个活动节点实现绑定, 在这些活动节点中对具体的表单进行处理, 从而驱动整个流程的运转。

基于表单的流程推动介于表单和工作流引擎之间, 提供表单及工作流引擎的各种接口, 流程推动关键点在于表单处理数据的方式及工作流引擎根据表单处理结果进行路由的选择, 以此来设计表单与工作流引擎之间的映射规则。映射规则定义了如何按照流程中定义好的路径根据表单所绑定的节点类型由一个活动节点推动到下一活动节点。不同的节点对应工作流引擎中不同的推动方法, 节点和工作流引擎之间是通过推动函数来实现映射, 推动函数可为表单的交互提供接口。映射规则不仅要实现节点类型与推动函数之间的映射, 而且根据不同的推动函数调用不同的工作流执行服务, 实现推动函数与工作流引擎之间的映射, 最终实现工作流节点的状态转换和数据传递的目的。这种推动模式完全面向用户所设计的流程, 当流程节点类型及表单结构发生变化, 按照映射规则所提供的接口很容易实现推动方式的转变。这种基于表单且面向应用的流程推动, 改变了传统的把表单以硬编码的方式固化在工作流管理系统中的流程推动模式, 体现了系统的结构柔性。

3.1 人工节点类型及推动方法

工作流中人工活动节点是流程与表单绑定的一个常用的节点。这种类型的活动需要具体的人员参与, 是流程在流转过程中人机交互的一个活动。在这个活动中允许设置当前活动需要展现的工作流表单信息, 设置这个活动的参与人信息, 设置本次活动中各个参与人参与本次活动的方式。在这种类型上的活动, 可以根据人工节点类型的不同增加不同类型的处理动作, 通过增加不同类型的处理动作, 可以使流程的功能更加的丰富、灵活。

人工节点类型的元组表示为Steps={ FS, NS, CS, F-CS}, FS为首人工活动节点, NS为正常人工活动节点, CS为条件人工活动节点, F-CS为既是首人工活动节点又是条件人工活动节点。流程中不同的人工节点类型, 表单处理数据的方式是不同的, 所对应的推动方法也是不同的, 映射逻辑是由与节点类型相对应的推动函数来体现。推动函数的元组表示为Functions={firstNext () , stepNext () , conditionNext () , F-CNext () }。firstNext () 函数处理首人工活动节点的推动, stepNext () 函数处理正常人工活动节点的推动, conditionNext () 函数处理条件人工活动节点的推动, F-CNext () 函数处理既是首人工活动节点又是条件人工活动节点的推动。

3.2 映射规则

映射规则是基于表单的流程推动的关键部分, 是表单和工作流集成的主要体现, 由以下两个部分组成:节点类型与推动函数之间映射;推动函数与工作流引擎之间的映射。节点类型与推动函数之间的映射是通过自定义函数控件来实现的, 为了增加表单的可扩展性, 表单定制工具中设置了自定义函数控件, 在定义表单模板时可加入自定义函数控件, 由自定义函数控件声明表单模板所对应的推动函数, 实现表单所绑定的活动节点与推动函数之间的映射。自定义函数控件为表单与推动函数交互提供各种接口, 该接口以可选函数形式呈现, 是对系统中预先已定义好的推动函数Functions的声明, 可方便地根据活动节点的类型设置不同的接口, 从而实现活动节点与推动函数的映射, 具有很强的可扩展性。

推动函数与工作流引擎之间的映射是根据不同的推动函数向工作流引擎递交不同的参数, 从而执行不同的推动方法, 最终实现不同的节点类型对应不同的推动函数, 不同的的推动函数对应工作流引擎中不同的推动方法。推动函数与工作流引擎之间是通过建立关键字值来实现映射的, 关键字值的元组表示为Keywords={firstpush, push, conditionpush, cfirstpush }, 分别对应首人工活动节点、正常人工活动节点、条件人工活动节点、既是首人工活动节点又是条件人工活动节点。推动函数就是用于向工作流引擎提供关键字值和推动流程数据的, 如启动一个流程实例的流程ID、推动流程实例的流程实例ID和节点实例ID、逻辑值等。不同的推动函数递交的关键字值和流程所需数据是不同的, 根据推动函数提供的关键字值和推动流程的数据, 调用工作流引擎中相应的方法推动流程, 以此来实现推动函数与工作流引擎之间的映射, 从而实现流程的有效推动。

由此可见, 映射规则通过推动函数为与表单交互提供接口, 并根据节点类型向工作流引擎递交不同参数来实现基于表单的流程推动, 此外还包含表单实例的持久化DjSave () 函数的实现。

以下以首表单节点为例来说明映射规则实现的方法, 其中自定义函数控件中定义的映射结合了表单模板中的按钮事件来实现:

4 结束语

表单设计器对于工作流管理系统具有重要的意义, 不像以往表单工具通过手工编辑xml文件来描述界面和逻辑, 而是直接在IE中实现可视化的表单设计, 并提供了丰富的表现层控件, 轻松实现工作流系统中各种复杂的交互工作界面, 提高了工作流中表单设计与修改的柔性, 基于表单的流程推动模型也很好地解决了表单设计器与流程推动集成问题, 大大提高了工作流管理系统的易用性, 且具有可扩展性好、系统层次清晰、效率高等特点。

摘要:针对基于Web的工作流管理系统中用户对表单需求不断变化的问题, 设计了基于Ajax的表单设计器, 实现了表单的自定义。提出了一种基于表单的流程推动模型, 给出了工作流与该自定义表单集成的方法, 增强了工作流管理系统的可扩展性和柔性, 满足了对表单定义灵活性的要求。

关键词:工作流,表单,流程推动,Ajax,柔性,表单映射规则

参考文献

[1]范玉顺.工作流管理技术基础——实现企业业务过程重组、过程管理与过程自动化的核心技术.北京:清华大学出版社, 施普林格出版社, 2001

[2]肖宇, 许炜.基于表单和关系型数据库的工作流管理系统.华东科技大学学报 (自然科学版) , 2004;32 (11) :42—44

[3]王瑞霞, 隋宏伟, 刘弘.基于XML的表单设计器构件的设计与实现.计算机应用研究, 2007;24 (7) :183—185

表单设计 第7篇

关键词:即插即用,可扩展标记语言,可扩展电子数据表单,卫星模块

0 引言

目前,随着军事战略的不断调整和航天技术的不断进步,卫星快速组装以及模块在轨更换已经成为未来天基平台发展的一个主要方向[1]。由于即插即用技术在在轨模块更换、在轨组装、快速响应战术卫星等方面具有广阔的应用前景,对即插即用卫星相关技术的研究已经成为各国卫星发展的重要组成部分[2]。

为使卫星模块具备即插即用特性,需要一种有效的方法完成即插即用模块的自我描述,从而使各模块能够自识别及自适应。然而,传统的电子表单TEDS(Transducer Electronic Data Sheet)在接口模块硬件FLASH中采用二进制数值存储,数据表中每项的内容对应于FLASH中的某个或某几个存储单元,这种方式下电子数据表单的存储格式缺乏必要的规范性和自描述性,给电子数据表单的读/写和应用带来较多的不便,无法适应空间即插即用电子设备的灵活性。为解决该问题,参照TEDS设计思想[3]和卫星特点,本文提出一种基于XML的可扩展电子数据表单xTEDS[4,5]设计方法,以有效完成即插即用模块的自我描述。本文首先依据XML文档编写规范以及即插即用模块要求设计出相应的XML Schema;然后以卫星太阳能帆板模块的更换为例,讨论帆板正常工作所需的通信接口;最后依据XML Schema及太阳能帆板的接口需求设计出帆板的XML文档。

1 XML Schema设计

XML文档设计者通过XML Schema指定一个XML文档所允许的结构和内容,并可据此检查一个XML文档是否是有效的。XML Schema定义一类XML文档需要包含的术语,包括可出现的元素及属性,它们之间的关系,它们中会有什么类型的数据以及其他限定约束信息[6]。在x TEDS中,定义一个根元素“xTEDS”,所有元素都可作为子元素被直接嵌套进去。图1显示xTEDS的结构和全部元素及其之间的嵌套关系。

根据xTEDS的设计要求,下面将详细描述即插即用卫星中即插即用模块的xTEDS的约束文档即Schema的设计过程。

1.1 根元素及Schema总体设计

首先确定Schema文档的根元素为xTEDS,该元素为全局元素(Global Element)。然后根据完整的xTEDS要求,设计出根元素的属性及子元素,具体结构如图2所示。

图2描述出xTEDS中应该包含的属性及子元素,这就约束了一份xTEDS可具备内容模型:name、version及description属性;Application和Device元素中的一种(组件只能为硬件或者是软件);Interface元素,并对Interface进行了惟一性约束。其中,子元素Application的数据类型为ApplicationType(该类型具体定义在后文中给出),Device的数据类型为DeviceType;Interface的数据类型为InterfaceType。其框图下方的标记“1…∞”表示xTEDS中可以有1个或者多一个Interface元素。这些子元素的内容模型可以在后面给出定义,使得文档具有很强可读性及层次性。

1.2 Application和Device元素

Application元素主要用于描述软件类型,其属性包括名称、类型、制造商等,其数据类型为ApplicationType。该类型中含有一个属性框及一个子元素框——Qualifier。属性框中给出对Application可用的描述项,例如,name,kind,id等,并约束这些属性的类型。而子元素Qualifier的数据类型为已定义的QualifierType,其数据类型内容包括:name,value,unites。Device元素与Application元素类似,只是用于描述硬件类型。Device的内容型以BaseComponentType为基础,并补充属性及子元素。DviceType中补充了Location和Orientation元素,分别用于描述设备的位置及定向信息,其数据类型分别为LocationType和OrientationTyoe。

1.3 Interface元素

Interface元素用来描述即插即用卫星的各个模块接口。xTEDS设计的重点及难点是如何定义Interface元素中的内容使得满足即插即用模块自识别、自组织要求。首先,每个Interface需要基本属性信息,进行自身信息描述,如名称,机器识别信息等。也可包含描述信息,对该Interface进行详细描述。其次,在即插即用模块能够正常工作之前,星上电子系统需要了解各模块的详细信息,例如器件制造商、材料、性能参数,变量信息等。对某些特别模块(如,照相机等)需描述其位置、方向信息。最后,xTEDS必须具备描述自身接口的能力。如即插即用模块可接受什么样的指令,能够提供什么样的数据服务等。假设即插即用模块为本文研究的太阳能帆板,那么需要描述帆板可提供的服务及可接受的控制指令等信息。

综上所述,对元素Interface设计,主要包含三类信息:属性、子元素以及惟一性约束,数据类型为InterfaceType。InterfaceType主要包括三大类。第一类为属性,包括name,id,description及extends。第二类包括:Qualifier,Location,Orientation以及Variable,前三个在前面已经介绍,将在后面介绍Variable元素。第三类包括:Command,Notification,Request三个子元素,具体含义如表1所示。

2 太阳能帆板xTEDS文档设计

根据上述XML Schema的设计,以太阳能帆板模块为例,设计其相应的xTEDS,将太阳能帆板XML文档按照内容划分为三个部分:根元素段、即插即用模块类型段和接口部分。其中根元素段用于描述根元素、相关的名称空间以及对应的XML Schema文件位置;即插即用模块类型段用于描述模块为应用软件或硬件设备;接口部分用于与星上电子系统进行通信。太阳能帆板的xTEDS结构如图3所示。

结合以上所述,太阳能帆板模块的xTEDS具体设计如下:

2.1 根元素

第一部分包含XML声明语句、名称空间以及遵循的XML Schema文件地址。其中第一段声明文档遵循的是XML 1.0版本以及文档所采用的编码方法,第二段给出根元素名及文档中的元素名所处的名称空间,第三段为文档遵循的XML Schema文档。具体代码如下:

2.2 即插即用模块类型

第二段为即插即用模块类型描述段,用于描述模块类型及部分参数。代码描述设备名称、类型等,还包含三个限定量。具体代码如下:

2.3 通信接口

根据XML Schema中对interface元素的约束,可完成各个元素的设计:

(1)Variable元素

太阳能帆板与卫星间的数据传递,在传递电流或电压信息时,需先定义相应的变量,以在后面的操作中使用此变量。相应电源系统XML代码:

上述代码定义两个变量:SAUnregVoltage及SAOperationState。分别用来描述蓄电池电压以及电池阵工作状态,每个元素中利用属性信息描述变量的单位、格式及类型等,变量SAOperationState还有一个子元素,用来列举枚举值,将静态名称与离散数值结合起来。

(2)Command元素

Command元素中只有CommandMsg是必选子元素,使得上述控制命令符合规范且简单明了。其具体含义为:对电源系统发送控制命令将太阳能帆板展开。

(3)Notification元素

Notification元素订阅信息描述,具体含义为:电源系统周期地向应用软件发送其状态信息,包括:“时间”、“Subs”、“太阳能电池阵温度”、“太阳能电池阵电流”等,也就是数据订阅的实现过程。

(4)Request元素

Request元素请求信息描述,具体含义为:应用软件向电源系统发送控制命令“获取设备温度”,即插即用模块回复信息“设备温度回复”,包含的数据为“时间”、“Subs”、“设备温度”。

3 结语

本文提出一种用于解决即插即用卫星各模块自识别及自适应问题的接口描述设计方法。研究基于XML的可扩展电子数据表单xTEDS设计方法,能有效完成即插即用模块和接口的自我描述,使传感器信息更清晰,更易解析。文中并以太阳能帆板模块为例,设计出其xTEDS,研究表明基于XML的可扩展电子数据表单xTEDS能够准确而又方便地完成即插即用模块描述,提高星上电子系统操作电子数据表单的效率。下一步的研究重点是进行软件设计,真正实现即插即用模块的即插即用。

参考文献

[1]林来兴.小卫星技术发展和应用前景:兼谈卫星设计思想演变[J].航天器工程,2006,15(3):14-18.

[2]赵亚雄,李新洪,郝大功.基于XML的卫星即插即用接口模块设计[J].装备学院学报,2012,23(2):68-71.

[3]IEEE Standard Board.IEEE Std 1451.2-1997IEEE standard for a smart transducer interface for sensors and actuators:transducer to microprocessor communication protocols and transducer electronic data sheet (TEDS) formats [S].US:IEEE Standard Board,1997.

[4]CANNON Scott.Responsive space plug & play with the satellite data model,AIAA 2007-2924 [R].Atlanta,Georgia,US:AIAA,2007.

[5]刘建园.基于IEEE 1451_2智能传感器研究与设计[D].秦皇岛:燕山大学,2009.

表单设计 第8篇

1 系统的关键技术

1.1. NET技术

.NET框架是一种新的计算平台,它简化了在高度分布式Internet环境中的应用程序开发。.NET框架具有两个主要组件:公共语言运行库和.NET框架类库。公共语言运行库是.NET框架的基础,提供核心服务(如内存管理、线程管理和远程处理),而且还强制实施严格的类型安全以及可确保安全性和可靠性的其他形式的代码准确性。另一个主要组件是类库,它是一个综合性的面向对象的可重用类型集合,可以使用它开发包含从传统的命令行或图形用户界面应用程序到基于ASP.NET所提供的最新创新的应用程序(如Web窗体和XML Web services)在内的应用程序

1.2 FCKEditor

FCKeditor是一个功能强大支持所见即所得功能的文本编辑器,可以为用户提供微软Office软件一样的在线文档编辑服务。它不需要安装任何形式的客户端,兼容绝大多数主流浏览器,支持ASP.Net、ASP、ColdFusion、PHP、Java、Active-FoxPro、Lasso、Perl、Python等编程环境。

1.3 ADO.NET技术

本设计在连接数据库方面使用ADO.NET,ADO.NET是一组用于和数据源进行交互的面向对象类库,是在.NET编程环境中优先使用的数据访问接口。它提供了平台互用性和可伸缩的数据访问。ADO.NET增强了对非连接编程模式是支持,并支持RICH XML.由于传送的数据都是XML格式的,因此任何能够读取XML格式的应用程序都可以进行数据处理。

2 系统功能与数据分析

2.1 系统功能模块总体设计

本系统主要分为三个模块:报告模版管理模块、报告内容管理模块和标签管理模块。报告模版管理模块主要是增删改查报告模版;报告内容管理模块主要是对增删改查、打印、导出报告;标签管理模块主要是对标签和字段进行修改以及对标签和字段的绑定进行管理。

2.2 报告内容和报告模版ER图

图1为报告内容和报告模版ER图。

2.3 主要数据表设计

表1为报告内容表——ReportContent;表2为标签表——BookMark。

3 设计与实现

3.1 报告模版管理模块设计

报告模板管理模块包含两大部分:

3.1.1 列表展示报告模版

1)以列表的形式展现所有的报告模版,包含两个信息:“报告模版名称”和“是否为默认模版”,如果数据多于10条,将进行分页,即每页10条数据。

2)可以通过点击“报告模版名称”和“是否为默认模版”这两个列表头来进行内容显示。

3.1.2 新增、修改、删除、查找、参看报告模版

1)用户可根据需要导入Word格式的模板,可以在系统中进行编辑保存,具体流程见图2。

2)在模版编辑框中增删改表格,动态设置表格各种元素的属性,包括:单元格、行、列、文字。用户还可以在模版编辑框中插入图片,并设置图片的各种属性。

3)用户可以自定义报告模板内容的显示位置,通过插入内容标签的方式,让对应内容显示在对应标签的位置,设置的内容可以动态保存。

4)报告模版可根据需要删除,修改,模糊查找。

3.2 报告内容管理模块设计

3.2.1 报告列表展示

1)以列表的形式展现报告的四个信息:“报告编号”、“产品名称”、“生产日期”和“检验结果”。

2)可以通过进行升序或降序的内容显示。

3.2.2 新增报告内容

需要填写常规报告的27项数据,其中报告编号、产品名称、生产日期、抽(送)样单号、样品数量、检验类别、抽(送)样日期、验讫日期、检验结论、检验依据报告日期、批准人、审核人、主检人这几项是必填项,具体流程见图3。

3.2.3 可以保存、修改、删除、查找、参看、打印、导出报告

3.3 标签管理模块设计

1)展示、排序、查找、编辑标签数据,具体功能见图4。

2)对标签和后台数据进行动态绑定,并对绑定情况可进行动态管理,具体流程见图5。

4 结束语

面向质量检测业务的智能化表单系统的设计与实现旨在提供一套能让用户自定义报告模版格式的解决方案,实现了对报告模版的动态编辑,并通过数据标签动态绑定后台数据,实现报告模板的可视化、智能化管理,大大提高了系统的使用效率。

摘要:该文主要介绍了一种基于B/S模式,用于质量检测业务的智能化表单系统。重点介绍了报告表单的模板管理、内容管理、数据动态绑定等模块的设计与实现。系统实现了报告表单的动态设计,操作简单,易于管理,实现了质检报告的可视化、智能化处理。

关键词:FCKEditor,智能表单,质检报告

参考文献

[1]袁长春,王雷,万月波.基于自定义表单的业务一体化架构平台研究[J].江苏科技信息,2010(12):1.

[2]张蓓.面向数据仓库的智能表单系统的分析与设计[D].西安:西安工业大学,2009.

[3]Thangarathinam T.ASP.NET 2.0数据库高级编程[M].北京:人民邮电出版社,2007:21-35.

表单设计 第9篇

关键词:多功能电能表单表,电能采集技术,远程抄表系统

对于电能表采集中, 应用现代化技术, 设计多功能电能表单表远程抄表系统, 可以实现通过系统管理中心网络, 对电网内的公变用户、专变用户的多功能电能表进行实时监控, 具有实际研究价值。以下本文对此做具体介绍:

1 当前电能采集技术的发展现状

对于电力企业中, 其当前电能采集技术还具备以下优缺点, 需要改进电能采集技术, 才可以符合实际工作需求。

1.1 传统技术弊端

在实际用户电能表抄表工作中, 由于用电用户数量众多, 且地理位置分散的弊端, 不仅使得传统用户电能表的抄表中需要投入大量人力、物力、财力, 且抄表饿时间长, 对于电表用电量也易出现漏抄、错抄的情况;还有就是降低用电数据统计计费的及时性, 为入户抄表人员和用户带来不便。

1.2 现代化技术优势

设计多功能电能表单表远程抄表系统, 在端下行通道中, 应用RS485总线技术, 实现对电能表数据信息的采集功能, 对于无线抄表终端的上行通道, 可以采用基于GPRS的无线网络, 实现远程传输电能表单表数据的功能, 并且也可以根据用户的电表交费情况以及用户的用电负荷大小, 通过多功能电能表单表远程抄表系统系统的后台, 运程遥控送电, 具备智能性与人性化管理机制。

2 研究应用多功能电能表单表远程抄表系统的意义

设计多功能电能表单表远程抄表系统, 采用电力载波和电话通信方式相结全的通信方形式, 兼有二者优点, 功能齐全, 成本低, 且多功能电能表单表远程抄表系统组织灵活, 采用高可靠、处理器功耗低, 运行稳定, 使用寿命长, 选择性强。电力载波系统直接利用电力网通信, 采用FSK载波通信方式, 数字电度表采用PIC16C73单片机实现高精度数字式电度表, 支持曲线数据采集功能, 每隔15分钟记录一个数据点。当系统中用户的剩余电量低于催费门限时, 将会发出警告, 采取短信的方式, 每15分钟发送1次, 将用户的表号以及电表的剩余电量发送给的指定用户, 共发送3次催费警告;且当用户剩余电量低于拉闸门限时, 将会有系统终端控制实现开关跳闸, 停止供电, 该系统具有实际应用价值。

3 设计多功能电能表单表远程抄表系统的步骤

3.1 需求分析

无线抄表系统中, 系统结构简单, 需要采用无线收发设备来传输数据, 且由于不需专门架线实现数据传输工作, 不仅节约大量人力资源, 更重要的是可提高抄表准确性, 供电管理部门能可以及时得到用户的电表数据信息, 电力用户不再需要与抄表者预约时间, 具有一定便利。

3.2 硬件设计

PIC16C73芯片具备低功耗、高性能的特点, 是CMOS8位单片机, 其寻址空间达到4K×14大小。PIC16C73单片机中设有专门的串行数据发送端口 (引脚RC5/SDO) 和相应的时钟信号发送端口 (引脚RC3/SCK) 。

3.3 系统结构体系

系统中, 采取采集器、集中器以及主机三部分控制, 软件控制其中的采集器与集中器, 主要通过市电网来传输数据信号。对于采集器则需要通过485线与各个电能表的基表相连, 主要用来负责采集以及发送电表数据。

3.4 软件设计

利用所学的单片机软件编程, 并在实验平台操作其程序, 在设计的图形中必须在实验室中操作将其流程实验成功。在多功能电能表单表远程抄表系统中, 为确保发送的短消息可以多承载用户数据, 故此可将系统的GSM模块定义成文本模式。

3.5 程序实现

设计多功能电能表单表远程抄表系统, 可以通过编程采取软件滤波方式, 提高系统内电表数据通信的可靠性。发送程序的软件编程如下:

4 结论

综上所述, 针对当前用户电能表抄表工作, 转变传统人工方式, 应用电子技术结合数字通信技术、计算机网络技术, 可以实现对多功能电能表单表的远程自动抄表功能, 具有实际应用价值, 值得在实际中推广应用。

参考文献

[1]朱兆优.RS-485总线在远程自动抄表系统中的应用[J].东华理工学院学报 (自然科学版, 2012, 7 (18) :41-42.

[2]张锐.基于多载波扩频理论的低压电力线数据通信技术的研究[D];哈尔滨理工大学, 2011, 14 (12) :76-77.

[3]朱兆优, 林刚勇, 王海涛.CAN总线与LPT通信接口设计的与实现[J];东华理工学院学报 (自然科学版) , 2010, 21 (14) :56-57.

表单设计 第10篇

随着中国经济快速发展、金融领域开放程度不断加大, 越来越多保险、银行等金融客户不愿意对非核心业务系统进行投资, 而更愿意把非核心业务外包给第三方专业化服务公司来降低公司成本, 这就为金融业海量可变数据处理业务迅猛发展创造良好机遇, 市场迫切需要基于金融业的电子表单网络化生产管理系统。根据权威机构预测2010年海量可变数据输出处理市场规模达到50亿人民币, 预计2015年市场规模超过270亿人民币, 市场规模年增长速度超过40%。

2、需求分析

根据金融业海量可变数据处理应用特点 (如保险合同单、信用卡对账单、基金交易对账单、证券帐户投资报告等) , 研究集电子表单技术与网络化分布式打印生产管理功能于一体的金融业解决方案。根据金融领域海量可变数据复杂处理要求提供网络化分布式打印模式, 允许多个系统客户端构成海量并行处理能力同时处理海量生产数据, 同时支持多台甚至几十台的高端打印机, 构成海量的集群打印生产能力;实现打印作业智能重组, 不仅可以最大化利用打印设备性能, 提高生产效率, 实现高端打印机接近100%打印输出效率, 比如速度指标为105PPM (Pages Per Minute) 佳能IR105高端激光机实际打印速度达到或者接近105PPM, 还能通过有效提高设备利用率方式减低臭氧排放, 减少能源消耗, 实现低碳环保可持续的生产模式。

3、系统概述

实达迪美公司针对金融行业用户的海量可变数据打印 (Variable data printing, 简称VDP) , 研发出基于金融业的Digi Flow电子表单网络化生产管理系统, 为金融客户提供海量数据输出处理业务流程外包 (BPO) 服务, 实现网络化分布式打印生产、电子邮件、电子副本等多种可变数据输出处理模式, 提供纸质单证、电子账单外包服务。该系统作为一个可视化电子表单网络化生产解决方案, 是集电子表单可视化设计、表单动态合并、生产流程管理、生产监控、网络化分布式生产、报表定制、精确自动计费、结算收费管理、查询等功能于一体的电子表单解决方案。

4、关键技术创新点

该系统采用多项新技术实现多个关键技术技术突破, 主要有电子表单可视化设计技术、网络化分布式打印生产、打印作业智能重组技术、智能防重打技术、印量计量自动精确计费技术、电子表单动态高速合并处理技术等, 主要的关键技术创新点包括以下6个方面:

1) 电子表单可视化设计技术:系统可以根据金融业的实际需求, 采用可视化所见即所得的模式设计精美的电子表单 (保险单、对账单、报告单等) , 并可根据数据内容进行复杂的模版页面控制;

2) 网络化分布式打印生产技术:系统的打印生产子系统采用C/S结构, 可通过在多台PC上布署多套系统的客户端, 实现生产数据网络化分布式处理与打印, 从结构上最大化支持生产数据并发处理能力实现集群处理模式, 可以同时支持多达几十台的高端打印机构成海量的高端打印机集群打印生产能力;

3) 打印作业智能重组技术:可根据实际需要, 对打印作业进行成批、成套、大作业、小作业模式重组输出, 减少打印机作业纸盒切换次数, 最大化利用设备性能、简化生产操作;

4) 智能防重打技术:生产数据处理之前自动与已生产的历史数据进行匹配校验, 防止单证重复打印生产, 满足金融行业生产数据严格控制要求, 同时能够有效避免重复生产等质量事故;

5) 精确自动计费与集中结算管理技术:系统具有精确的印量计量功能, 不仅可以精确计量网络化分布式生产的打印印量, 还能根据系统配置的打印业务收费标准实现精确自动计费和集中收费结算管理;

6) 电子表单动态高速合并处理技术:单套系统客户端实现打印数据流与模板动态调用与合并处理速度超过1000PPM, 电子表单处理速度国内领先。

5、系统设计

5.1 模块化设计

该系统是C/S结构和B/S结构混合体, 根据打印应用特点, 为了更好控制打印设备, 在打印生产子系统采用C/S结构;根据信息查询应用特点, 采用B/S结构提供生产信息查询;后台采用中大型数据库微软SQL Server实现数据共享和生产信息集中管理[1]。系统按照软件工程要求[2,3], 采用低耦合、模块化、结构化的设计思路, 要求各个模块结构清晰, 功能相对独立, 便于系统开发、维护和升级。在系统实现上, 对于C/S结构部分采用Winodws SDK和Delphi为主要开发工具[4], 对于B/S结构部分采用Java为主要开发工具[5]。系统主要由以下模块构成:

1) 表单设计模板:通过可视化方式实现对电子表单上的文本、图像、条码、表格、图表等对象的定位及属性设置, 并输出模板文件;

2) 管理模块:提供智能防重打功能和打印作业重组技术, 支持成批、成套、大作业、小作业模式, 最大化利用打印设备性能, 提高生产效率;提供可视化树形层级结构界面, 并完成各种生产报表定制, 生产流转清单自动输出功能等;

3) 打印模块:可变数据格式的定义识别, 并把数据和模板动态合并输出到打印机;通过指令脚本对打印等输出过程进行控制;

4) 结算管理模块:实现精确自动计费和集中结算管理;

5) 分布式生产管理模块:支持C/S结构的网络化分布式打印模式, 实现分布式生产管理;

6) 查询模块:提供B/S结构的生产进度查询等功能;

5.2 系统架构图

5.3 系统部署结构图

6、小结

本项目是2010年度科技部中小企业创新基金立项项目, 项目研制成功后, 是国内厂商在海量可变数据网络化分布式打印生产管理系统的突破, 通过技术创新填补国内在该项技术上的空白。该项目可以广泛应用在金融海量可变数据处理领域, 如:在保险合同单 (保单) 、信用卡对账单、金融报表、证券交易单、基金对账单、保险投资报告等, 项目市场前景广阔。

摘要:针对金融业海量可变数据输出处理需求, 实达迪美公司研发出基于金融业的DigiFlow电子表单网络化生产管理系统, 该系统集电子表单可视化设计、表单动态合并、生产流程管理、数据安全、生产进度监控、网络化分布式打印生产、精确自动计费、集中结算收费管理、查询等功能于一体的电子表单网络化生产管理系统。

关键词:海量可变数据,业务流程外包 (BPO) ,电子表单,网络化分布式打印,精确自动计费

参考文献

[1]Gayle Coffman.SQL Server7参考手册.北京希望电子出版社, 1999

[2]张海藩.软件工程导论.清华大学出版社, 1998

[3]Robert C.Martin.敏捷软件开发.清华大学出版社, 2003

[4]吴天准.Delhpi7程序设计技巧与实例.中国铁道出版社, 2003:

表单设计范文

表单设计范文(精选10篇)表单设计 第1篇1 表单设计表单是数据处理的用户界面,用户通过各种表单来认识和使用数据处理应用软件。在开发一...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

确认删除?
回到顶部