t+产品开发手册.doc

上传人:hw****26 文档编号:4131234 上传时间:2019-09-28 格式:DOC 页数:209 大小:5.93MB
下载 相关 举报
t+产品开发手册.doc_第1页
第1页 / 共209页
t+产品开发手册.doc_第2页
第2页 / 共209页
t+产品开发手册.doc_第3页
第3页 / 共209页
t+产品开发手册.doc_第4页
第4页 / 共209页
t+产品开发手册.doc_第5页
第5页 / 共209页
点击查看更多>>
资源描述

1、- 1 - T+产品开发手册 作 者 : T+产 品 研 发 部 版 本 号 : 1.0 时间: 版 权 所 有 : 畅 捷 通 信 息 技 术 有 限 公 司 ChanJet Corp. Ltd. - 2 - - 3 - 1. 变更说明 目前的 T+平 台 在 不 断 的 完 善 过 程 中 , 因 此 T+产 品 开 发 过 程 也 会 不 断 变 化 。 下 面 的 表 单 用 于 详 细 记 录 本 开 发 手 册 变 更 过 程 。 序 号 变 更 位 置 变 更 内 容 说 明 变更人 变 更 日 期 1 2 3 4 5 6 7 8 9 2. 引 言 2.1. 编 写目 的 随着

2、T+产 品 业 务 的 不 断 扩 大 , 个 性 化 需 求 越 来 越 多 。 如 何 能 够 让 其 他 人 员 利 用 T+平 台 进 行 个 性 化 开 发 是 要 面 临 的 重 要 问 题 。 同 时 , 随 着 T+产 品 开 发 人 员 流 动 , 如 何 降 低 新 员 工 学习成 本 , 更快 的融 入开 发团队 , 也 是亟 待解 决的 问题。 为解 决以 上问 题, 急需一 个成 熟的 开 发 手 册 。 为 此 , 撰 写 此 T+产 品 开 发 手 册 。 2.2. 名 词 术 语 说 明 在开发 描述 中会 涉及 到一 些通用 的名 词术 语, 为便 于阅读 者

3、理 解, 对这 些名 词术语 进行 进 一 步 说 明 。 具 体 说 明 如 下 : 序 号 名 称 术 语 详 细 描 述 变 更 日 期 1 2 3 4 5 6 7 - 4 - 8 9 2.3. 参 考资 料 3. 开发模型 3.1. 拓 扑模 型 此系统 是一 个 B/S 架 构的 产品 , 服 务器 集中部 暑 。 在内部 局域 网中 , 用 户可 以通过 浏览 器 直 接 访 问 WEB 服 务 器 ; 其 它 受 管 辖 的 局 域 网 也 可 以 通 过 专 网 访 问 内 网 中 WEB 服 务 器 ; 另 外 Internet 用 户 可 以 跨 越 防 火 墙 , 通 过

4、 代 理 服 务 器 进 行 业 务 操 作 。 为了提 高性 能, 我们 可以 把 web 服务 器与 应用 服务 部署在 一台 服务 器上 , 减 少不必 要的 远程调 用 ; 如果 用户 想要 把 web 服务 器与 应用 服务 器进行 物理 上的 分离 部暑 , 我们 的应 用框 架 也 支 持 这 种 部 暑 , 并 且 我 们 采 用 http 的 传 输 协 议 。 此 系 统 架 构 中 , 采 用 后 台 提 供 服 务 的 架 构 设 计 , 降 低 产 品 中 各 模 块 的 偶 合 度 。 逻 辑 模 型 Intranet Internet 通 数 据 库 服 务 器

5、通 应 用 服 务 器 移动 PC 通Web服务器 防火墙 Web客户端Web客户端 Web客户端 PDA - 5 - 上 面 所 式 三 层 服 务 体 系 结 构 基 本 上 是 一 个 松 散 的 三 层 体 系 结 构 。 三 层 分 别 是 : 表 示 层 。 表 示 层 提 供 应 用 程 序 的 用 户 界 面 (UI), 处 理 用 户 和 软 件 间 的 交 互 。 主 要 职 责 是 向 用 户 显 示 信 息 并 把 从 用 户 获 取 的 信 息 解 释 成 业 务 层 或 者 数 据 源 层 的 各 种 动 作 。 。 业务层 。 业 务层 实现 应用程 序的 业务

