BP框架开发指南_第1页
BP框架开发指南_第2页
BP框架开发指南_第3页
BP框架开发指南_第4页
BP框架开发指南_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

BP框架开发指南济南驰骋信息技术20234月状态:修订中BP名目1章:1.01.1:1.2:1.3:1.4:1.5:

总体说明 错误!未定义书签。致BP框架的使用者 错误!未定义书签。BP框架的基类继承图 错误!未定义书签。BP框架命名标准 错误!未定义书签。BP的通用类库 错误!未定义书签。BP的前台web工程名目 错误!未定义书签。Chichengsoft产品架构图 错误!未定义书签。: ccflow架构图 错误!未定义书签。: ccoa驰骋OA 错误!未定义书签。: ccgpm驰骋权限治理 错误!未定义书签。第2章: BP.En30类库的根本使用 错误!未定义书签。: Web.config配置信息 错误!未定义书签。: 通用配置局部 错误!未定义书签。: CCFlow配置局部 错误!未定义书签。: Log系统日志 . 误!未定义书签。: 用户的登录登出与信息访问 错误!未定义书签。: DBAccess与数据库交互 错误!未定义书签。: BP框架的数据表 错误!未定义书签。: 如何查看BP框架的表构造? 错误!未定义书签。: BP的组织构造表 错误!未定义书签。: BP框架表 错误!未定义书签。: 自定义表单表 错误!未定义书签。: 基类与实体类 错误!未定义书签。: 概述 错误!未定义书签。: Map的作用、编写方法与内容 错误!未定义书签。: 实体类BP.En.Entity 错误!未定义书签。: BP.En.EntityNo 错误!未定义书签。: BP.En.EntityNoName 错误!未定义书签。: BP.En.EntityOID 错误!未定义书签。: BP.En.EntityMyPK 错误!未定义书签。: BP.En.EntityTree. 错误!未定义书签。: BP.En.EntityMM 错误!未定义书签。: Map属性的高级应用 错误!未定义书签。第3章: 基于BP框架的功能组件 错误!未定义书签。: 通用组件权限掌握方法 错误!未定义书签。: 对单个操作员的用户名掌握 错误!未定义书签。: 对岗位权限的掌握 错误!未定义书签。: 对部门权限的掌握 错误!未定义书签。: 使用GPM对权限的掌握方法 错误!未定义书签。: 通用查询组件(/Comm/Search.htm) 错误!未定义书签。: 通用分析组件(/Comm/Group.htm) 错误!未定义书签。: 通用增\删\改\查\组件(/Comm/UIEn.htm) 错误!未定义书签。: 展现效果 错误!未定义书签。: 使用map构造卡片上的帮助信息 错误!未定义书签。: 通用比照分析组件(/Comm/Contrast.htm) 错误!未定义书签。: 通用维度分析组件 错误!未定义书签。第4章: 应用场景与实现标准 错误!未定义书签。: 使用JQ实现实体的增删改 错误!未定义书签。: 说明 错误!未定义书签。: 用到的通用方法 错误!未定义书签。: 实现步骤 错误!未定义书签。: 单个实体数据采集 错误!未定义书签。: 使用pub控件 错误!未定义书签。: 使用自由格式控件 错误!未定义书签。: 多个实体数据采集 错误!未定义书签。: 2D数据采集 错误!未定义书签。: 3D数据采集左部 错误!未定义书签。: 3D数据采集头部 错误!未定义书签。: 数据矩阵输出(N宫格输出) 错误!未定义书签。: 前台呈现 错误!未定义书签。: 后台代码 错误!未定义书签。: 不分页输出标准 错误!未定义书签。: 展现效果 错误!未定义书签。: 代码实现 错误!未定义书签。: 分页输出开发标准 错误!未定义书签。: 前台呈现 错误!未定义书签。: 后台呈现代码 错误!未定义书签。第5章: 功能模块与流程结合实现标准 错误!未定义书签。: 功能模块的划分 错误!未定义书签。: 独立运行的功能模块开发标准 错误!未定义书签。: 流程支持的功能模块开发标准 错误!未定义书签。: 实体的增加、删除、更、查看权限掌握开发标准 错误!未定义书签。: 与GPM结合掌握方案 错误!未定义书签。: 不于GPM结合掌握方案 错误!未定义书签。第1章:总体说明在本章中介绍了BP框架的根底信息、设计思想、编写标准、使用案例模版。1.0概要介绍BP框架。BP2023BP框架承受面对对象的思想、架构的灵魂是ORM,承受代码优先的策略,全部的应用ORM映射开展,比方对实体表的增删改查。BP框架有一套丰富开发demo对于一个初级开发者使用2-3天就可以顺当把握该框架的使用,架构浅显易懂、例子很多,简洁上手。BP框架是一个强制商定、具有较高的限定性、强约束的框架,只要您遵守开发标准,BPBP架构的程序员解读您的代码规律,真正的做到代码编写,千人一个风格,而非千人一个风格。努力提高工程、产品的可持续性可维护性,可读性。度变化,自动更。极大的减轻了数据库的维护压力。使用BP框架可以便利的、优雅的书写您的业务规律,让您的代码更简洁实现业务规律SQL,还可以提高您对面对对象思想的理解与认知。BP比较常用的几个组件如下:查询组件:可以实现实体的增删改查,可以实现,多条件查询,数据导入导出。型的字段进展求和、求平均、求最大最小的分析。UI开发技术进展快速的今日,BP架构与时俱进,可以支持全栈开发,极大的节约工作量。2.0BP框架的使用者稳定成熟的开发架构是产品或者工程走向成功的保障。码,目的是为了解决重复性的劳动,我们称为开发框架。同样chichengsoft也是如此,我们的框架历经了多个工程的历练,稳定性、牢靠性、敏捷性都有保障。Ccflow,ccoa,ccgpm,ccssobp框架开发。对于驰骋公司的任何员工,可以修改、扩展、提出改进意见但不能不遵守BP的开发标准。BP框架的基类继承图EntityEntityEntityNoEntityOIDEntityMyPKEntityMMEntityTreeEntityNoName我会在以后的章节里具体介绍这个图.BP框架命名标准BP框架的命名标准,包括了类库的命名标准、类、字段。1BP+”.”+”类库名称”,BP.OA,BP.GPM,编译后生成BP.OA.dll,BP.GPM.dllBP框架所反射、所解析。2BP+模块名称,比方BP.OAOA的类库,BP.Port存放组织34Dept,Emp,Station。完BP.Port.Dept,BP.Port.Emp,BP.Port.Station.对于是多个单词组成的实体每个单词需要首字母大写,比方:BP.Port.EmpStation人员与岗位的对应。5Tel,Email,Addr,PCFK_开头,比方:FK_Emp,FK_Dept,FK_Station。假设是枚举,则建议使用Is开头比方:IsPass,IsEnable。6Port_Dept,Port_Emp,Sys_Enum。字段的命名与该表对应的类的属性命名全都。BP的通用类库类库名称BP.En30BP.Web.Controls30BP.OS

