EAS-BOS开发问题与解决

合集下载

EASBOS开发指南_权限

EASBOS开发指南_权限

BOS开发指南—权限目录1. 简介 (4)1.1. 目的 (4)1.2. 适用对象 (4)1.3. 参考资料 (4)2. BOS权限系统总览 (4)3. 权限项介绍 (4)3.1. 权限项的关联实体 (4)3.2. 权限项的默认依赖 (5)3.3. 权限项扩展属性: orgRelation(权限项主业务组织类型) (5)3.4. 权限项扩展属性:permItemType(权限项类型) (6)3.5. 扩展属性enableDataPermission (7)3.6. 关于菜单的权限过滤 (7)3.7. 权限项组别 (8)3.8. 同步权限项 (8)3.9. 版本差异 (8)4. 功能权限 (8)4.1. 功能方面 (8)4.1.1. 设置权限项 (8)4.1.2. 分配权限项 (9)4.2. 技术方面 (9)5. 普通数据权限 (11)5.1. 功能方面 (11)5.1.1. 权限项设置 (11)5.1.2. 建立授权规则 (11)5.1.2.1. 授权规则的实体树配置 (11)5.1.2.2. 建立授权规则 (12)5.1.3. 分配数据权限 (12)5.2. 技术方面 (13)6. 字段权限介绍 (17)6.1. 功能方面 (17)6.1.1. 实体设置 (17)6.1.2. 生成字段子系统树 (18)6.1.3. 启用字段权限 (18)6.1.4. 字段权限授权 (18)7. 特殊数据权限 (19)7.1. 功能方面 (19)7.1.1. 集成单据实体 (19)7.1.2. 配置权限项 (19)7.1.3. 特殊数据权限设置 (20)7.1.3.1. 切换CU (20)7.1.3.2. 拥有者权限 (20)7.1.3.2.1. 启用拥有者权限 (20)7.1.3.2.2. 启用拥有者例外 (20)7.1.3.2.3. 其他拥有者 (21)7.1.3.3. 主管权限 (21)7.1.3.3.1. 设置主管权限 (21)7.1.3.3.2. 指定主管权限 (22)7.1.4. 特殊数据权限和普通数据权限的关系 (22)7.2. 版本差异 (22)7.2.1. 特殊数据配置文件 (22)7.2.2. 切换CU (22)7.2.3. 特殊数据权限和普通数据权限的关系 (22)8. 用户管理 (22)9. FAQ (24)9.1. 权限项相关功能1FAQ (24)9.2. 数据权限相关功能FAQ (24)9.3. 特殊数据权限FAQ (25)9.4. 字段权限FAQ (25)10. 附录 (25)11. 备注 (25)1.1. 目的本文档概要的介绍了BOS权限系统的基本概念、基本操作及常见问题。

金蝶EASBOS开发学习笔记

金蝶EASBOS开发学习笔记

金蝶EAS BOS开发学习笔记一.环境准备先把需要用到的透视图和相应的视图打开,在后面的练习中需要用到。

导入eas包后的结构如上图所示。

BOS透视图下常用到的窗口如上图所示,这些必须打开。

项目属性配置如下图所示:下面是Java透视图中的配置。

EAS 项目的配置数据中心配置调试Config二.需要用到的热键CTRL+SHIFT+R 打开资源CTRL+SHIFT+T 打开类型三.制作第一个列表查询界面打开“金蝶BOS设计开发工具”透视图1.打开eas/metadata/com/kingdee/eas/demo 节点说明:app目录下一般存放实体、表、查询等元数据;Client目录下一般存放ui,即界面数据;其他公共对象,如枚举、异常等通常放在与app、client同级目录中。

2.在app文件夹下新建实体XueLi(学历),父实体选择com.kingdee.eas.framework.app.DataBase3.右击XueLi.entity,在弹出菜单中选择“实体导出表”,保留默认值,名称为T_DE_XueLi4.打开T_DE_XueLi.table,修改主键名称,避免因为重名导致建表错误5.右击T_DE_XueLi.table,选择“导出...”,在弹出窗口中选择“导出数据表”6.打开管理控制台,在“数据中心”选择使用的数据中心,再打开“数据库管理”,把生成的CreateTable.sql中的内容COPY进去,点击工具栏的“执行(F5)”,最后“提交”。

7.在app文件夹下新建查询XueLiQuery,实体选择XueLi.entity8.打开查询XueLiQuery,选择字段标签页,选择“导入”,将要查询的字段添加进来,并调整各字段顺序。

还应该在“其它”页中定义排序和主键字段。

9.在client文件夹下新建UI,父对象选择com.kingdee.eas.framework.client.ListUI(列表界面),BO对象选择XueLiQuery.query,其他用默认值即可。

使用EAS BOS过程中常见问题

使用EAS BOS过程中常见问题

使用EAS BOS过程中常见问题BOS工具常见问题集一、功能点使用问题解答 ..................................................................... .......................................... 2 二、环境使用类问题解答 ..................................................................... .......................................... 3 三、事件类问题解答...................................................................... ................................................. 8 四、发布类问题解答...................................................................... ................................................. 8 五、部署类问题解答...................................................................... ............................................... 12 六、集成模块----单据转换问题 ..................................................................... .............................. 13 七、集成模块----权限问题 ..................................................................... ...................................... 14 八、集成模块----工作流问题 ..................................................................... .................................. 15 九、工作流使用问题解答 ..................................................................... . (16)I、工作流快速入门部分 ..................................................................... . (16)II、工作流常见问题解答 ..................................................................... (30)III、现场常见流程配置 ..................................................................... (31)IV、现场常见问题解决方案...................................................................... ........................... 38 十、集成模块----预警平台问题 ..................................................................... .............................. 65 十一、集成模块----报表问题 ..................................................................... .................................. 65 十二、集成模块----组织架构 ..................................................................... .................................. 66 十三、代码应用问题...................................................................... ............................................... 68 十四、升级参考步骤...................................................................... ............................................... 71 十五、版本遗留缺陷...................................................................... .. (74)一、功能点使用问题解答1、业务建模工具所定义的单据是怎么调整顺序的,在业务建模工具视图选中该单据,菜单【业务单元】,【录入顺序】用来调整编辑界面的输入顺序,也可以调整分录字段的显示顺序;菜单【业务单元】,【查询顺序】用来调整序时簿界面的显示顺序。