6、逻辑 : 根 据输入 或者 已有 的数 据进 行计算 , 对从 表 现 层 输 入 的 数 据 进 行 验 证 , 处 理 从 表 现 层 接 受 到 的 命 令 来 确 定 应 该 调 用 那 些 数 据 源 逻 辑 。 。 数 据 源 层 。 数 据 层 提 供 对 外 部 系 统 ( 如 数 据 库 、 和 其 它 系 统 提 供 的 服 务 ) 的 访 问 。 每 一 层 应 当 按 下 面 各 段 落 所 述 进 行 构 造 表 示 层 : 包 括 一 系 列 与 用 户 交 互 的 窗 体 ( 或 页 面 ) 。 每 个 窗 体 用 来 显 示 系 统 提 供 的 信 息 以 及

7、传 递 用 户 的 输 入 信 息 。 这 种 基 于 窗 体 的 用 户 界 面 包 括 两 种 类 型 的 组 件 : 用 户 界 面 组 件 (UI) 基 于 .NET Framework 提 供 的 组 件 , 包 括 Win Form 组 件 和 Web Form 组 件 。 第 三 方 提 供 的 组 件 和 平 台 开 发 的 组 件 。 例 如 : 单 据 、 参 照 、 单 据 列 表 组 件 等 。 用 户 界 面 处 理 组 件 (UIP) 复杂的 用 户 界面 通常 需要 很多非 常复 杂的 窗体 。 为 了提 高 其可 复用 性、 可维 护 性和可 扩展 性, 需要

8、创建 一个分 离用 户界 面处 理的 组件, 以封 装窗 体和 界面 导航之 间的相 关逻 辑。 可以 对一 个简单 窗体 中组 件之 间的 依赖、 确认 和导 航应 用相 同的概 念。 业 务 层 : 大型的企业级应用通常围绕业务组件和业务过程进行构造。这些通常以业务层的很多组件、实体、 代理和接口展现出来。 业 务 对 象 (BE): 业 务 对 象 封 装 一 个 业 务 中 的 元 数 据 、 存 储 、 并 发 和 一 件 事 物 的 业 务 规 则 、 过 程 或 事件。多个独立的但有关联关系的业务对象可以一起协作来完成一个应用。完成不 - 6 - 同的任务需执行很多具有不同特点的

9、业务对象。业务对象负责执行包括强制的业务 规则、应用规则、数据有效性、并发和存储等所有方面的内容。业务实体对象是业 务 中 实 际 存 在 的 事 物 或 概 念 , 是 对 “ER”模 型 中 概 念 的 面 向 对 象 的 扩 展 。 业务处理对象(BP ): 描述贯穿 业务的工作流程和信息 。 这些处理驱动业务实体完成业务功能。 业 务处理对象可能由工作流系统、业务对象管理器、面向对象语言、程序语言、或交 互过程定义系统实现。通过调度一个或多个业务对象实现业务处理。业务处理可以 作为对象的一部分在内部完成。 服 务 接 口 (Interface): 一个应用可能会以服务的方式提供一些功能

10、供其它应用使用。服务接口代表这种对外 的服务。它隐藏了实现细节,只提供必要的业务接口。 表 示 和 业 务 的 调 用 : 业 务 层 的 调 用 服 务 通 过 平 台 提 供 的 服 务 工 厂 来 实 现 。 这 样 有 利 于 二 次 开 发 服 务 能 够 动 态 的 扩 展 到 应 用 程 序 中 去 。 数 据 层 : 业务应用必须访问存储在数据库中的数据。 这些数据库通常是关系数据库。 数据访问组件负责访 问存储在这些数据库中的数据,并与业务层进行交互。 数据访问组件隔离业务层和数据存储管理。这种隔离有以下好处: 减少数据库提供者变更带来的影响; 减 少 因 数 据 对 象 变

11、 更 带 来 的 影 响 ( 如 变 更 数 据 库 的 schema) ; 封装数据的处理操作,这将在很大程度上减少测试和维护工作; 通 过 平 台 提 供 的 数 据 访 问 服 务 组 件 管 理 O-R mapping的 复 杂 度 , 同 时 能 够 再 不 改 变 表 现 层 和 业 务 层的情况下来转换不同的数据库。 实 体 数 据 传 递 -EntityData 在 Web服 务 器 端 和 应 用 服 务 器 端 通 讯 或 应 用 之 间 通 讯 时 , 我 们 采 用 粗 粒 度 的 服 务 , 使 用 DTO(Data Transfer Object)来 传 递 数 据

