




已阅读5页,还剩11页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
HS系统开发模式文档类别管理规范文档编号T03-00003-来源部门技术部研发部门应用范围技术部保密级别修订历史记录日期版本说明作者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 规范化系统中对象的组织;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.Common /全局系统工具集合命名空间,在子系统中也有自己的通用工具集合命名空间。2.3 系统对象逻辑层次命名空间具体层次描述见“T03-00005HS软件系统的实现规则.doc”层名命名标识层描述备注业务外观层BusinessFacadeBusinessFacadeBF提供业务处理的集成化接口,起UI层和业务逻辑处理层的交互代理。业务规则层BusinessRuleBusinessRulesBR系统中个性化业务逻辑处理中心采用复数形式业务数据对象层BusinessDataBusinessDataBD系统中业务数据的对象层具体子系统的通用层CommonCommonCM系统中的工具集合体数据访问层DataAccessDataAccessDA系统中数据访问层,是对象化数据与关系型数据的交互代理。数据存储层DataStoreDataStoreDS数据处理层,提供存储过程处理/访问数据,甚至包含部分业务逻辑的处理。在DB中实现系统框架层SystemFrameworkSystemFrameworkSF系统框架层,提供系统配置信息的处理系统通用层SystemCommonSystemCommonSC系统通用工具集合Web层WebWebUI系统中用户接口,提供页面逻辑的处理,结合业务逻辑进行部分离散业务逻辑的处理。服务器端处理工具ServerSS各类自动化性质的工具的服务器端处理工具集合Web方式提供的服务HttpProviderHP采用WEB方式提供服务的工具集合2.4 HS的所有系统中各子系统命名空间总揽该信息需要与“F05-00006系统架构.xls”中的命名空间保持一致。子系统名称及编号、代号命名空间头部备注人事管理 M01、HotHRHotsales.HR目前主要包含企业组织结构、人员系统管理 M02、HotUM*Hotsales.System系统体系结构、权限等管理业务处理 M03、HotBizHotsales.Business销售订单(业务)、合同管理销售管理M45 SaleManageM04、HotSaleClewHotsales.SaleManageHotsales.SaleManage.ClewHotsales.SaleManage.Chance销售线索、销售机会M05、HotSaleChance客户管理 M06、HotCustomerHotsales.CustomerInfo客户资料管理(涉及全面客户资料:客户、供应商等)服务与支持 M07、HotServiceHotsales.Service服务与支持财务管理 M08、HotFinanceHotsales.Finance财务管理办公基础辅助工具T00T01、HotSMSHotsales.OA.SMS短信服务提醒服务(通过内部消息、短信、邮件来实现)内部消息服务系统事件工作流(目前主要涉及到审批流和审批工具)工作计划(包含计划安排,同时调用提醒工具)邮件工具(群发、定向发送)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、HotAdviceHotsales.OA.AdviceCenter建议中心T21、HotNewsHotsales.OA.NewsCenter新闻中心T22、HotbbsHotsales.OA.BBSBBS产品管理 M09、HotProdHotsales.Product产品管理市场管理 M10、HotMarkHotsales.Marketing市场管理系统设置 M30、SysSetupHotsales.SysSet系统设置管理系统框架 T90、HotSystemFrameworkHotsales.SystemFramework系统框架通用工具 HotCRMCommonHotsales.Common通用工具编号规则: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管理规范.doc”)。命名规范为:XXData3.1.2 存放多个对象信息的对象集合数据,采用DataTable对象来存储该对象集的列表数据。其中不能包含特定的大字节属性。命名规范为:XXTable3.2 用于UI显示的信息传输模式所谓信息传输模式:指函数参数的类型范围。在UI中显示的信息仅仅来源于两类信息载体,DataTable和特定的对象。3.2.1 用于数据表格/DataGrid、下拉列表框、列表框、控件数组等信息显示,采用通用DataTable作为信息的载体进行信息的传输。信息的传输方向:“DSUI”;3.2.2 用于非上述页面元素的显示,采用特定的对象作为信息的载体进行信息的传输。信息传输方向“DSUI”3.2.3 特定统计性质的数据的显示,可能来源于DataTable或特定的函数参数,甚至函数的返回值。3.3 非UI显示(逻辑处理需要)的信息传输模式用于逻辑处理需要进行信息的获取,可以根据需要进行信息的传递,但一般采用“用于UI显示的信息传输模式”。特殊情况根据需要用户可以自行决定信息传输模式。4、 系统中的对象数据的处理方式4.1 系统中任何对象都对应一个对象数据类,所有特定对象信息的传输是通过该类的对象进行传输的。该对象的属性是该对象对应的数据表的所有属性,和该数据表对应的视图扩充过来的属性。4.2 与特定对象相关的类及其基本功能假设对象名为Object。层次类名功用BusinessFacadeObjectSystem提供UI需要的所有个性化接口,包含简单的参数规范性检测。一般没有属性,纯粹的方法封装体。BusinessRulesObject提供个性化业务逻辑处理引擎。没有参数检测。一般没有属性,纯粹的方法封装体。BusinessDataObjectData提供当前对象的个性化属性封装体。属性范围:该对象对应的数据表的所有属性,和该数据表对应的视图扩充过来的属性。提供基于编号的属性获取接口,集成到类的初始化方法中。同时提供基于独立命名的基本信息维护接口(新建、基于主键的修改)CommonObjectTool与特定子系统相关的通用工具封装体。一般没有属性,纯粹的方法封装体。DataAccessObjects提供与特定对象相关的数据表的访问接口。系统通过该层连接远程DB,执行DS层的SP,进行系统需要的数据处理。4.3 特定对象的个性化类4.3.1 系统中将提供基本属性和控制属性。在所有的属性获取接口中需要自己再生成SQL代码片段,应全面防止注入式SQL病毒。4.3.2 属性提供了该对象对应的数据表的所有属性,和该数据表对应的视图扩充过来的属性。即该对象对应的视图的所有属性和大字节属性。某些类还提供了个别特殊的统计属性,这些属性的设置需要通过非编号的扩展信息获取接口来进行信息的设置。定义属性的时候需要初始化属性,根据不同的类型进行如下初始化n 数值类型:初始化为“0”n 字符型:初始化为“”n 日期型:初始化为“1990-1-1”n 引用型:初始化为“null”4.3.3 构造函数系统提供了基于配置的属性初置构造函数,即提供通过编号和XML文件配置的初始化类时应该设置的属性值。如果用户提供的构造函数和扩展函数中编号没有定义,则统统默认为“2”。即指定了无效的编号,则初始化为全部视图属性。基本编号:内置的构造函数编号n 0:空对象,初始化一个空对象,不从DS层获取任何信息。用于创建和修改对象信息时使用。n 1:全部直接属性,获取所有视图/数据表中有对应字段的属性,含大字节属性。n 2:全部视图属性,获取所有视图属性,不含大字节属性。这是默认方式,即无参构造函数默认采用该编号。n 3:名称属性,仅仅ID属性和名称/描述属性。n 4:大字节属性,仅仅ID属性和所有大字节属性。n 5:其它属性,仅仅ID属性和其它非视图/数据表属性。扩展编号:又称配置编号,基于配置文件的信息获取接口。配置文件参见“T03-00010系统属性设置配置策略.doc”4.3.4 扩展属性设置接口基于配置文件进行和特定的命名属性串进行对象属性的设置。扩展信息获取接口支持所有编号的对象属性设置。系统中所有编号的属性设置都是通过一个统一的函数来进行的。/函数说明:标准扩展方式设置对象属性(根据配置编号或直接命名属性串设置特定对象的属性)成功设置特定对象属性,无返回值(void)。否则抛出错误(MF)接口参数:v 配置编号:int attributeNo v 关键字:int keyword /具体命名和类型采用该对象对应的关键字的名称和类型v 命名属性串:string attributeString /重载接口参数参数格式:v 命名属性串:string attributeString,用逗号隔开的命名属性串处理方法:v 直接调用DA层同名同参接口具体调用: 命名空间:Hotsales.子系统命名空间.BusinessData 系统类名:ObjectData 处理方法:public void ExtendSetAttribute(int keyword, int attributeNo) 处理方法:public void ExtendSetAttribute(int keyword, string attributeString) /重载接口参考用例:v 直接见接口模型(调用说明处出现)/4.3.5 扩展属性获取接口通过属性方式访问特定对象的属性,需要通过构造函数、扩展属性设置函数事先进行对象属性的赋值。同时还需要保证执行了正确的属性设置方法,即应用了正确的属性设置编号。否则可能获取系统默认的属性值,而非实际的属性值。此种方法为事先设置方式。此处提供的扩展属性获取接口,是即时属性获取接口。该接口将即时调用对应的DA层接口取获取相关属性。并返回对应属性加载的Hashtable对象。/函数说明:标准扩展方式获取对象属性(根据直接命名属性串获取特定对象的属性)成功返回特定属性加载的Hashtable对象。否则抛出错误(MF)接口参数:v 关键字:int keyword /具体命名和类型采用该对象对应的关键字的名称和类型v 命名属性串:string attributeString 参数格式:v 命名属性串:string attributeString,用逗号隔开的命名属性串处理方法:v 直接调用DA层同名同参接口具体调用: 命名空间:Hotsales.子系统命名空间.BusinessData 系统类名:ObjectData 处理方法:public Hashtable ExtendGetAttribute(int keyword, string attributeString) 参考用例:v 直接见接口模型(调用说明处出现)/4.3.6 维护接口系统提供了创建对象和根据对象关键字进行信息的更新的接口。注意:创建和更新的逻辑条件在BR层进行,此处的接口仅仅进行实际的创建和更新操作。此时需要利用该对象作为函数参数,进行相关处理:n 在UI层给对象的属性赋值n 通过BF层传输到BR层n 在BR层处理完相关逻辑条件后,再执行该对象的特定维护接口。4.3.7 辅助接口,私有接口 获取指定属性编号/用户化属性串对应的标准命名属性串/函数说明:获取指定属性编号/用户化属性串对应的标准命名属性串成功返回特定的命名属性串。否则抛出错误(MF)接口参数:v 属性编号:int attributeNo v 命名属性串:string attributeString /重载接口参数参数格式:v 命名属性串:string attributeString,用逗号隔开的命名属性串处理方法:v 内置编号采用类常量模式v 非内置编号采用从XML文件获取,然后解析命名属性串v 命名属性串需要进行解析。具体调用: 命名空间:Hotsales.子系统命名空间.BusinessData 系统类名:ObjectData 处理方法:private string ParseAttributeString(int attributeNo) 处理方法:private string ParseAttributeString(string attributeString) 参考用例:v 直接见接口模型(调用说明处出现)/ 依据命名属性串从DA层获取对应的数据/函数说明:依据命名属性串从DA层获取对应的数据成功返回特定属性数据。否则抛出错误(MF)接口参数:v 关键字:int keyword /具体命名和类型采用该对象对应的关键字的名称和类型v 命名属性串:string attributeString 参数格式:v 命名属性串:string attributeString,用逗号隔开的命名属性串处理方法:v 直接调用DA层同名同参接口具体调用: 命名空间:Hotsales.子系统命名空间.BusinessData 系统类名:ObjectData 处理方法:private DataTable GetGrivenAttributeInfos(int keyword, string attributeString) 参考用例:v 直接见接口模型(调用说明处出现)/ 将获取的数据加载到对象对应的属性中/函数说明:将获取的数据加载到对象对应的属性中成功将特定的属性加载到对象的特定属性中。否则抛出错误(MF)接口参数:v 属性数据:DataTable attributeData 处理方法:v 直接将数据表中的信息加载到对象的属性中,采用逐一加载法进行加载具体调用: 命名空间:Hotsales.子系统命名空间.BusinessData 系统类名:ObjectData 处理方法:private void SetAttributesFromDataTable(DataTable attributeData) 参考用例:v 直接见接口模型(调用说明处出现)/ 将获取的数据加载到Hashtable中/函数说明:将获取的数据加载到Hashtable中成功返回特定属性加载的Hashtable对象。否则抛出错误(MF)接口参数:v 属性数据:DataTable attributeData 处理方法:v 直接调用DA层同名同参接口具体调用: 命名空间:Hotsales.子系统命名空间.BusinessData 系统类名:ObjectData 处理方法:private Hashtable CreateHashtableFromDataTable(DataTable attributeData) 参考用例:v 直接见接口模型(调用说明处出现)/ 依据命名属性串和对象关键字实例化加载对象属性/函数说明:依据命名属性串和对象关键字实例化加载对象属性成功将加载当前对象的属性。否则抛出错误(MF)接口参数:v 关键字:int keyword /具体命名和类型采用该对象对应的关键字的名称和类型v 命名属性串:string attributeString 具体调用: 命名空间:Hotsales.子系统命名空间.BusinessData 系统类名:ObjectData 处理方法:private void LoadObjectAttribute(int keyword, string attributeString) 参考用例:v 直接见接口模型(调用说明处出现)/ 依据属性编号和对象关键字实例化加载对象属性/函数说明:依据属性编号和对象关键字实例化加载对象属性成功将加载对象的属性。否则抛出错误(MF)接口参数:v 关键字:int keyword /具体命名和类型采用该对象对应的关键字的名称和类型v 属性编号:string attributeNo具体调用: 命名空间:Hotsales.子系统命名空间.BusinessData 系统类名:ObjectData 处理方法:private void LoadObjectAttribute(int keyword, int attributeNo) 参考用例:v 直接见接口模型(调用说明处出现)/ 检测属性的获取是否合法,即是否初始化了/函数说明:检测属性的获取是否合法,即是否初始化了合法将直接进行过程下一步操作。不合法和出现错误都将抛出错误(MF)接口参数:v 属性名称:string fieldName具体调用: 命名空间:Hotsales.子系统命名空间.BusinessData 系统类名:ObjectData 处理方法:private void CheckAttributeIsInitialized(string fieldName)参考用例:v 直接见接口模型(调用说明处出现)/ 复位对象数据相关属性/函数说明:复位对象数据相关属性成功将直接复位对象的相关属性,即按标准设置对象属性的初始化值。出现错误都将抛出错误(MF)接口参数:v 无具体调用: 命名空间:Hotsales.子系统命名空间.BusinessData 系统类名:ObjectData 处理方法:private void ResetDataRelaAttributes()参考用例:v 直接见接口模型(调用说明处出现)/4.3.85、 HS信息处理模式原理图6、 对象数据类基本接口6.1 类名:ObjectData6.2 基本常量和非公开域6.2.1 SYSTEM_NO 定义该对象隶属的子系统编码,具体子系统编码见系统架构.xls6.2.2 globalAtrributeArray 全局属性数组,与全局属性串对应 作用:提高检测效率使用的6.3 基本管理/控制属性6.3.1 CurrentAttributeNo 只读 提供当前设置对象属性的属性编号 如果是采用命名属性串的方式,则值为“-1” 作用:使用户能够检测其在初始化对象的时候使用哪个初始化编号6.3.2 GlobalAttributeString 只读 提供当前对象的用逗号隔开的全部命名属性串 作用:用于生成标准SQL语句的命名属性参考。6.3.3 CurrentAttributeString 只读 提供设置当前对象属性的命名属性串 如果用户提供的内置编号,系统需要提供所有内置编号对应命名属性串; 如果用户提供的是扩展编号,系统将从“T03-00010系统属性设置配置策略.doc”配置文件中获取命名属性串; 如果用户采用的命名属性串方式的扩展设置接口,则直接为扩展设置方式的命名属性串。 如果用户初始化空对象,则给对象属性赋值时,系统将自动装配该属性值。即用户给了哪几个属性赋了值,系统将自动生成这几个对象的命名属性串。 作用:用户利用属性值的时候可以检测该利用是否合法。6.3.4 CheckReadProperty 可读写,默认为“false” 控制用户利用对象属性值的时候,系统是否需要检测,用户是否设置了特定的属性值。6.4 构造函数6.4.1 带参数:ObjectData(int keyword, int attributeNo) /主键的具体命名和类型采用该对象对应的关键字的名称和类型6.4.2 无参数:ObjectData(int keyword):this(keyword,2) 6.5 扩展属性设置函数6.5.1 属性编号:ExtendSetAttribute(int keyword, int attributeNo)6.5.2 命名属性串:ExtendSetAttribute(int keyword, string attributeString)6.6 扩展属性获取函数6.6.1 public Hashtable ExtendGetAttribute(int keyword, string attributeString)6.7 维护函数6.7.1 void CreateObject(具体的数据属性参数) 修订01/创建对象6.7.2 void ModifyObject(具体的数据属性参数) /综合修改对象6.7.3 void ModifyObjectXX(具体的数据属性参数) /修改对象指定的属性,其中XX代表指定的属性6.8 辅助接口6.8.1 private string ParseAttributeString(int attributeNo) /获取指定属性编号/用户化属性串对应的标准命名属性串6.8.2 private string ParseAttributeString(string attributeString) /获取指定属性编号/用户化属性串对应的标准命名属性串6.8.3 private DataTable GetGrivenAttributeInfos(int keyword, string attributeString) /依据命名属性串从DA层获取对应的数据6.8.4 private void SetAttributesFromDataTable(DataTable attributeData) /将获取的数据加载到对象对应的属性中6.8.5 private Hashtable CreateHashtableFromDataTable(DataTable attributeData) /将获取的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030中国宽带网络行业竞争格局及发展监测研究报告
- 2025年农业灌溉用水管理:水资源保护与利用技术创新案例分析报告
- 零售市场分销合作合同(2篇)
- 2025至2030中国发动机止动器行业风险评估及发展潜力研究报告
- 2025至2030中国农业枯草芽孢杆菌行业未来趋势与应用前景研究报告
- 互联网金融平台合规化与金融科技创新风险管理2025年深度报告
- 中职德育课信息化教学设计案例
- 2025年养老产业品牌建设可行性研究评估报告
- 从基础到精通2025年财务管理考试试题及答案
- 工业废气深度净化技术在汽车制造领域的应用创新报告
- 创新创业创造美好生活知到章节答案智慧树2023年青海师范大学
- 影视配音艺术实用教程
- 医疗器械配送方案
- 2023年定西地区水利系统事业单位招聘笔试题库及答案
- GB/T 14352.2-2010钨矿石、钼矿石化学分析方法第2部分:钼量测定
- GB/T 10069.3-2008旋转电机噪声测定方法及限值第3部分:噪声限值
- GB 252-2015普通柴油
- 《活着》作品简介名著导读PPT
- 硅酸钙板、含锆型硅酸铝纤维棉、高铝型硅酸铝纤维棉技术规格
- 2018年可行性研究报告投资估算及财务分析全套计算表格共14个附表excle带公式只更改标红部分即可带说明
- 企业落实安全生产主体责任重点事项清单(20项要点)
评论
0/150
提交评论