EAS-BOS开发

EAS-BOS开发

EAS-BOS开发1. 简介EAS-BOS(Enterprise Application System - Business Operation System)是一种企业应用系统的商业操作系统,旨在帮助企业管理其业务流程和操作。

该文档将介绍EAS-BOS 的开发流程和相关注意事项。

2. 开发流程EAS-BOS开发通常遵循以下流程:2.1. 需求分析在开发EAS-BOS之前,需要从业务角度充分了解和分析需求。

这包括确定所需的功能模块、流程和操作。

2.2. 架构设计在需求分析完成后,需要进行架构设计。

这涉及确定系统的组件和模块,以及它们之间的交互方式。

2.3. 数据库设计EAS-BOS通常需要与数据库交互,因此在开发之前,需要进行数据库设计。

这包括定义数据库表和字段,以及数据库之间的关系。

2.4. 编码实现根据需求分析和架构设计的结果,开始进行编码实现。

这涉及编写后端和前端代码,并确保它们能够正常地进行数据交互和业务处理。

2.5. 测试和调试在编码实现完成后,需要进行测试和调试。

这包括单元测试、功能测试和性能测试等,以确保系统的稳定性和正确性。

2.6. 部署和发布通过测试和调试后,可以将系统部署到生产环境中。

这包括配置服务器、安装依赖项和发布系统,以便用户可以使用EAS-BOS。

3. 开发注意事项在开发EAS-BOS时,需要注意以下事项:3.1. 安全性EAS-BOS通常包含敏感数据和业务逻辑,因此需要重视系统的安全性。

这包括对用户身份验证和授权进行严格管理,以及保护系统免受恶意攻击和数据泄露。

3.2. 可扩展性EAS-BOS通常随着企业的业务规模和需求的增长而扩展。

在开发过程中,需要考虑系统的可扩展性,以便支持未来的扩展和增量开发。

3.3. 用户体验EAS-BOS的用户体验对于企业的员工非常重要。

在开发过程中,需要关注用户界面的易用性、响应速度和一致性,以提高用户满意度和工作效率。

3.4. 文档和培训在开发EAS-BOS之后,需要提供清晰的文档和培训材料,以帮助用户理解系统的功能和操作。

金蝶EAS-BOS工作笔记

金蝶EAS-BOS工作笔记

1. 发布元数据没看到代码,可能有以下原因:1。

发布方案路径(src,deploy,metadate)不对2. eas 5.4 更新数据中心报文件找不到错误:到项目目录下的runtime 下config 下的datasources.xml 删除版本检查代码---第二段代码3. 在eclipse中加入反编译插件,1。

jad.exe 加入到C:\WINDOWS\system322. jadclipse_3.1.0.jar 加入到E:\kingdeeEAS\eas\bos\BOSModular\platform\eclipse\plugins4. 继承ListUI的界面,必须有个id字段5. 加载onLoad方法出错,有可能是onLoad()方法,调用其他方法里面有错误代码6. Invalid column name : 1. rowSet.getString(“xxx”); xxx不是有效的列名2. 还有就是table的列名无效7. 应用服务配置不正确:可能是:1.启动的服务器与运行的项目方案不一致2.数据库服务没有启动3.数据中心没有设置正确8. BOS 中实体Entity 的ID 是通过oracle的Functions 功能实现ID自动变化,通过entity_pkmapping.properties 这个找到每个实体的对应BOSTYPE的值。

9. 使用BOS界面,弹出‘客户端配置错误,找不到第三方类’,可能是:1.客户端代码有错误;2.类不存在10. 在单据里,得到各分录的记录:1.通过界面得到:ProposalDefinedInfo pdInfo ; //单据InfopdInfo.ProposalDefinedEntry1Collection();//返回ProposalDefinedEntry1Collection集合pdInfo.ProposalDefinedEntry2Collection();//返回ProposalDefinedEntry2Collection集合2.通过实体关系得到:this.kdtEntry1 //得到kdtEntry1 这个表格的对象this.kdtEntry2 //得到kdtEntry2 这个表格的对象this.kdtEntry3 //得到kdtEntry3 这个表格的对象11. 你想引用某个界面上所有功能:1. 可以通过继承这个界面2. 可以通过复制这个界面,再反编译实现类12. 如果你得到一个实体的Info对象,再取到实体各字段的值1. Info.getString(“这里写字段的名称”);2. Info.get()方法——得到各属性的值13.发布BIM 或者是 BOS下的文件之前,最好是先校验下,如果校验不通过,那么发布肯定过不了。

金蝶EAS_BOS工作笔记要点

金蝶EAS_BOS工作笔记要点

1. 发布元数据没看到代码,可能有以下原因:1。

发布方案路径(src,deploy,metadate)不对2. eas 5.4 更新数据中心报文件找不到错误:到项目目录下的runtime 下config 下的datasources.xml 删除版本检查代码---第二段代码3. 在eclipse中加入反编译插件,1。