12、 。 在 设 计 时 , 我 们 将 为 每 一 个 实 体 类 自 动 产 生 一 个 EntityData数 据 类 , 该 类 中 包 含与实体相同的属性。在前端可以使用数据类,但不能使用实体类。 服务网关: 业 务 组 件 经 常 必 须 访 问 内 部 或 外 部 的 服 务 或 应 用 。 一 个 服 务 网 关 是 封 装 了 接 口 、 协 议 和 使 用 这 种 服 务 的代码的组件。服务网关可以模拟外部服务促进领域测试。 技术平 台( EAP) : 基 础 引 擎 : 服 务 总 线 , O-R Maping,系 统 日 志 , 事 务 、 缓 存 、 Ajax, 认 证

13、、 安 全 等内容, 基础组件和模版组件,工作流,数据交换 业务平 台( BAP) :根 据小 企业的 特点 定业 业务 模式 框架 - 7 - 3.2. 物 理模 型 客户端(浏览器) 0* Http 11 Web服 务 器 应用服务器 T21协 议 UIC UIP Https协 议 11 Service BP Interface EAP BE EAP 11 数据库服务器 用 户 界 面 组 件 (UIC) 和 用 户 界 面 进 程 组 件 (UIP), 和 业 务 层 接 口 ( Interface) 是对 Internet 公 开 的 , 并 且 可 能 潜 在 地 与 许 多 客 户

14、 端 交 互 。 由 于 这 些 表 示 层 组 件 通 常 公 开 于 公 司防火 墙 外 部 , 因此 其安 全要求 通常 比未 公开 的组 件具有 多得 多的 限制 。 此 外, 许多 组织 要 求公开 于 Internet 中的 服务器 不能 包含 任何 敏感 数据。 因此, 通过 将表 示 层组件 单独 放入 一级并 配 置 该级 使其 具有 最高安 全性 , 可 显著 提高 解决方 案的 总体 安全 性, 同时可 尽量 降低 对 安 全 性 要 求 相 对 较 低 的 组 件 的 影 响 。 由于表 示层 组件 公开 于 Internet 中 , 因 此其 性能 和 可伸缩 性要

15、求通 常不 同于 域和数 据 访问层 组 件 的性 能和 可伸 缩性要 求 。 表 示层 组件 通常 为处理 以突 发方 式与 组件 交互的 许多 并 发用户 而 进 行优 化 。 域 和数 据访问 层组 件通 常为 处理 来自相 对较 少的 源所 发出 的稳定 请求 流 而进行 优 化 。 配置一 个可 充分支 持这 两组 优化 的级 可能是 非常 困难 的。 因此 , 解 决方 案是 使 用 两 级 , 并 使 每 一 层 针 对 所 驻 留 的 组 件 类 型 进 行 优 化 3.3. 部 署路 径 T+核 心 应 用 层 App 扩 展 层扩 展 纬 度 逻 辑 纬 度 Core Ex

16、tends WEB 服 务 器 UFSmart/ update Eap_ColumnSet set IsSystem=1,IsDevField=1 where SolutionID=(select id from eap_ColumnSetSolution where Name= 自 己 命名的方案 Name); 4、 预 置 展 示 字 段 - 23 - - 24 - 其 中 需 要 注 意 的 : 字 符 类 型 的 小 数 位 数 和 精 度 字 段 必 须 为 null, 字 段 预 置 和 DTO 对 应 , 如 果 是 引 用 关 系 , 则 依 据 DTO 中 属 性 层 级 关

17、 系 预 置 , 如 上 图 所 属 仓 库 预 置 。 5、 导 出 脚 本 通 过 工 具 中 “导 出 ”菜 单 , 则 导 出 栏 目 预 置 脚 本 至 此 , 栏 目 预 置 完 成 。 4.2.1.1.3.6. 第六步:卡片表单预置 卡 片 表 单 目 前 有 可 视 化 预 置 工 具 , 工 具 位 置 安 装 包 Appserverserver VoucherDesigner.exe,预 置 过 程 如 下 : 1、 确 定 卡 片 所 属 分 组 目 前 包 暂 命 名 为 xx 公 司 管 理 , 新 建 分 组 如 下 : - 25 - 2、 确 定 物 流 公 司