备注位置:D:\ccflow\trunk\Components\BP.En30说明:BP框架的根底类库,它位于最框架的最底层,读取web.config文件配置,连接数据库,访问数据库,实体基类,xml文件基类,框架基类,简洁治理的组织机构,登录信息猎取,缓存处理。位置:D:\ccflow\trunk\Components\BP.Web.Controls30说明:封装了微软的TextBox,Dropdownlistbox…..控件,实现了对这些web工程必需引用的工程。位置:D:\ccflow\CCPortal\CCGPM\Components\BP.OS说明:具体的组织构造类库,该类库用10多个类描述了人员、部门、岗位、职务、多部门、多岗位、多职务的隶属关系。它适用于简单的ccflowBP.En30里面的简BPM模式下〔也叫独立模式〕BP.OS里面的组织构造。BPweb工程名目用户数据存储名目:DataUser系统配置名目:Data通用组件名目:CommWeb.configChichengsoft产品架构图BP.En30开发的,它位于最底层。:ccflow架构图ccflowccflow前台应用程序BP.GPM.dllBP.En30.dll:ccoaOAccoaccoa前台应用程序BP.WF.dllBP.WF.dllBP.GPM.dllBP.En30.dllBP.En30.dll:ccgpm驰骋权限治理ccgpmccgpm前台应用程序BP.WF.dllBP.GPM.dllBP.En30.dllBP.WF.dllBP.GPM.dllBP.En30.dll第2章:BP.En30类库的根本使用Web.config配置信息:通用配置局部Ccflow配置局部:CCFlow配置局部Log系统日志用户的登录登出与信息访问DBAccess与数据库交互BP框架的数据表BP在运行时候需要一些数据表支持intOID,WorkID,需要保存用户的查询状态,选择的列等等,这些表都是以sys_开头的,我们称为BP框架的BPPort_开头。:BP框架的表构造?在BPBP.Entity中集成下来的。BP框架依据反射自动的把全部的类反射到一个集合里然后用表格的方式输出出来,假设查看该类的具体信息,就可以看到该表的具体字段。该功能的地址:://localhost:1106/WF/Comm/Sys/SystemClass.htm或者://localhost:1106/Comm/Sys/SystemClass.htmPort_Emp的描述:我们以节点属性翻开字段:其实假设你翻开数据表属性,就可以清楚的看到每个字段的中文说明::BP的组织构造表表表描述说明Port_EmpPort_DeptPort_StationPort_EmpDeptPort_EmpStation员工表部门表岗位表人员部门对应表人员岗位对应表:BP框架表表Sys_SerialSys_CFieldSys_ContrastSys_DataRptSys_EnumSys_SFTableSys_EnumMainSys_DefValSys_DocFileSys_EnCfgSys_EnsAppCfgSys_FileManagerSys_GroupEnsTemplateSys_UserRegeditSys_SMS