jad.exe 加入到C:\WINDOWS\system322. jadclipse_3.1.0.jar 加入到E:\kingdeeEAS\eas\bos\BOSModular\platform\eclipse\plugins4. 继承ListUI的界面,必须有个id字段5. 加载onLoad方法出错,有可能是onLoad()方法,调用其他方法里面有错误代码6. Invalid column name : 1. rowSet.getString(“xxx”); xxx不是有效的列名2. 还有就是table的列名无效7. 应用服务配置不正确:可能是:1.启动的服务器与运行的项目方案不一致2.数据库服务没有启动3.数据中心没有设置正确8. BOS 中实体Entity 的ID 是通过oracle的Functions 功能实现ID自动变化,通过entity_pkmapping.properties 这个找到每个实体的对应BOSTYPE的值。

9. 使用BOS界面,弹出‘客户端配置错误,找不到第三方类’,可能是:1.客户端代码有错误;2.类不存在10. 在单据里,得到各分录的记录:1.通过界面得到:ProposalDefinedInfo pdInfo ; //单据InfopdInfo.ProposalDefinedEntry1Collection();//返回ProposalDefinedEntry1Collection集合pdInfo.ProposalDefinedEntry2Collection();//返回ProposalDefinedEntry2Collection集合2.通过实体关系得到:this.kdtEntry1 //得到kdtEntry1 这个表格的对象this.kdtEntry2 //得到kdtEntry2 这个表格的对象this.kdtEntry3 //得到kdtEntry3 这个表格的对象11. 你想引用某个界面上所有功能:1. 可以通过继承这个界面2. 可以通过复制这个界面,再反编译实现类12. 如果你得到一个实体的Info对象,再取到实体各字段的值1. Info.getString(“这里写字段的名称”);2. Info.get()方法——得到各属性的值13.发布BIM 或者是 BOS下的文件之前,最好是先校验下,如果校验不通过,那么发布肯定过不了。

金蝶EASBOS工作笔记

金蝶EASBOS工作笔记
金蝶EAS-BOS工作笔记
———————————————————————————————— 作者:
———————————————————————————————— 日期:
1.发布元数据没看到代码,可能有以下原因:1。发布方案路径(src,deploy,metadate)不对
2.eas 5.4更新数据中心报文件找不到错误:到项目目录下的runtime下config下的datasources.xml删除 版本检查代码---第二段代码
可能是:1.客户端代码有错误;
ﻩ 2.类不存在
10. 在单据里,得到各分录的记录:
1.通过界面得到:
ProposalDefinedInfopdInfo ; //单据Info
pdInfo.ProposalDefinedEntry1Collection();
//返回ProposalDefinedEntry1Collection集合
ﻩﻩ 2.数据库服务没有启动
ﻩﻩﻩ3.数据中心没有设置正确
8. BOS 中实体Entity 的ID 是通过oracle的Functions 功能实现ID自动变化,通过entity_pkmapping.properties这个找到每个实体的对应BOSTYPE的值。
9. 使用BOS界面,弹出‘客户端配置错误,找不到第三方类’,
15. 当功能运行结果跟你想象中有不一致的地方,但是你的操作认为没有什么问题,
这种情况可以是服务器读取文件没有更新:
解决方法有:1. 你需要涮新下源文件src
ﻩﻩﻩ 2. 重新启动服务器
16. 得到记录集合的方式:1. 通过实体工厂(xxxEntryFactory)
ﻩﻩﻩﻩ 2. 通过查询(xxxQuery)

金蝶EAS BOS工作笔记

金蝶EAS BOS工作笔记
1、发布元数据没看到代码:发布方案路径(src,deploy,matadate)不对。 2、eas5.4 更新数据中心包文件找不到错误:到项目目录下的 runtime 下 config 下的 datasources.xml 删除版本检查代码---第二段代码。 3、在 eclipse 中加入反编译插件 jad.exe 加入到 C:\WINDOWS\system32;包 jadclipse_3.1.0.jar 加入到 E:\kingdeeEAS\eas\bos\BOSModular\platform\eclipse\plugins。(7.0.3 版本我用是 org.sf.feeling.decompiler_1.0.3.zip) 4、继承 ListUI 的界面,必须有个 id 字段。 5、加载 onLoad 方法出错,有可能是 onLoad()方法,调用其他方法里面有错误代码。 6、无效列名错误 Invalid column name : rowSet.getString(“xxx”); xxx 不是有效的列名 还有就是 table 的列名无效 7、应用服务配置不正确: 启动的服务器与运行的项目方案不一致 数据库服务没有启动 数据中心没有设置正确 8、BOS 中实体 Entity 的 ID 是通过 oracle 的 Functions 功能实现 ID 自动变化,通过 metadata 下的 entity_pkmapping.properties 文件信息中找到每个实体的对应 BOSTYPE 的值。 9、使用 BOS 界面,弹出‘客户端配置错误,找不到第三方类’可能是: 客户端代码有错误 类不存在
rowSet.next();
4 / 59
内容来自网络,请谨慎验证使用。
guerdonAmt=FDCHelper.toBigDecimal(rowSet.getBigDecimal("amount")); } builder.clear(); 17、删除界面中的字段要注意:如果这个字段是在 BIM 下新建的,就要在 BIM 下去删除; 如果这个字段是在 BOS 下新建的,就要在 BOS 下去删除。 18、自定义 F7 实现步骤: 1. 在 BOS 界面,先拖入 kDLabelContainer,再拖入一个 F7:kDBizPromptBox,调 整 F7 大小:boundLabelLength:100; 2. 在 F7 控件绑定 query 在 F7 属性里 queryInfo com.kingdee.eas.custom.proposal.app.AsstActTypeQuery; 3. 建立一个 BOS 界面实体与 F7 的实体关系 RelationShips: Associationcom.kingdee.eas.custom.nj.app.R_F7_AsstType_FA(1--------0..1); 4. 在 BOS 界面实体,加入一个连接属性:projectPlace,并选好对应关系;并在 BOS 界面实体对应表中加入 F7 实体 ID,到相应表加入 UI 控件对应的字段; a) 到 BOS 界面,对 F7 字段进行数据绑定 5. 在 query 里,增加关联的子对象,并将属性导入到 query 里去,然后发布; 6. 将实体绑定到 F7; 7. 发布 UI。 19、制作自定义辅助核算项目 F7 select * from T_BD_GeneralAsstActType t where t.fgroupid='iXhSqAEUEADgAWe2wKgA0gXSzQw=' select * from T_BD_GeneralAsstActTypeGroup