18、卡 片 表 单 名 称 并 创 建 表 单 命 名 开 发 者 可 以 自 己 定 义 , 对 于 物 流 公 司 卡 片 表 单 , 命 名 为 : AppCjtIDLogisticVoucher 其 中 表 单 创 建 必 须 依 赖 于 已 存 在 DTO。 3、 通 过 拖 拽 方 式 创 建 表 单 - 26 - 如上图 所示 , 对 于文 本类 型的属 性, 直接 拖拽 , 一 般不用 进行 修改 即可 。 对 于引用 类型 的则 需 要 设 置 对 一 些 属 性 进 行 设 置 , 以 满 足 控 件 要 求 , 比 如 下 拉 参 照 等 。 4、 导 出 元 数 据 脚 本

19、 通 过 工 具 的 “导 出 元 数 据 ”功 能 , 实 现 对 表 单 原 始 的 导 出 , 如 下 图 所 示 : - 27 - 至 此 卡 片 表 单 预 置 完 成 。 4.2.1.1.3.7. 第七步:配置及功能实现 通 过 以 上 6 步 数 据 及 代 码 准 备 工 作 , 基 础 设 置 列 表 及 表 单 开 发 可 以 如 下 配 置 并 实 现 : 1、 Website 创 建 独 立 的 运 行 目 录 , 命 名 为 AppCjtID 2、 增 加 新 增 模 块 配 置 文 件 配 置 信 息 在 Website BAPFunctionMapping.con

20、fig 中增加新增模块配置文件的配置信息如 下: - 28 - 3、 新 增 配 置 文 件 在 WebsiteAppCjtIDConfig 目 录 下 创 建 voucher.config 配 置 文 件 内 容 如 下 : 其 中 红 圈 标 注 部 分 需 要 注 意 : a) subsystem 节 点 的 assembly 属 性 指 的 是 前 端 对 应 的 后 台 处 理 程 序 集 名 称 。 b) controller 节点中 viewName 为 baseInfoCard 对 应 的 type 指 的 是 卡 片 表 单 后 台 处 理 类 名 , templateNam

21、e 属 性 节 点 对 应 的 value 值 指 的 是 该 卡 片 表 单 对 应 的 卡 片元数 据名 称( 已在 前面 预置过 ) 。 c) controller 节 点 中 viewName 为 baseInfoListView 指 的 是 卡 片 列 表 后 台 处 理 类 名, columnSetName 属 性节 点对应 的 value 值指 的是 该卡片 列表 对应 的栏 目方 案 名称( 已在 前面 预置 过) 。 4、 新 建 卡 片 表 单 前 台 处 理 脚 本 , 并 修 改 对 应 的 后 台 处 理 类 。 a) 在 Website/AppCjtID/Js 下

22、新 增 脚 本 文 件 CjtIDLogisticCard.js 并 添 加 内 容 如 下: 其 中 $T.Bap.Declare 部 分 是 声 明 命 名 空 间 , 下 面 的 部 分 是 创 建 改 卡 片 表 单 自 己 的 前 台 处 理 类 并 继 承 自 Website/BAPView/Js/ Voucher-vsdoc.js 文 件 中 Ufida.T.BAP.Client.Card 脚 本 基 类 。 - 29 - b) 修 改 卡 片 表 单 对 应 的 后 台 处 理 类 Ufida.T.App.CjtID.UIP. CjtIDLogisticCardControll

23、er 如 下 : 如 红 色 标 注 所 示 : 需 要 声 明 ClientObject 属 性 , 参 数 为 前 台 js 类 名 , 并 注 册 脚 本 。 5、 新 建 卡 片 列 表 前 台 处 理 脚 步 , 并 修 改 对 应 的 后 台 处 理 类 。 a) 在 Website/AppCjtID/Js 下 新 增 脚 本 文 件 CjtIDLogisticList.js 并 添 加 内 容 如 下 : 其 中 $T.Bap.Declare部 分 是 声 明 命 名 空 间 , 下 面 的 部 分 是 创 建 改 卡 片 表 单 自 己 的 前 台 处 理 类 并 继 承 自

