PsGrid组件技术 “PsGrid”组件,主要利用VCL(Visual Component Library)技术、COM(Component Object Model)技术编写而成,主要用于软件编制过程中的数据录入、数据显像和数据报表。任何软件的编制,主要是数据录入、后台处理、数据显像和数据报表,对于数据的后台处理没有任何办法进行优化,但数据的录入、显像和报表却有一定的规律可循。传统的数据录入多是用无数的编辑框(Edit)、组合框(ComboBox)、多选框(CheckBox)等堆砌而成;不但耗时耗力,而且控制分散;界面也不友好。数据显像和数据报表也都存在同样的问题,不但增加了编制人员开发过程的繁琐程度,而且用户在使用过程中也会出现厌烦和不易使用的感觉。
“PsGrid”是利用组件技术(即Component Object Model)设计而成的一个中间件,因此能够在任何支持COM的环境中使用。本组件集合Microsoft Excel和Microsoft InfoPath的功能于一身,却又比他们更加灵活,更容易和软件主体相结合。使用时既能实现数据列表显示、数据排序、数据分组以及数据报表等常规功能;也可以设计成任意格式、风格的表单使用。基于“PsGrid”组件设计和编写的合理性,使其能够和软件主体进行完美的结合;而且组件控制集中、功能丰富,大大减少了代码的编写量,同时提高了软件的可靠性;再加上“PsGrid”组件界面美观、操作简便,大大提高了软件的视觉友好程度和专业化程度。
将“PsGrid”组件嵌入到软件中进行开发使用,能够有效地解决传统软件设计中的问题(如录入界面设计繁琐、控制分散、重复代码编写量大等)。“PsGrid”组件基于行列概念设计而成,可根据需要在外部进行重新设计;利用携带的设计器(PsDesigner)可以随意的对行列进行合并、拆分;以及每个单元格的类型、颜色等属性进行控制;并可以设置公式以达到自动计算的目的;而且组件内部支持“Script”编程,使得软件在编制和维护过程中更加灵活和简单;设计完毕的组件可以和软件主体进行完美的结合,这样设计出的录入界面不但美观友好,而且控制集中灵活,可以在外部设置公式,或者利用内部“Script”编程功能进行数据校验等操作,大大节省了开发成本和维护成本;由于设计完毕的组件可以达到和现实中的录入界面(如记账凭证、出/入库单、存/取款单等)一模一样的地步,使得用户在使用时更加简单和易于接受。同时,“PsGrid”组件自带的报表打印功能可以方便的预览和打印“PsGrid”组件的内容,简单快捷,打印效果和“PsGrid”完全一致,实现了所见即所得。本报表打印功能不仅可以对“PsGrid”组件进行完美的报表打印;而且能够对任何数据或文档(包括图片)等进行随意的报表打印,只需将数据传入组件中,即可达到所需的打印效果;并且可以随意设置页眉、页脚、元素风格等,功能全面,操作简便。为了和外部软件交换数据,本组件实现了多种文件格式(如CSV文件格式、XML文件格式、XLS文件格式等)的数据导入、导出功能,使得数据的保存、上报、下发以及和其他软件的接口都变得轻松快捷,在实现需求的同时,提高了开发效率,降低了开发成本;而且使后期的维护工作也变得更加简单。
 “PsGrid”组件功能强大、使用简单,利用它进行软件设计的优点是:
1、 外部设计
“PsGrid”组件拥有一个外部设计器(“PsDesigner”)。利用它可以对“PsGrid”组件进行随意的设置,单元格的合并、单元格的风格、公式的设置以及“Script”代码的编写,组件会根据设置在适当的时间自动对公式进行重算;并利用自身的功能对“Script”代码进行解析执行,无须外部环境的支持。利用外部设计功能,开发人员可以将主要精力放在软件主体的设计上(如后台业务逻辑等),而对于数据的显像、数据的录入以及报表等都可以在外部进行设计,无须开发环境的支持,甚至于一些简单的业务逻辑都可以在外部利用“PsGrid”组件提供的“Script”代码来实现,充分节省了开发时间和开发成本。
2、 界面直观
由于“PsGrid”组件功能的丰富性和“PsDesigner”组件设计器的灵活性,使得设计出的表格、单据效果完全符合真实的情况。图片的设置、边线的设置以及元素风格的设置等让视觉更加友好;各种单元格类型的设置使录入和显示完美统一起来。
3、 操作简便、控制灵活
“PsGrid”组件中行列的增加、高度宽度的改变、属性的设置、公式的编辑以及“Script”代码的编写都有相应的方法或函数与之对应,在软件中都能方便的使用和控制;且能在软件执行过程中动态进行改变。
组件在运行过程中的编辑、移动等操作都完全符合Windows软件的标准,使用户在操作过程中不会有陌生感,亲切、熟悉、容易接受。
4、 公式设置
“PsGrid”组件中可以为每个单元格设置公式,公式中可以利用其他单元格作为公式的元素,适当的时间(如公式中使用到的单元格数据改变时等),组件会按照需要取得公式,进行重算;省却了编程控制的繁琐,且更加可靠。
5、 内部“Script”编程
“PsGrid”组件是基于事件的,除了一些Windows的标准消息以外,还支持一些特有的事件(如CellValueChanged、CellWantFocus、CellLoseFocus等),这些事件将在软件设计过程中被充分的使用。
组件内部自带“Script”代码解析器,支持多种“Script”语言(如VBScript、JavaScript等)。开发人员只需要将代码写入适合的事件中(如上面提到的CellValueChanged)即可,当事件激活时,组件会自动取出相应的“Script”代码解析执行,无须开发人员额外的工作。利用此功能,开发人员可以将一些数据校验或简单的业务逻辑写入组件中,不但操作起来更简单,而且维护过程中也更加方便,无须频繁的修改软件主体,大大缩短了开发和维护时间,同时节省了公司成本。
6、 数据导入导出
“PsGrid”组件为了方便各种软件之间的数据交互以及数据的保存,提供了多种数据导入、导出方法;并且支持多种文件格式(如CSV文件、XML文件、数据库文件以及一些自定的文件)。在软件设计过程中,开发人员既实现了软件和外部系统进行交互的目的,又省却了编写大量代码去实现的工作。
随着软件项目的规模越来越庞大,软件的业务越来越复杂,对于一些重复的和没有创造力的工作,必然会被流程化、规则化、简单化的中间件所代替。随着竞争的激烈化,众多的开发公司和开发人员开始频繁的使用中间件来简化重复的工作,把更大的精力投入到了复杂的后台业务逻辑或更需要创造力的工作中;并且达到了很好的效果。既实现了系统的功能;又缩短了开发时间,降低了开发和维护的成本。