金蝶EAS_BOS工作笔记

金蝶EAS_BOS工作笔记

金蝶EAS_BOS工作笔记1. 发布元数据没看到代码,可能有以下原因:1。

发布方案路径(src,deploy,metadate)不对2. eas 5.4 更新数据中心报文件找不到错误:到项目目录下的runtime 下config 下的datasources.xml 删除版本检查代码---第二段代码3. 在eclipse中加入反编译插件,1。

jad.exe 加入到C:\WINDOWS\system322. jadclipse_3.1.0.jar 加入到E:\kingdeeEAS\eas\bos\BOSModular\platform\eclipse\plugins4. 继承ListUI的界面,必须有个id字段5. 加载onLoad方法出错,有可能是onLoad()方法,调用其他方法里面有错误代码6. Invalid column name : 1. rowSet.getString(“xxx”); xxx不是有效的列名2. 还有就是table的列名无效7. 应用服务配置不正确:可能是:1.启动的服务器与运行的项目方案不一致2.数据库服务没有启动3.数据中心没有设置正确8. BOS 中实体Entity 的ID 是通过oracle的Functions 功能实现ID自动变化,通过entity_pkmapping.properties 这个找到每个实体的对应BOSTYPE的值。

9. 使用BOS界面,弹出‘客户端配置错误,找不到第三方类’,可能是:1.客户端代码有错误;2.类不存在10. 在单据里,得到各分录的记录:1.通过界面得到:ProposalDefinedInfo pdInfo ; //单据InfopdInfo.ProposalDefinedEntry1Collection();//返回ProposalDefinedEntry1Collection集合pdInfo.ProposalDefinedEntry2Collection();//返回ProposalDefinedEntry2Collection集合2.通过实体关系得到:this.kdtEntry1 //得到kdtEntry1 这个表格的对象this.kdtEntry2 //得到kdtEntry2 这个表格的对象this.kdtEntry3 //得到kdtEntry3 这个表格的对象11. 你想引用某个界面上所有功能:1. 可以通过继承这个界面2. 可以通过复制这个界面,再反编译实现类12. 如果你得到一个实体的Info对象,再取到实体各字段的值1. Info.getString(“这里写字段的名称”);2. Info.get()方法——得到各属性的值13.发布BIM 或者是BOS下的文件之前,最好是先校验下,如果校验不通过,那么发布肯定过不了。

使用EAS BOS过程中常见问题

使用EAS BOS过程中常见问题

BOS工具常见问题集功能点使用问题解答 (2)环境使用类问题解答 (3)事件类问题解答 (8)发布类问题解答 (8)部署类问题解答 ............................................................................................... 错误!未定义书签。

集成模块----单据转换问题 .. (13)集成模块——--权限问题 (14)集成模块—--—工作流问题 (15)集成模块—---预警平台问题 (57)集成模块-——-报表问题 (65)集成模块----组织架构 (65)代码应用问题 (68)升级参考步骤 (71)版本遗留缺陷 (74)一、功能点使用问题解答1、业务建模工具所定义的单据是怎么调整顺序的?在业务建模工具视图选中该单据,菜单【业务单元】→【录入顺序】用来调整编辑界面的输入顺序,也可以调整分录字段的显示顺序;菜单【业务单元】→【查询顺序】用来调整序时簿界面的显示顺序.2、目前字段修改能修改什么属性?业务建模工具里不能修改系统定义字段(可以切换到studio视图修改),只能修改自定义字段;如果想要修改系统定义字段的显示标题,可通过属性里的“标签文字”进行修改;在自定义字段未保存前,该字段所对应的所有属性都可以修改;在自定义字段保存后,该字段只能修改字段标题,出现需要修改字段除了别名以外的属性的问题,比较快速的变通处理方法是删掉此字段再重建。

3、BIM中建的枚举只有整型吗?可不可以定义其他类型的枚举?目前都默认为String类型处理4、在运行时,EditUI界面中点击复制并新增时,单据编号(已配置编码规则)同时也会复制过去,而不会产生新的单据编号,如何解决?请重载setFieldsNull()方法,然后把你不想复制的字段set一个null值在里面就可以了5、在我们开发单据中,每个单据都自定义了一个审核的字段(并没有使用框架的审核功能),每张单都需要用户手工审核操作的。

EAS_BOS技术文档

EAS_BOS技术文档

Q1.在BIM里删除某字段后,保存,发布。

所有元数据和代码都已不存在与已删除字段相关的信息,但运行时还报与此字段的相关的错误。

A1.如果元数据和代码都没错,即metadata和src目录下的东西都没错,此时可以找发布元数据的目录(metas),错误的原因可能是metas和metadata的文件不同步,解决办法是到BOSStudio里重新发布元数据。

Q2.机器换了IP后,发布业务单元时出错数据库同步错误,测试账套连接时出现以下画面:A2.在解决方案的目录下有几个文件跟机器IP有关(\datacenters.xml,\bimproject.xml,\runtime\datacenters.xml,\runtime\config\datasources.xml等),将其中的IP修改一下,重启BOS即可。