24、Website/BAPView/Js/ List-vsdoc.js文 件 中 Ufida .T .BAP.Client.ReadOnlyList脚 本 基 类 。 b) 修 改 卡 片 表 单 对 应 的 后 台 处 理 类 Ufida.T.App.CjtID.UIP. CjtIDLogisticListController类 如下: - 30 - 如 红 色 标 注 所 示 : 需 要 声 明 ClientObject 属 性 , 参 数 为 前 台 js 类 名 , 并 注 册 脚 本 。 c)重 新 编 译 此 dll 6、 修 改 服 务 配 置 文 件 服 务 配 置 文 件 , 在

25、 安 装 包 Appserverconfig 目 录 下 涉 及 到 配 置 文 件 的 修 改 如 下 : 可 以 在 原 有 配 置 文 件 的 基 础 上 新 增 服 务 接 口 配 置 , 也 可 以 重 新 创 建 自 己 的 服 务 接 口 配 置 文 件 , 并 把 此 配 置 文 件 添 加 上 服 务 配 置 中 , 目 前 采 用 后 者 配 置 如 下 : a)修 改 services.xml 如 下 : b) 新 增 配 置 文 件 services_appcjtid.xml 并 配 置 如 下 : 其中 name 为新 增服 务接 口 名称 , className 是

26、 接口 对 应服务 实现 类名 , loadFrom 是 服 务 所 在 程 序 集 7、 修 改 菜 单 配 置 文 件 a) 进 入 菜 单 预 置 工 具 , 修 改 物 流 公 司 菜 单 对 应 的 RequestUrl为 : BAPView/BaseInfoList.aspx?sysId=AppCjtID 2、 如 果 是 报 表 联 查 单 据 , 则 在 报 表 工 具 的 “栏 目 设 置 ”中 将 “链 接 标 题 ”列 输 入 “查 看被 联 查 单据 菜单 名” , “链接 提示 ”列 输入 “查 看菜 单名 ” d 查询预置 预 置 分 组 : 【 序 号 】 参 见

27、 需 求 的 【 分 组 】 顺 序 【 分 组 名 称 】 参 见 需 求 的 【 分 组 】 中 的 【 列 名 】 【 分 组 小 计 】 参 见 参 见 需 求 的 【 分 组 】 中 的 【 默 认 分 组 小 计 】 【 分 组 汇 总 】 参 见 参 见 需 求 的 【 分 组 】 中 的 【 默 认 分 组 汇 总 】 【 简 单 查 询 】 来 自 于 需 求 的 【 过 滤 条 件 】 的 【 列 名 】 注 意 : 设 置 完 毕 之 后 , 需 要 使 用 searchTool 进 一 步 设 置 , 不 要 使 用 右 下 角 的 设 置 ! - 59 - 至 少 保

28、 存 一 次 ,否 则 看 到 的 东 西 不 会 保 存 到 数 据 库 , 报 错 : 找 不 到 查 询 方 案 4 查 询 预 置 工 具 (SearchTool.exe)的 使 用 查 询 预 置 工 具 提 供 了 设 置 报 表 高 级 或 简 单 查 询 的 过 滤 条 件 字 段 , 查 询 页 面 中 显 示 查 询 条 件 的 预 置 。 注意 : 首先 参照 需求 文档 的【过 滤条 件 】 设置 【简 单方案 】 ; 【 过滤 条件 】表 格的 【 类 型】对 应查 询工 具的 “控 件类型 ”, 设置 如下 : 逻辑 类 型: “控 件类 型” 设 为 CheckB

29、ox, 默认 值也 需 要设置 为要 求的 数值 。 日期 类 型: “控 件类 型” 设 为 DateSelectDropDown, 条件值 类型 设 为 Text 类 型, 默 认值 根 据 需 求 说 明 设 置 。 枚举 类 型: “控 件类 型” 设 为 ComboBox, 默认 值根 据 需求设 置。 数值类 型: “控 件类 型” 设 为 NumTextBox,条 件值 类 型设 为 Text 类 型。 字符 类 型: 需要 根据 【过 滤条件 】表 格的 【 说 明】 内容设 置“ 控件 类型 ”。 【 说 明 】 包 含 ”区 间 查 询 ”与 ”参 照 ”,“控 件 类 型