描述序列号信息存取表字段选择信息存储表比照分析组件状态存储表数据报告枚举表系统字典注册表枚举主表字段默认值信息存储表大块文本字段存储实体配置存储表实体集合配置实体附件报表模版用户查询状态保存表系统消息表

说明workid,OID猎取后加1.Sys_Enum类同Ccflow的节点属性的分组标签等等。把对实体的查询状态保存一个模版,以便利下次调用。:自定义表单表表表描述Sys_MapData表单主表说明存放表单属性的表,它的PK是No,其它与表单有关的表都有一个列FK_MapData于此向对应。Sys_MapAttrSys_MapDtlSys_MapExtSys_FormTreeSys_FrmAttachmentSys_FrmAttachmentDBSys_FrmBtn字段信息表明细表业务规律信息存储表表单树信息存储表附件描述表附件信息存储表按钮表Sys_FrmEleSys_FrmEleDBSys_FrmEventSys_FrmImgSys_FrmImgAthSys_FrmImgAthDBSys_FrmLabSys_FrmLineSys_FrmLinkSys_FrmRBSys_FrmRptSys_FrmSlnSys_M2MSys_MapM2MSys_MapFrameSys_RptDeptSys_RptEmpSys_RptStationSys_RptTemplate

表单元素表表单元素数据表大事表装饰类图片表图片类附件表图片类附件数据存储表标签线超连接Radiobutton表报表权限掌握方案存储表一对多数据存储表一对多信息描述表页面框架表报表的权限掌握-按部门报表的权限掌握-按人员报表的权限掌握-按岗位报表的模版