Q3.EditUI.java中Constructor(),OnLoad(),LoadFields(),StoreFields()方法的先后调用顺序。

A3.第一次打开界面时的调用顺序:Constructor()ÆOnLoad()ÆLoadFields()ÆStoreFields()。

界面打开后的每一次新增都不会再次调用OnLoad(),即只剩下LoadFields()ÆStoreFields()。

LoadFields()是将数据库的数据读入editData并写到组件上,StoreFields()是将组件上的数据写入editData,供保存submit用。

而OnLoad是负责画界面的。

Q4.打开某基础资料的ListUI时报异常:“name’s type is not correct”A4.可能是此基础资料引用另一个基础资料(标为Other),而基础资料Other是其他开发人做的,在本地尚未发布。

只要在本地发布一下即可解决。

Q5.在BOS里如何新建一个属性并保存到数据库?A5. 1.在.table里新建数据库字段2.如果是关联属性,则新建一个关系.relation3.Query建不建看你的需求4.在实体.entity里新建一属性,指定对应的数据库表字段。

金蝶EASBOS工作流开发

金蝶EASBOS工作流开发

金蝶EAS BOS工作流开发1. 流程配置基本知识及示例1.1. 重要概念1.1.1.流程变量流程变量是工作流引擎和业务系统的数据交互的桥梁。

工作流承载业务,驱动业务流程,但是不会执行业务。

工作流中的业务执行,全部都会委托给具体的业务模块执行。

那么,这些被工作流分割的业务功能,在工作流中被调用执行的时候,如何保证做操作的数据的一致性?通过流程变量,在每一步的业务功能执行的过程中,将业务数据保存在流程变量中,那么整个流程的后续活动中,都可以引用该流程变量,来完成业务功能,保证业务数据的一致性。

例如:在凭证的审批流程中,新增凭证审批,审批的时候为什么可以正确定为到刚刚提交的那张凭证,而不是别的凭证?流程变量起到了重要的作用。

在凭证新增之后,将可唯一标示凭证的ID保存到流程变量中,在审批的时候将流程变量中的值传递给凭证,就可以根据这个ID获取到一张凭证了。

流程变量在流程实例的生命周期内都是有效的。

1.1.2.任务输入输出任务输入:在业务发生之前,有工作流传递给业务的数据。

以凭证的过账为例,某个用户收到一条凭证过账的消息,双击消息处理。

在双击之后、凭证的界面弹出之前,工作流会把定义的入口参数变量中的值传递给凭证,凭证根据这个值来展现特定的单据,展现特定的功能。

任务输出:在业务发生之后,由业务系统传递给工作流,需要保存在流程变量中的数据。

仍以凭证过账为例,在用户操作完凭证过账之后,工作流继续流转之前,如果流程定义中定义了任务的输出,那么,就会将凭证对应的属性的数据,保存在流程变量中。

已备在后续的流程活动中使用。

1.2. 注意事项l 绘画工作流图之前一定要先将业务流整理清楚,分析业务流的特性,提取可以抽象出来公用的东西,分析是否可以进行优化等,好的业务流程可以直接映射为工作流流程。

l 利用“流程变量”的威力,建立单据和流程之间数据交换的桥梁。

输入输出参数用来在流程和单据之间进行数据的传递。

输入输出参数和流程变量搭建了流程和单据之间的数据联系通道。

使用EAS BOS过程中常见问题

使用EAS BOS过程中常见问题

BOS工具常见问题集一、功能点使用问题解答 (2)二、环境使用类问题解答 (4)三、事件类问题解答 (11)四、发布类问题解答 (12)五、部署类问题解答 (19)六、集成模块----单据转换问题 (21)七、集成模块----权限问题 (23)八、集成模块----工作流问题 (24)九、工作流使用问题解答 (26)I、工作流快速入门部分 (26)II、工作流常见问题解答 (45)III、现场常见流程配置 (46)IV、现场常见问题解决方案 (60)十、集成模块----预警平台问题 (106)十一、集成模块----报表问题 (107)十二、集成模块----组织架构 (108)十三、代码应用问题 (113)页脚内容1十四、升级参考步骤 (120)十五、版本遗留缺陷 (126)一、功能点使用问题解答1、业务建模工具所定义的单据是怎么调整顺序的?在业务建模工具视图选中该单据,菜单【业务单元】【录入顺序】用来调整编辑界面的输入顺序,也可以调整分录字段的显示顺序;页脚内容2菜单【业务单元】【查询顺序】用来调整序时簿界面的显示顺序。

2、目前字段修改能修改什么属性?业务建模工具里不能修改系统定义字段(可以切换到studio视图修改),只能修改自定义字段;如果想要修改系统定义字段的显示标题,可通过属性里的“标签文字”进行修改;在自定义字段未保存前,该字段所对应的所有属性都可以修改;在自定义字段保存后,该字段只能修改字段标题,出现需要修改字段除了别名以外的属性的问题,比较快速的变通处理方法是删掉此字段再重建。

3、BIM中建的枚举只有整型吗?可不可以定义其他类型的枚举?目前都默认为String类型处理4、在运行时,EditUI界面中点击复制并新增时,单据编号(已配置编码规则)同时也会复制过去,而不会产生新的单据编号,如何解决?请重载setFieldsNull()方法,然后把你不想复制的字段set一个null值在里面就可以了5、在我们开发单据中,每个单据都自定义了一个审核的字段(并没有使用框架的审核功能),每张页脚内容3单都需要用户手工审核操作的。

金蝶EAS BOS工作笔记