30、 ”设 为 RefComboBox, 条 件 值 类 型 设为 Code 类型; - 60 - 【说 明 】 不 包含 ”区间 查询 ”但包 含 ”参 照” , “控件 类型 ”设 为 MultiRefTextBox, 条 件 值 类 型 设 为 ID 类 型 ; 但 ” 制 单 人 ”,” 修 改 人 ”,” 审 核 人 ” 字 段 的 “控 件 类 型 ”设 为 TextComboBox, 条 件 值 类 型 设 为 Text 类 型 ; 【 说 明 】 不 包 含 ”区 间 查 询 ”与 ”参 照 ”, “控 件 类 型 ”设 为 TextBox, 条 件 值 类 型 设为 Text 类

31、 型 。 整型 : “控 件类 型” 设为 NumTextBox,条 件值 类型 设 为 ID 类型 。 具 体 的 字 段 查 询 设 置 , 可 以 查 找 eap_SearchPlanItem 表 相 应 字 段 的 预 置 。 【高级 方案 】只 需要 从【 从简单 方案 导入 字段 】 , 再 进行简 单修 改即 可 5 自 定 义 项 数 据 预 置 a、需求说明 (1)、 基 础 档 案 只 有 专 用 的 5 个 (字 符 5 个 +数 值 5 个 ), 共 10 个。 (2)、 表 头 自 定 义 项 有 6 个 专 用 (字 符 6 个 +数 值 6 个 )、 6 个 公

32、用 (字 符 6 个 +数 值 6 个 )。 共 24 个。 (3)、 表 体 自 定 义 项 有 4 个 专 用 (字 符 4 个 +数 值 4 个 )、 4 个 公 用 (字 符 4 个 +数 值 4 个 )。 共 16 个。 ( 4) 顺 序 :专 用 字 符 1-n 专 用 数 字 1-n 公 用 字 符 1-n 公 用 数 字 1-n。 b、预置报表元数据 打开报 表工 具, 打开 一个 报表的 字段 设置 界面 , 点 击导入 自定 义项 按钮 , 输 入 Dto 名称 、 别 名 、 输 入 自 定 义 想 数 目 , 点 击 确 定 , 自 动 生 成 报 表 元 数 据 。

33、- 61 - 元 数 据 规 则 : DtoPro 前 缀 的 预 制 规 则 为 : 当 前 数 据 所 在 的 单 据 的 名 称 +属 性 的 全 路 径 RefDtoPro 前 缀的 预制 规 则为: 被引 用 的 Dto 所 在单 据的名 称“ .”+被引 用 的 dtoName 例如: 销 售 订 单 SaleOrder 的 前 缀 DtoProp 前 缀 :SaleOrder RefDtoProp 前 缀 : SaleOrder.SaleOrderDTO 销 售 订 单 明 细 SaleOrderDetail DtoProp 前 缀 : SaleOrder.SaleOrderDe

34、tails RefDtoProp 前 缀 : SaleOrder.SaleOrderDetailDTO 销 售 订 单 中 的 客 户 的 自 定 义 项 DtoProp 前 缀 : SaleOrder.Customer RefDtoProp 前 缀 : Partner.PartnerDTO 销 售 订 单 中 的 销 售 订 单 明 细 中 的 货 品 的 自 定 义 项 DtoProp 前 缀 : SaleOrder.SaleOrderDetails.Inventory RefDtoProp 前 缀 : Inventory.InventoryDTO 所 有 其 他 相 关 元 数 据 中

35、RefDtpProp 的 属 性 一 律 等 于 VoucherName.DtoName.FieldName。 此 属 性 用 于 更 新 其 他 相 关 元 数 据 的 启 用 状 态 可 见 以 及 同 步 标 题 。 由于表 头自 定义 项和 表体 自定义 项也 进行 分组 , 所以 需要把 分组 中的 自定 义项 进行上 面 的 设 置 和 设 置 默 认 不 显 示 (isSystem=1)。 6 特 别 说 明 : 分 级 处 理 说 明 : 分 级 预 置 只 针 对 报 表 的 汇 总 表 与 执 行 表 , 明 细 表 与 帐 表 不 参 与 分 级 。 - 62 - a、基

