用友网络科技股份有限公司U9- 列表与查询开发 列表、查询介绍 列表开发过程 BE 查询开发 DTO 查询开发 查询方案设置 多页面帧设置目录列表、查询介绍 运行期查询列表公共部分 设计期CurrentState查询列表WebPart组件UBF查询列表设计器代码生成方案模型CaseModel在U9环境中展现为查询列表结果画面查询列表公共组件查询方案设置画面QueryCaseUI装配ModelControlViewUBF元数据设计器BE元数据DTO方式的专用BP查询组件代码生成DBDTO元数据列表、查询介绍设计期列表或 BE 查询:使用 UBF 元数据设计器设计 BE ,根据需求调整字段属性来满足其表现特征DTO 查询:使用 UBF 查询设计器来直接设计查询 DTOUBF 查询设计器会将 BE 元数据或 DTO 元数据,转换成查询设计模型,应用开发人员根据需求、设计文档来调整模型,然后通过构造生成 UI 端代码及BP 端代码BE 与 DTO 不同: BE 查询使用的实体间存在层级关系,属性间是树型关系,DTO 的属性都在同一个层次上查询框架 - 运行期运行期运行期核心工作:查询公共组件将 BE 元数据或 DTO 元数据转成查询方案模型( CaseModel )根据查询方案模型的待选模型( CaseModel.CaseDefine )来配置“查询方案画面”的表现形式:根据 CaseModel.CaseDefine.FilterDefines 生成查询方案画面中的“查询条件”控件的表现形式,如:参照、枚举、日期等根据 CaseModel.CaseDefine.FilterDefines 生成条件待选项根据 CaseModel.CaseDefine.ColumnDefines 生成栏目待选项根据 CaseModel.CaseDefine.SortDefines 生成排序待选项根据查询方案模型的已选模型( CaseModel.Case )来配置最终的查询列表结果画面:根据 CaseModel.Case.FilterDefines 及 CaseModel.Case.FilterValues 生成 OQL 查询的 Where 子句根据 CaseModel.Case.Columns 生成 OQL 查询的 Select 子句根据 CaseModel.Case.Sorts 生成 OQL 查询的 Order By 子句根据 CaseModel.Case.Columns 生成表格中的列列表开发新建查询项目列表开发指定 UI 和 BP 的位置列表开发创建完成后的项目呈现列表开发指定数据源实体信息列表开发修改 UI 项目的配件名和 UIModel 的命名空间列表开发UI 端应用开发人员可扩展代码Action 应用开发可扩展代码列表开发UI 端应用开发人员可扩展代码WebPart 应用开发可扩展代码BE 查询开发BE 查询与列表的不同使用场景不同列表:通过单据的列表按钮导航有新增、删除等工具按钮可多选BE 查询:通过菜单导航开发过程中的区别查询数据源选择窗体中选择的类型不同UI Form 模版不同BE 查询开发创建查询组件DTO 查询开发DTO 查询与 BE 查询的不同数据源不同BE 数据源来源于实体树DTO 查询数据来源于由 BP 提供的 DTO , DTO 的结构需要定义, BP 的取数逻辑根据需要编写DTO 查询开发新建一个查询项目指定 UI 和 BP 项目的创建位置(与列表、 BE 查询相同)DTO 查询开发创建查询组件DTO 查询开发创建完成后的项目呈现DTO 查询开发修改 UI 及 BP 项目和文件的相关信息DTO 查询开发 -DTO 属性添加 DTO 属性DTO 属性的添加有两种方式 ---- 如果是简单类型的字段并且在实体中没有的字段可以通过“新建自定义属性”创建DTO 查询开发 -DTO 属性添加 DTO 属性如果是其他类型的属性(包括简单类型)则可以通过设计器左边的实体树进行筛选,并添加到右面的 DTO 属性列表中DTO 查询开发 - 编辑 DTO 属性分组设置每一个 DTO 属性都属于一个组,默认是系统的“ Misc” 组,根据需要建立需要的组,通过“新建分组”或右键菜单管理组DTO 查询开发 - 编辑 DTO 属性DTO 部分属性修改新建或添加完的 DTO 属性可以进行类型的修改(只能是简单类型字段)或删除通过右键将属性移至特定的分组内,“重置分组”是将所选的 DTO 属性的分组重新设置为“ Misc”DTO 查询开发 -BP 端代码扩展BP 端应用开发人员可扩展代码DTO 查询开发 -BP 端代码扩展 BP 端应用开发人员可扩展代码:在新建 DTO 查询的时候,设计器会为自动创建查询...