金蝶EAS BOS工作笔记
commonQueryDialog.addUserPanel(new ContractFullFilterUI(this, actionOnLoad));
6 / 59
ห้องสมุดไป่ตู้
内容来自网络,请谨慎验证使用。
return commonQueryDialog; } } 24、得到外键属性的值: 通过主实体得到得到该外键属性的 id,如:entryInfo.get 外键()对象(这个对象只有 id);先得到外键对象 id,通过 id 得到外键对象 得到外键对象,那么就可以得到外键实体的任何属性值 25、初始化界面: publicvoidinitUIToolBarLayout() { super.initUIToolBarLayout(); kDBtnVoucher.setIcon(EASResource.getIcon("imgTbtn_auditing")); } 26、点击‘table’时,提示‘你没有选中行’或者‘行的颜色没有变化’可能: table 里没有 id 字段 tblMain.checkParsed(true);这段代码没写 27、出了有关系统‘代码底层的错误’,请检查自己的代码; 28、设置单元格 Cell 数字格式,对齐格式: table.getColumn(columnName).getStyleAttributes().setNumberFormat("#,##0.00;#,##0.00"); table.getColumn(columnName).getStyleAttributes().setHorizontalAlign(com.kingd ee.bos.ctrl.kdf.util.style.Styles.HorizontalAlignment.RIGHT);

EASBOS开发指南_权限

EASBOS开发指南_权限

EASBOS开发指南_权限在开发EASBOS(企业级应用安全基础服务)时,权限是一个非常重要的关键点。

权限的设计和实现能够确保用户只能访问他们被授权的资源和操作,同时也能够防止未经授权的用户访问敏感数据和功能。

在本指南中,我们将介绍权限设计和实现的一些重要原则和最佳实践。

1. RBAC(Role-Based Access Control)角色基础访问控制:RBAC是一种广泛使用的权限模型,允许管理员为用户分配不同的角色,每个角色对应一组权限。

在EASBOS中,我们可以为不同的用户类型(如管理员、普通用户、游客等)定义不同的角色,并将角色与相应的权限关联起来。

这样一来,每个用户只需被分配一个适当的角色,即可获得相应的权限。

2.细粒度的权限控制:为了确保更好的安全性,我们需要实现细粒度的权限控制。

除了基本的读取和写入权限之外,我们还可以为每个资源和操作定义更详细的权限。

例如,针对一些具体的数据表,我们可以定义读取、写入、修改、删除等权限,同时根据不同的角色进行精确分配。

3. 基于资源的访问控制(ABAC):传统的权限控制模型主要以角色为基础,但在一些复杂场景中,ABAC(Attribute-Based Access Control)基于资源的访问控制模型更加灵活和可扩展。

ABAC模型基于属性来实现访问控制,这些属性可以是用户的属性、资源的属性以及环境的属性。

在EASBOS中,我们可以使用ABAC模型来实现更细粒度的权限控制,例如,针对一些业务数据只允许特定部门的用户进行访问。

4.超级管理员权限:在权限设计中,通常会有一个超级管理员角色,拥有最高权限,能够执行任意操作。

超级管理员通常只有少数几个人拥有,并且需要对其进行严格的访问控制和审计。

在EASBOS的权限设计中,我们需要确保超级管理员角色只分配给可信的员工,并且对其操作进行严密的监控和审计。

5.权限的继承和组合:为了简化权限管理,我们可以将权限进行继承和组合。

使用EAS BOS过程中常见问题

使用EAS BOS过程中常见问题

使用EAS BOS过程中常见问题BOS工具常见问题集一、功能点使用问题解答2二、环境使用类问题解答3三、事件类问题解答8四、发布类问题解答8五、部署类问题解答12六、集成模块----单据转换问题13七、集成模块----权限问题14八、集成模块----工作流问题15九、工作流使用问题解答16I、工作流快速入门部分16II、工作流常见问题解答30III、现场常见流程配置31IV、现场常见问题解决方案38十、集成模块----预警平台问题65十一、集成模块----报表问题65十二、集成模块----组织架构66十三、代码应用问题68十四、升级参考步骤71十五、版本遗留缺陷74一、功能点使用问题解答1、业务建模工具所定义的单据是怎么调整顺序的,在业务建模工具视图选中该单据,菜单【业务单元】,【录入顺序】用来调整编辑界面的输入顺序,也可以调整分录字段的显示顺序;菜单【业务单元】,【查询顺序】用来调整序时簿界面的显示顺序。

2、目前字段修改能修改什么属性,业务建模工具里不能修改系统定义字段(可以切换到studio视图修改),只能修改自定义字段;如果想要修改系统定义字段的显示标题,可通过属性里的“标签文字”进行修改; 在自定义字段未保存前,该字段所对应的所有属性都可以修改;在自定义字段保存后,该字段只能修改字段标题,出现需要修改字段除了别名以外的属性的问题,比较快速的变通处理方法是删掉此字段再重建。

3、,,,中建的枚举只有整型吗,可不可以定义其他类型的枚举,目前都默认为String类型处理4、在运行时,EditUI界面中点击复制并新增时,单据编号(已配置编码规则)同时也会复制过去,而不会产生新的单据编号,如何解决,请重载setFieldsNull()方法,然后把你不想复制的字段set一个null值在里面就可以了5、在我们开发单据中,每个单据都自定义了一个审核的字段(并没有使用框架的审核功能),每张单都需要用户手工审核操作的。

金蝶eas常见问题解答工具及框架应用

金蝶eas常见问题解答工具及框架应用

1 BOS工具1.1 bos 启动测试,服务端启动就绪,但是客户端起不来问题描述拷贝过来的bos 解决方案,启动测试一直停留在服务器就绪步骤。

BOS 业务建模工具启动测。