36、础档案进行了如下处理: 增 加 了 几 张 表 , 将 原 来 的 递 归 型 的 转 换 为 非 递 归 的 数 据 行 有级次的基础档案 基础档案的部门、费用、收入, 货位、出入库类别、地区档案, 货品分类,往来分类。 上述八种档案,创建对应的表 AA_ParentXXX ,具体如下: 部门:AA_ParentDepartment 费 用 : AA_ParentExpenseItem 收入:AA_ParentIncome 货位:AA_ParentInventoryLocation 出入库类别:AA_ParentRDStyle 地区档案:AA_ParentDistrict 货品分类: AA_

37、ParentInventoryClass 往来分类:AA_ParentPartnerClass b、字段预制的处理 如 图 所 示 , 设 置 【 分 级 父 字 段 】 、 【 末 级 字 段 标 识 】 、 【 可 分 级 次 】 - 63 - c、 分 组 预 置 需要 【可 分级 次】 , 【汇 总 级次 】 需 求默 认 为 1, 【分 级父字 段 】 、 【 末级 字段 标识 】 如 果前 面 设 置 好 , 这 里 会 自 动 带 过 来 , 否 则 要 手 工 输 入 , 严 格 区 分 大 小 写 。 d、 查 询 的 预 置 【 查 询 工 具 】 的 分 级 字 段 需

38、要 【 过 滤 类 型 】 特 殊 , 需 要 作 如 下 处 理 : in (select IDSon from AA_ParentDepartment where IDParent in (0) ) - 64 - 注 意 :使 用 上 级 的 表 的 ID, 不 要 使 用 子 表 的 , 举 例 : 地 区 字 段 , 为 partner.iddistrict; 不 要 使 用 District.Id 部 门 字 段 , 为 arap.iddepartment 不 要 使 用 Department.Id 往 来 单 位 分 类 , 为 partner.idpartnerclass 不 要

39、 使 用 PartnerClass.Id 2.7 自 由 项 数 据 预 置 报 表 预 制 工 具 的 【 字 段 设 置 】 加上【 关 联 DTO 属性 】 , 格 式为: Eap_EnumItemDTO.FreeItem + 序号。 报 表 预 制 工 具 的 【 查 询 设 置 】 如果自 由项 需要 分组 , 需 要将分 组字 段设 置的 ”系 统 字段” 栏勾 选, 已 使其 在没 有启用 的情 况 下 不 显 示 出 来 。 - 65 - 【 查 询 工 具 】 设 置 【 系 统 字 段 】 为 true 4.2.2.4. UIP 文件的建立 建 立 各 模 块 的 项 目

40、: Ufida.T.【 模 块 编 码 名 称 】 .Report.UIP; 如 Ufida.T.PU.Report.UIP 建 立 文 件 , 注 意 命 名 规 范 要 和 报 表 预 置 一 致 , 参 考 各 模 块 代 码 。 举例: 【进 货单 统计 表】 namespace Ufida.T.PU.Report.UIP public class PurchaseArrivalSumRpt : DetailAndSumReportTemplateBase, IBeforeAssociate / / 进货单统计表标题 / protected override object PageTi

41、tle get return GetMultiLanguageText(“PU“, “ClientTip_PurchaseArrivalSumRpt_Title“); / / 传入查询带入项 / / protected override void CreateSearchContentHeader(IList text) text.Add(“PurchaseArrivalDTO.voucherdate“); text.Add(“PurchaseArrivalDTO_Vendor.Code“); text.Add(“Inventory.code“); #region IBeforeAssocia

42、te 成员 / / 此方法在点击联查时触发。 / 此方法主要完成:. 功 能 权 限 的 判 断 , .url的 重 定 向 / 返 回 null, 联 查 的 页 签 就 不 会 打 开 - 66 - / 返 回 的 string数 组 , 第 一 个 是 url, 第 二 个 是 tabText / / 联 查 路 径 / 编 号 / 名 称 / public string BeforeAssociate(UrlInfo url, string strCode, string tabText) string destUrl; string destCode; string destTitl

