HS系统开发模式介绍6317.docx
《HS系统开发模式介绍6317.docx》由会员分享,可在线阅读,更多相关《HS系统开发模式介绍6317.docx(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、HS系统开发模式文档类别管理规范文档编号T03-00003-050205来源部门技术部研发部门应用范围技术部保密级别修订历史记录日期版本说明作者2005-3-221.2修订01:将BD对象的维护接口将自身往DA传递,更新为传递直接参数,即传递需要的数据属性参数。董应群2005-2-51.0Create董应群目 录1、目的22、系统命名空间的命名体系23、系统中的对象数据组织模式44、系统中的对象数据的处理方式55、HS信息处理模式原理图116、对象数据类基本接口127、DS层信息处理模式138、UI层的检测逻辑实现规则149、代码示例151、 目的1.1 规范化系统的开发模式;1.2 规范化系
2、统中对象的组织;1.3 提高系统的开发效率;1.4 提高系统的维护效率;1.5 降低系统的BUG率。2、 系统命名空间的命名体系在HS环境中进行对象和工具集的再次组合的体系。便于合理地组织各类对象和个性化工具集合。2.1 基本命名体系所有的HS环境中的对象和工具全部在Hotsales命名空间下。按如下形式进行展开:Hotsales.子系统命名空间/全局共享层次空间.下级子系统命名空间/系统对象逻辑层次命名空间2.2 全局共享层次命名空间2.2.1 Hotsales.SystemFramework /全局系统框架命名空间,在子系统中也可以提供自己的系统框架命名空间。2.2.2 Hotsales.
3、Common /全局系统工具集合命名空间,在子系统中也有自己的通用工具集合命名空间。2.3 系统对象逻辑层次命名空间具体层次描述见“T03-00005HS软件系统的实现规则.doc”层名命名标识层描述备注业务外观层BusinessFacadeBusinessFacadeBF提供业务处理的集成化接口,起UI层和业务逻辑处理层的交互代理。业务规则层BusinessRuleBusinessRulesBR系统中个性化业务逻辑处理中心采用复数形式业务数据对象层BusinessDataBusinessDataBD系统中业务数据的对象层具体子系统的通用层CommonCommonCM系统中的工具集合体数据访问
4、层DataAccessDataAccessDA系统中数据访问层,是对象化数据与关系型数据的交互代理。数据存储层DataStoreDataStoreDS数据处理层,提供存储过程处理/访问数据,甚至包含部分业务逻辑的处理。在DB中实现系统框架层SystemFrameworkSystemFrameworkSF系统框架层,提供系统配置信息的处理系统通用层SystemCommonSystemCommonSC系统通用工具集合Web层WebWebUI系统中用户接口,提供页面逻辑的处理,结合业务逻辑进行部分离散业务逻辑的处理。服务器端处理工具ServerSS各类自动化性质的工具的服务器端处理工具集合Web方式
5、提供的服务HttpProviderHP采用WEB方式提供服务的工具集合2.4 HS的所有系统中各子系统命名空间总揽该信息需要与“F05-00006系统架构.xls”中的命名空间保持一致。子系统名称及编号、代号命名空间头部备注人事管理 M01、HotHRHotsales.HR目前主要包含企业组织结构、人员系统管理 M02、HotUM*Hotsales.System系统体系结构、权限等管理业务处理 M03、HotBizHotsales.Business销售订单(业务)、合同管理销售管理M45 SaleManageM04、HotSaleClewHotsales.SaleManageHotsales.
6、SaleManage.ClewHotsales.SaleManage.Chance销售线索、销售机会M05、HotSaleChance客户管理 M06、HotCustomerHotsales.CustomerInfo客户资料管理(涉及全面客户资料:客户、供应商等)服务与支持 M07、HotServiceHotsales.Service服务与支持财务管理 M08、HotFinanceHotsales.Finance财务管理办公基础辅助工具T00T01、HotSMSHotsales.OA.SMS短信服务提醒服务(通过内部消息、短信、邮件来实现)内部消息服务系统事件工作流(目前主要涉及到审批流和审批
7、工具)工作计划(包含计划安排,同时调用提醒工具)邮件工具(群发、定向发送)T02、HotREMINDHotsales.OA.RemindT03、HotMESSAGEHotsales.OA.MessageT04、HotSEHotsales.OA.SystemEventT05、HotWFHotsales.OA.WorkFlowT06、HotWPHotsales.OA.WorkPlanT07、HotMailerHotsales.OA.MailerT08、HotGTaskHotsales.OA.GeneralTaskT09 HotFaxHotsales.OA.Fax传真管理中心内部交流T20、HotA
8、dviceHotsales.OA.AdviceCenter建议中心T21、HotNewsHotsales.OA.NewsCenter新闻中心T22、HotbbsHotsales.OA.BBSBBS产品管理 M09、HotProdHotsales.Product产品管理市场管理 M10、HotMarkHotsales.Marketing市场管理系统设置 M30、SysSetupHotsales.SysSet系统设置管理系统框架 T90、HotSystemFrameworkHotsales.SystemFramework系统框架通用工具 HotCRMCommonHotsales.Common通用工
9、具编号规则:1、 M开头,企业信息化管理系统2、 P开头,企业信息化生产过程管理信息系统,车间生产管理、生产跟踪3、 E开头,企业信息化工程技术子系统,如,CAD、CAPP等4、 T开头,企业信息化工具系统5、 S开头,企业信息化管理集成系统2.5 HS体系中的商用系统代码集成商用系统编号代号名称S01HotCRM客户关系管理系统3、 系统中的对象数据组织模式3.1 系统中特定对象数据采用两类数据对象进行封装和传递。3.1.1 存放单一对象信息的特定对象数据,采用实际的对象,对象的属性是该对象对应的HSF规范视图的所有属性和特定大字节属性(具体定义见“T03-00007HS DB管理规范.do
10、c”)。命名规范为:XXData3.1.2 存放多个对象信息的对象集合数据,采用DataTable对象来存储该对象集的列表数据。其中不能包含特定的大字节属性。命名规范为:XXTable3.2 用于UI显示的信息传输模式所谓信息传输模式:指函数参数的类型范围。在UI中显示的信息仅仅来源于两类信息载体,DataTable和特定的对象。3.2.1 用于数据表格/DataGrid、下拉列表框、列表框、控件数组等信息显示,采用通用DataTable作为信息的载体进行信息的传输。信息的传输方向:“DSUI”;3.2.2 用于非上述页面元素的显示,采用特定的对象作为信息的载体进行信息的传输。信息传输方向“D
11、SUI”3.2.3 特定统计性质的数据的显示,可能来源于DataTable或特定的函数参数,甚至函数的返回值。3.3 非UI显示(逻辑处理需要)的信息传输模式用于逻辑处理需要进行信息的获取,可以根据需要进行信息的传递,但一般采用“用于UI显示的信息传输模式”。特殊情况根据需要用户可以自行决定信息传输模式。4、 系统中的对象数据的处理方式4.1 系统中任何对象都对应一个对象数据类,所有特定对象信息的传输是通过该类的对象进行传输的。该对象的属性是该对象对应的数据表的所有属性,和该数据表对应的视图扩充过来的属性。4.2 与特定对象相关的类及其基本功能假设对象名为Object。层次类名功用Busine
12、ssFacadeObjectSystem提供UI需要的所有个性化接口,包含简单的参数规范性检测。一般没有属性,纯粹的方法封装体。BusinessRulesObject提供个性化业务逻辑处理引擎。没有参数检测。一般没有属性,纯粹的方法封装体。BusinessDataObjectData提供当前对象的个性化属性封装体。属性范围:该对象对应的数据表的所有属性,和该数据表对应的视图扩充过来的属性。提供基于编号的属性获取接口,集成到类的初始化方法中。同时提供基于独立命名的基本信息维护接口(新建、基于主键的修改)CommonObjectTool与特定子系统相关的通用工具封装体。一般没有属性,纯粹的方法封装
13、体。DataAccessObjects提供与特定对象相关的数据表的访问接口。系统通过该层连接远程DB,执行DS层的SP,进行系统需要的数据处理。4.3 特定对象的个性化类4.3.1 系统中将提供基本属性和控制属性。在所有的属性获取接口中需要自己再生成SQL代码片段,应全面防止注入式SQL病毒。4.3.2 属性提供了该对象对应的数据表的所有属性,和该数据表对应的视图扩充过来的属性。即该对象对应的视图的所有属性和大字节属性。某些类还提供了个别特殊的统计属性,这些属性的设置需要通过非编号的扩展信息获取接口来进行信息的设置。定义属性的时候需要初始化属性,根据不同的类型进行如下初始化n 数值类型:初始化
14、为“0”n 字符型:初始化为“”n 日期型:初始化为“1990-1-1”n 引用型:初始化为“null”4.3.3 构造函数系统提供了基于配置的属性初置构造函数,即提供通过编号和XML文件配置的初始化类时应该设置的属性值。如果用户提供的构造函数和扩展函数中编号没有定义,则统统默认为“2”。即指定了无效的编号,则初始化为全部视图属性。基本编号:内置的构造函数编号n 0:空对象,初始化一个空对象,不从DS层获取任何信息。用于创建和修改对象信息时使用。n 1:全部直接属性,获取所有视图/数据表中有对应字段的属性,含大字节属性。n 2:全部视图属性,获取所有视图属性,不含大字节属性。这是默认方式,即无
15、参构造函数默认采用该编号。n 3:名称属性,仅仅ID属性和名称/描述属性。n 4:大字节属性,仅仅ID属性和所有大字节属性。n 5:其它属性,仅仅ID属性和其它非视图/数据表属性。扩展编号:又称配置编号,基于配置文件的信息获取接口。配置文件参见“T03-00010系统属性设置配置策略.doc”4.3.4 扩展属性设置接口基于配置文件进行和特定的命名属性串进行对象属性的设置。扩展信息获取接口支持所有编号的对象属性设置。系统中所有编号的属性设置都是通过一个统一的函数来进行的。/函数说明:标准扩展方式设置对象属性(根据配置编号或直接命名属性串设置特定对象的属性)成功设置特定对象属性,无返回值(voi
16、d)。否则抛出错误(M3000209F)接口参数:v 配置编号:int attributeNo v 关键字:int keyword /具体命名和类型采用该对象对应的关键字的名称和类型v 命名属性串:string attributeString /重载接口参数参数格式:v 命名属性串:string attributeString,用逗号隔开的命名属性串处理方法:v 直接调用DA层同名同参接口具体调用: 命名空间:Hotsales.子系统命名空间.BusinessData 系统类名:ObjectData 处理方法:public void ExtendSetAttribute(int keyword
17、, int attributeNo) 处理方法:public void ExtendSetAttribute(int keyword, string attributeString) /重载接口参考用例:v 直接见接口模型(调用说明处出现)/4.3.5 扩展属性获取接口通过属性方式访问特定对象的属性,需要通过构造函数、扩展属性设置函数事先进行对象属性的赋值。同时还需要保证执行了正确的属性设置方法,即应用了正确的属性设置编号。否则可能获取系统默认的属性值,而非实际的属性值。此种方法为事先设置方式。此处提供的扩展属性获取接口,是即时属性获取接口。该接口将即时调用对应的DA层接口取获取相关属性。并返
18、回对应属性加载的Hashtable对象。/函数说明:标准扩展方式获取对象属性(根据直接命名属性串获取特定对象的属性)成功返回特定属性加载的Hashtable对象。否则抛出错误(M3000210F)接口参数:v 关键字:int keyword /具体命名和类型采用该对象对应的关键字的名称和类型v 命名属性串:string attributeString 参数格式:v 命名属性串:string attributeString,用逗号隔开的命名属性串处理方法:v 直接调用DA层同名同参接口具体调用: 命名空间:Hotsales.子系统命名空间.BusinessData 系统类名:ObjectData
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- HS 系统 开发 模式 介绍 6317
限制150内