解决方法拷贝过来的解决方案,其解决方案\runtime\apusic\config\server.xml中的内容为空。

拷贝一个能正常启动测试的该配置文件,替换即可。

.适用版本EAS703.1.2 测试启动的服务器端自动关闭并报错问题描述EAS7.0.3 , bos6.1.0bos 导入 703 的 demo 帐套,服务器端为703.启动测试后,测试启动的服务器端自动关闭并报错。

但是如果用控制台启动,则没有问题。

尝试过更新bos 工具,更新解决方案,重新构建等均无法解决。

解决方法现场更新补丁:PT054300 。

.适用版本EASV7.0.31.3 60 老版本工作流连接,版本不匹配问题问题描述步骤 1 60 老版本工作流连接,版本不匹配。

解决方法解决方法:步骤 1步骤 1 更新 BOS 工具,确保BOS 工具版本和服务端的版本一致。

步骤 2步骤 2 安装补丁PT028007 。

将 PT028007 下载到本地,然后在 bos 工具“工具 -更新 BOS 工具”中进行安装,解决插件下载不下来的问题。

步骤 3步骤 3 检查服务器路径“ $EAS_HOME\ eas\server\lib\sp ”目录下面是否存在“ sp-metadata.jar”文件。

如果存在,则把“$EAS_HOME\ eas\server\lib\sp ”目录下面的“sp-metadata.jar”改名为“ metadata.jar”并替换“”目录下的“ metadata.jar”(替换前备份一下);这样建模工具再连接的时候就可以直接更新该目录下的“metadata.jar”包。

如果不存在,则执行下一步。

步骤4步骤 4 无法连接工作流,可能是元数据不一致导致,可以将服务端的四个jav 包拷贝到供本地 BOS 下载的服务器路径下,需要拷贝服务端“ $EAS_HOME\eas\server\lib\common\bos”目录下的四个文件:common.jarormrpc.jarbosframework.jarmetadata.jar将这四个文件覆盖服务器“ $EAS_HOME\eas\server\deploy\fileserver.ear\easWebClient\BOSModular\boscommon\eclipse\plugins”路径下的如下文件:以及“BOSModular\bosruntime\eclipse\plugins”路径下的“” (对应bosframework.jar )。

EAS-BOS二次开发补丁制作及安装