43、e; string voucherDate = url.QueryString“VoucherDate“; string fromField = url.QueryString“FromField“; DateTime openDate = GetSystemOption.GetOpenDate(); if (!string.IsNullOrEmpty(fromField) destCode = “SYS0923“; destTitle = HttpContext.GetGlobalResourceObject(“PU“, “ClientTip_Common_QiChu“).ToString(

44、); else destUrl = url.ToString(); destCode = strCode; destTitle = tabText; return new string destUrl.ToString(), destCode, destTitle ; #endregion PageTitle属性 , CreateSearchContentHeader方法 , BeforeAssociate方 法, 在 报表ui p 页 面 应 用 比 较 普 遍 , 它 们 所 实 现 的 功 能 如 相 关 注 释 所 示 。 下 面 对 它 们 作 逐 一 说 明 。 PageTitle

45、 属性 用 来 在 卡 片 上 显 示 相 应 的 菜 单 标 题 。 其 返 回 的 GetMultiLanguageText 方 法 , 是 调 用 基 类 的 GetMultiLanguageText(string module, string name)封 装 页 面 类 得 到 多 语 的 方 法 。 触发时 机: 当 进行 报表 查 询, 调 用页 面的 基类 , 完 成控制 器的 分配 任务 , 执 行模板 类的 基类 - 67 - TemplateBase 的 初 始 化 主 流 程 方 法 , 并 用 SetPageTitle()控 制 页 面 的 标 题 的 设 置 , 同

46、 时 调 用 ReportSearchTemplate 页面 的 PageTitle 重 写属 性 , 之后再 获取 相关 的报 表数 据, 将获 取的 数 据带入 给基 类的 初始 化方 法的相 关参 数, 再次 调 用 SetPageTitle(), 返回 报 表 uip 的 PageTitle 属 性 。 CreateSearchContentHeader 方法 用于显 示报 表的 表头 , 要 依据需 求文 档的 过滤 条件 的”带 入 报 表 ”列 的显 示设 置, 其 中的 字段 名 字 具 体 是 取 数 据 库 的 表 eap_searchplanitem 的 fieldnam

47、e 的 名 称 , 具 体 可 以 查 看 上 述 代 码的 CreateSearchContentHeader 方法。 注意: 当用 查询 预置 工具 修改了 报表 带入 项字 段名 称的时 候, 也必 须同 步修 改相 应 UIP 页面 的 CreateSearchContentHeader 方 法 的 传 入 带 入 项 的 名 称 。 触发时 机: 当 进行 报表 查 询, 根 据页 面的 url 请求 类型, 找到 相应 的控 制模 板类并 运行 , 初 始 化 主 流 程 , 调 用 报 表 模 板 基 类 的 BuildReportHeader()方 法 , 构 建 报 表 默

48、认 头 结 构 , 同 时 调用 C reateSearchContentHeaderFromAssociate(IList content), 创 建 联 查 报 表 带 入 项 , 返 回 报 表 uip 的 CreateSearchContentHeader(IList text)方 法 。 BeforeAssociate 方法 主要完 成对 功能 权限 的判 断, url 的重 定向 , 如 果此 方法返 回 null, 联查 的页 签就不 会打 开; 非 null 就 返 回 的 string 数 组 , 所 带 的 参 数 destUrl 是 联 查 的 url, destCode

49、 是 菜 单 编 码 , destTitle 是 菜 单 标 题 , 这 几 个 参 数 的 值 是 根 据 报 表 工 具 的 栏 目 设 置 的 联 查 标 题 、 联 查 提 示 预 置 得 到 的 。 说 明 : 当 然 , BeforeAssociate方 法 的 根 据 url检 查 权 限 的 功 能 已 经 在 报 表 模 板 基 类 DetailAndSumReportTemplateBase实现 了 , 如 果联 查的 数 据是期 初单 据的 内容 , 这 时就需 要加 以 区别, 主要 是针 对 string数组 的参 数取 值 处 理, 因 为该数 组参 数值 预置 实现 的只是 非期 初 的 情 况 , 期 初 的 情 况 不 能 用 预 置 数 据 体 现 出 来 , 就 需 要 在 相 应 的 UIP页 面 用 代 码 区 别 出 联 查 的 单 据 日 期 是 否 小 于 所 用 帐

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 实用文档资料库 > 策划方案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。