zoukankan      html  css  js  c++  java
  • OA生成器的构思与实现数飞OA的实现

          说到OA系统,通常我们会想到发布公告、审批文件、文件管理等等。这些功能,到了开发人员手里就是存储数据、查询数据。用java开发OA软件有6年了,经常在做重复的工作,于是构思开发一个OA引擎,可以由普通的实施人员,在可视化的界面上配置系统属性、拖拉控件。有了OA引擎,就可以根据客户的个性化要求进行配置,在最短的时间内部署一套全新的OA。

         说的简单些,OA引擎就是一个OA生成器、OA开发工具、OA配置工具、表单引擎。我们构思用javascript定义表单,用java驱动XML,自动创建、修改数据库。JAVA程序通过读取XML配置文件,自动生成数据查询程序、数据录入程序、数据查询统计程序等等,用简单的技术实现引擎驱动的概念。
       
          表单引擎不仅仅是定义表单。传统概念的表单定义仅仅是定义布局、输入控件,在B/S系统里就是定义html,控件table和input。在数飞OA系统中,定义表单仅仅是表单引擎的一个步骤,这个步骤主要是用js控件html,通过点击拖动实现。这个步骤可以由实施人员或者最终用户来操作,尽可能的按照用户自己的意愿进行布局和加入需要的控件。跟数据表的交互由引擎完成,每加入一个控件我们自动对应一个数据表的字段,用户不需要涉及这一快。在保存表单的时候,系统将字段情况保存到XML,同时自己创建或者修改数据表。

          我们可以将一个功能模块定义成一个表单,比如人事档案。在定义界面的同时,可以选择使用那种权限类型,是否需要附件、是否需要使用编辑器、是否需要使用word控件、excel控件,甚至可以指定是否需要流程审批。这些属性同样保存到XML配置文件中,最终由JAVA驱动实现最终用户的要求。

          没有导入导出、查询统计的系统肯定不好用,于是我们的XML配置里加入了导入导出、查询统计的定义。

          对于高级用户的要求,比如需要指定数据表的名称、数据字段的名称、类型等,我们同样提供了定义功能。

          实现了以上的构思后,优势如下:
    1。可以用极少的时间去实现一个功能,不需要重复的编码,甚至不需要开发人员就可以实现
    2。所有的功能都出自表单引擎,代码集中,不需要花很多精力去维护很多代码

          深圳数飞尔科技致力于以上问题的研究,实现人员ken@soarwell.com,QQ472992,欢迎讨论。

    图一: 用js+html实现表单定义的界面

    图二: 系统自动创建数据表格式,用户也可以选择自己配置字段名称,显示属性等:

    图三: 定义表单保存后,系统自动生成对应的程序界面,不需要重新编译

    有兴趣的朋友,可以到http://www.soarwell.com/下载以上实现.

  • 相关阅读:
    reids 持久化
    center os 下redis安装以及基本使用
    MongoDB安装(Window)
    mysql中文乱码解决办法
    github托管代码
    MySQL表损坏修复【Incorrect key file for table】
    运维杂记-02
    配置ssh秘钥登陆
    nginx解决跨域问题
    运维杂记-01
  • 原文地址:https://www.cnblogs.com/soarwell/p/1413060.html
Copyright © 2011-2022 走看看