EAS-BOS二次开发补丁制作及安装
easbos二次开发补丁制作及安装燕飞出品一打补丁方法元数据源代码补丁存放位置二制作补丁方法1打开bos开发工具选择bim透视图2选中解决方案选择工具部署3设置部署参数easbos二次开发补丁制作及安装燕飞出品点击下一步选择帐套4点击完成生成补丁easbos二次开发补丁制作及安装燕飞出品
EAS-BOS 二次开发补丁制作及安装
一、打补丁方法
元数据、源代码补丁存放位置
燕飞出品
二、制作补丁方法
1、打开 BOS 开发工具,选择 BIM 透视图
2、选中解决方案,选择“工具”-“部署”
3、设置部署参数
第(1)页,共(3)页
EAS-BOS 二次开发补丁制作及安装
燕飞出品
点击“下一步”,选择帐套
4、点击“完成”,生成补丁
第(2)页,共(3)页
EAS-BOS 二次开发补丁制作及安装
燕飞出品
第(3ቤተ መጻሕፍቲ ባይዱ页,共(3)页
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Studio新建的UI发布只能看到抽象类的问题在导入了新的解决方案之后,在二次开发时进行新建UI,进行发布,但是在代码视图中只能看到抽象类,没有其他的代码。

对于客户二次开发中用户自定义的单据才生成实现类,但发现BOS Studio新建的ui元数据自定义标记为<userDefined>false</userDefined>,导致在发布时认为不是用户自定义的,因此没生成实现类。

需要把ToolCommon 插件下(E:\kingdee\bos\BOSModular\boscommon\eclipse\plugins\com.kingdee.bos.toolcomm on)的toolcommon.properties 这个文件中的isDevelopVersion=true 改为:isDevelopVersion=false如何修改UI的父类?如何修改EditUI绑定的实体Entity?点击UI,选择左边浏览方式“大纲”。

选择Data Objects 的editData(查询对象)设置由自己定义的一个Entity元素据。

Java源码会有这样一句话:editData = (com.kingdee.eas.fi.fi_cs.CsAccountViewInfo)ov;其中CsAccountViewInfo是自己定义的一个Entity。

而com.kingdee.eas.fi.fi_cs则是他的路径。

如何修改ListUI绑定的查询Query?解决:点击UI,选择左边浏览方式“大纲”。

选择Data Objects 的mainQuery(查询对象)设置由自己定义的一个Query元素据。

Java源码会有这样一句话:mainQueryPK = new MetaDataPK("com.kingdee.eas.fi.fi_cs.app", "CsAccountViewQuery");其中CsAccountViewQuery是自己定义的一个Query。

而com.kingdee.eas.fi.fi_cs.app则是他的路径。

将一个元数据从一个文件夹直接拉到另外一个文件夹,打开文件的时候会报错误com.kingdee.bos.engine.MDParseError解决:把元数据从一个文件夹移到另一个文件夹不能直接拉。

需要用复制功能,并且只能够在EAS-BOS的工作透视图下。

如果在其他视图下进行操作,将无法复原。

导出sql的时候CreateTable.sql无法创建table,oracle 和sqlserver定义的类型有什么不一致原因:导出数据表会自动生成一些脚本,但是选择oracle时,实际导出的却是sqlserver的脚本。

导出有问题,oracle和sqlserver导出的都是sqlserver的脚本。

解决:认清oracle和sqlserver定义的类型有什么不一致。

Oracle的Date等同于sqlserver的DateTime,nvarchar2等同于sqlserver的nvarchar。

Varchar2等同于sqlserver的varchar。

com.kingdee.bos.metadata.MetaDataNotFoundExcepti on: Cannot found metadata BOSType[null]原因:没有重写ListUI的getBizInterface() 方法。

解决:一定要重新实现ListUI和EditUI的getBizInterface()方法,重新实现ListUI的getBizInterface()方法问题解决。

keyFiled没有设置,请重写getFiledName()方法。

解决:在设置query元数据的时候没有配置好主键,一定要设置主键无法实现字段排序解决:在*UI.java文件上面添加方法protected void tblMain_tableClicked(KDTMouseEvent e) throws Exception { //覆盖原方法super.tblMain_tableClicked(e);}该方法会实现父类的排序功能。

备注:tblMain_tableClicked是指双击的事件。

一般用在查询页面。

还有一个tblMain_tableSelectChanged是指点击时触发的事件。

日志操作写错:指标录入(分配)审核写成了指标录入(分配)修改。

原因:审核,反审核的操作最后都执行了修改的操作。

所以就将日志文件改成了修改。

而不是审核或者反审核。

分析:日志操作一般在.log文件上面做修改。

比如说这个问题。

日志文件为指标管理属于集中支付模块,gov_biz.log在这个模块的源文件下面gov/biz/。

一般添加日志在.log文件的日志项。

选择某个目录,为其添加日志项,组名,别名都需要每一层每一层写清楚(这会自动默认上下级关系)。

接着选定引用对象,(有两种对象:引用对象和功能对象)。

功能对象还不是很了解,引用对象是一个实体。

接着选定某些引用方法,意思就是这些方法触发的时候写入日志。

另外还有一个方法写入日志。

直接在某个按钮操作调用写日志方法。

该方法在GovBasedataUtils是基础数据管理公用函数及接口。

方法名为setOperLog,该方法有两个,具备不同的参数。

选择所需要的方法调用。

备注:针对这个bug需要注意一个空指针的问题,如果直接调用父类的actionPassAudit_actionPerforme的方法,会出现这个问题。

原因是有refresh(e)方法进行刷新。

所以不能调用父类的方法,自己重写。

修改完日志的时候,还需要在文件菜单中同步一下日志项数据。

setOperLog方法是写log进入操作对象这个字段。

而不是写入操作这个字段。

这点需要注意。

进入基础资料关联管理进行修改,删除的时候,日志操作出现字符串,没有正确显示操作对象分析:首先检查日志有没有出错,没有出错的话可在java文件中进行修改。

因为是删除和修改操作,所以我们可以重写父类的删除修改操作,添加一个写日志的操作。

解决:首先找到该Java文件:GovBaseDocBizRefListUI.java。

重写actionEdit_actionPerformed和actionRemove_actionPerformed方法。

(GovBaseDocBizRefInfo) getBizInterface().getValue(new ObjectUuidPK(keyValue),getSelectorItemCols())是用来得到自己定义的对象这里是GovBaseDocBizRefInfo。

而该对象的数据则用getSelectorItemCols()方法来获取。

最后则是自己定义的写log的方法。

在改bug的过程中,还出现一个问题,就是写日志操作必须在修改和删除操作之前执行,否则会出现一些意外问题,比如说写日志写的不是当前选择的数据,而是选择第一条数据。

还有就是出现删除操作提示记录找不到。

这都是因为把写日志操作放在了修改和删除操作之后导致的。

原因是如果是修改操作后返回的是第一条数据,修改完自然写的就是第一条数据的日志了。

如果先删除再写日志的话肯定得不到对象,因为被先删除了,所以会出现提示。

无法启动debugserver.bat,debugserver窗口自动关闭。

解决:到W:\apusic\domains\server1路径下将server.xml文件删除即可解决。

Oracle sql语句报错:“未明确定义列”解决:在表关联中出现了相同的字段名字,给与一个别名就可以解决。

如何在java文件中添加一个F7控件备注:由于不允许在标准产品上面添加控件,所以只能够在java上面添加。

解决:可参考F7业务控件指南(KDBizPromptBox)使用指南。

在这里只写上一些基础配置。

一般使用F7都给包含在一个KDLabelContainer控件里面。

创建一个KDLabelContainer控件this.borrowContain = new com.kingdee.bos.ctrl.swing.KDLabelContainer();创建一个KDBizPromptBox控件this.borrowBox= new com.kingdee.bos.ctrl.extendcontrols.KDBizPromptBox();将KDBizPromptBox附在KDLabelContainer上面。

borrowContain.setBoundEditor(borrowBox);设置一个弹出窗口FilterInfo filter = new FilterInfo();FilterItemCollection fic = filter.getFilterItems();fic.add(new FilterItemInfo("CU.id", company.getCU().getId().toString()));fic.add(new FilterItemInfo("CAA.id", null, CompareType.NOTEQUALS));filter.setMaskString("#0 and #1 ");AccountPromptBox apb = new AccountPromptBox(this, company.getAccountTable(), filter);设置一些属性。

设置borrowBox为可编辑this.borrowBox.setEditable(true);设置borrowBox的编辑格式this.borrowBox.setEditFormat("$number$");设置borrowBox的显示格式this.borrowBox.setCommitFormat("$helpCode$;$number$;$name$");设置borrowBox的提交格式this.borrowBox.setDisplayFormat("$number$ - $name$");设置borrowBox的查询对象this.borrowBox.setQueryInfo("com.kingdee.eas.basedata.master.account.app.F7Acco untViewQuery");设置borrowBox的弹出窗口this.borrowBox.setSelector(apb);在查询页面上保存一个方案的时候是如何得到页面上各个控件的值。

相关文档
最新文档