表里面去。基类与实体类:概述: 基类继承图首先我们看看继承图EntityEntityEntityNoEntityOIDEntityMyPKEntityMMEntityTreeEntityNoName解释:1,BP全部的表,对应一个或者多个实体类,每个实体类都是间接或者直接的从BP.En.Entity下继承的。2,以上的类的继承图是全部的基类图,也叫抽象类图,我们的设计人员在设计一个表时,都需要考虑该表的主键是OID,No,MyPK的哪一种,然后选择一个基类把它集成下来。3,下面的章节就要把每个基类的作用具体的介绍。: Entity使用方法.请参考图片:: 实体类的组成局部实体类的定义:从BP框架基类继承图上继承下来的子类并重写父类的方法的子类称为实体BPdemoBP.Demo.Student编写方法。3局部组成的,实体属性列表、实体、实体集合。: 学生实体属性列表类它仅仅是定义一个静态的字段列表,目的是为了防止在实体类,对字段或者属性拼写错误,定义他没有实际的运算意义。: 学生实体类说明:该实体从BP.En.EtntiyNoName继承下来的。一个实体类有三局部构成属性,构造,与重写基类的方法,请参考解决方案的类的源代码。:属性的编写我们把属性或者说字段分为三种类型一般、枚举、外键。一般类:比方:学号、姓名、地址、、邮件,用于标识实体一个数值、文字表达的出来的数据类字段,成为一般字段。枚举类:性别:0=女,1=男,状态:0未完成、1进展中、2已完成。外键类:班级、科目、岗位、部门字段,用一个编号或者ID用来标识一个实体属性。BP框架对以上字段的三种划分,我们定义为F3规章。一般类字段的属性书写规章:枚举类属性书写规章:外键属性书写规章::构造方法创立一个实例的方法:第一个是构造一个空的实例,其次个是重写基类构造数据实体实例。:重写属性与方法重写的方法有:插入之前、插入之后、删除之前、删除之后、更之前、更之后。Map,我们在下一个章节中重点讲解map。: 学生实体集合类:Map的作用、编写方法与内容Map英文名称为地图,可以理解为映射。映射的思想是BP框架的灵魂。map的实例来说明映射内容。: 类与表的关系我们用以下表格来说明,类表的关系。Map学生类

学生数据表属性:string,int,float,enum….方法:查询,增加,删除,修改.类的属性,对应表的字段

类的属性-》表的列类的属性类型-》表的列的数据类型.

字段:varcharint,float…..操作:select,insert,update,delete.: 根底信息的映射类对应的表,类的中文描述….: 字段的映射: 控件呈现的映射如上图:一个字段显示所使用的控件TextBoxTB,dropdownlistbox简写成DDL.在表达上已经做了处理。map呈现的画面。: 字段关系的映射如上,一个字段是一般类型的字段,外键,还是枚举,都可以表达出来了。: 查询条件的映射查询条件对于实体列表来说的,设置丰富的查询条件对于用户的使用有较好的体验。我们把查询条件分为多种。: 外键查询条件:组件的表现:: 日期查询条件:表达方式:展现效果:部门查询条件〔树形构造实体〕展现效果:: 关键字的查询条件1个所示:: 数值范围的查询条件2个圆圈:: 隐蔽的查询条件: 查询条件的换行对于外键的查询条件假设宽度大于1000系统就会自动换行,如以下图所示:展现实例: 多对多的映射书写规章:组件表现:: 明细表的映射: 表达方式:: 组件呈现:: 带有参数方法映射: 表达方式: 组件呈现: 不带参数的方法映射表达方式组件呈现点击功能执行后:: 相关功能demo假设一个业务规律处理比较简单,在BP框架上实现不了,需要单独的功能界面才能完成,BP框架给我们的开发增加了次功能。ccflow流程设计器中的=》节点属性=》抄送规章=BP.WF.Template.NodeExtUrlUrl就是要翻开的功能连接.抄送规章的呈现方式:相关功能执行说明:相关功能有如下几种执行类型:枚举类型的如下:总体说明:1Func功能执行。2string。3reutrnnull就不提示信息,否则就提示信息。4urlreturnnull就不显示该功能。url类型的功能隐蔽?urlUrlreturnnull就可以了。方法内容::BP.En.Entity改查询的。:BP.En.EntityNoEntityNoName较多,或许在80%以上,本文不做表达,该基类的使用方法。:BP.En.EntityNoName:BP.En.EntityOID:BP.En.EntityMyPK:BP.En.EntityTree:BP.En.EntityMM: Map属性的高级应用: 大块文本属性在一些场合下,一个字段需要大块文本存储,超出8000个字符,比方备注,这样的字段,212中方式。为了适应多种场景,BP1中方式。demo演示了如何读取一个文件。:应用场景:实现方式: map.有的map数据是需要实时的生成出来而非需要从缓存里猎取。: 参数属性应用场景@IsEnable=1@IsReale=2@xxx=cccccc我们把这样的属性叫做参数属性,下面我们以附件属性来介绍这个附件属性有很多很多的字段掌握点,假设每个属性都设置一个列的话,就会导致Sys_FrmAttachment表无限制的字段增长,所以这里引入了参数属性的一个概念。首先在map里面增加一个参数属性。在类里表达规章在数据库表达第3章:BP框架的功能组件miss系统来说,BP80%+的需要,所以系统分析人员在分析一个功能界面时BP的框架是否可以满足?假设不能满足,BP框架是否可以满足?假设仍旧不能,就要考虑共性化功能界面。对于共性化的应用4章中找。BP5中通用的组件,这些组件都是经受了很多工程的锤炼,假设用户对共性化的要求不高,我们尽量的使用组件完成实现用户的功能。通用组件权限掌握方法UAC(UserAccessContral),重写它,请参考以下图。对于这个实体的操作可以在这里进展掌握。:对单个操作员的用户名掌握如上图:就表示只有admin用户可以进展增加删除修改的操作,其他用户只能查询.:对岗位权限的掌握:对部门权限的掌握:GPM对权限的掌握方法: GPM系统中。首先需要在GPM里面做一个权限配置工程,并且获得它的标记。上面的记录里,是我增加了一个功能掌握点(留意这里不是名目或者功能界面),然后他的标记是:IsCanAddNotice,: 其次步:设置权限为该功能.接下来就是为这个功能依据用户、岗位、部门、或者权限组定义权限。: 第四步写入代码掌握其次依据如下方法把权限掌握编写到UAC里面。通用查询组件(/Comm/Search.htm)1:2::调用方法:调用方法:://localhost:1106/WF/Comm/Search.htm?EnsName=BP.Port.Emps或者:://localhost:1106/Comm/Search.htm?EnsName=BP.Port.Emps把一个类名传给Search.htm组件。:设置内容:数据导入设置有的应用场景,需要数据导入到数据表里。通用分析组件(/Comm/Group.htm)暂无通用增\删\改\查\组件(/Comm/En.htm):展现效果流程属性:节点属性::如何设置字段之间的级联关系?请依据如下步骤设置级联关系。显示效果:map构造卡片上的帮助信息我们在使用时候常常对一些属性不知道该如何设置或者填写了,bpccflow的节点属性流程属性为例。ICON时候,就消灭相应的帮助信息.BP框架供给了如下几种模式的帮助信息。: 效果:实现方式:: 提示呈现方式:实现代码:: url效果:配置方式:通用比照分析组件(/Comm/Contrast.htm)暂无通用维度分析组件暂无第4章:应用场景与实现标准BP开发标准,目的就是要做到千人开发的风格始终。JQ实现实体的增删改:说明:用到的通用方法方法名GenerBindEnumKey

作用根据一个枚举EnumKey,绑定数据.

参数绑定性别GenerBindEnumKey(“DDL_XB“,“XB“);绑定性别,并设置选择值.GenerBindEnumKey(“DDL_XB“,“XB“,1);GenerBindEntities 根据一个实体ensName,绑定数据.GenerFullAll

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论