# 介绍 开目的二开程序在打包成jar包后,存储于运行环境下的ext文件夹中 ![image-20241220141137157](assets/image-20241220141137157.png) 而要建立系统与二开程序的联系,需要通过DPL脚本完成 其DPL脚本案例如下: ```dpl Java::register("kmwp.extend.agent.jiangling.DesignChangeSummary"); Java::EXT::DesignChangeSummary_show(container); ``` DPL脚本编写完成后,需要在系统中存放,即通过 **二次开发脚本管理** 功能完成 ![image-20241220152938406](assets/image-20241220152938406.png) 非 [系统三员](../用户/系统三员.md) 要使用此功能,需要 [系统三员](../用户/系统三员.md) 在 [功能授权](../安全管理/功能授权.md) 中的 [应用级](../安全管理/功能授权.md#应用级可授予权限列表) 授予用户 **二次开发脚本管理** 权限 # 脚本存放目录 二开脚本不可随意存放,其存放目录与作用范围密切相关 > 案例:在 **对象功能扩展** 目录下存放的二开脚本,在进行 [对象类功能扩展](对象类功能扩展.md) 添加 **对象操作** 时可选择对应的二开脚本 > > ![image-20241220150742624](assets/image-20241220150742624.png) > > 案例:在 **对象事件功能扩展** 目录下存放的二开脚本,在进行 [对象类功能扩展](对象类功能扩展.md) 添加 **事件** 时可选择对应的二开脚本 > > ![image-20241220151020429](assets/image-20241220151020429.png) 可存放目录: - 功能扩展接口 - 工作:添加的二开功能作用于 [工作功能扩展](系统功能扩展.md#工作功能扩展) - 对象 - 对象事件功能扩展:添加的二开功能作用于 [事件](对象类功能扩展.md#事件) - 对象功能扩展:添加的二开功能作用于 [对象操作](对象类功能扩展.md#对象操作) - 打印汇总功能扩展 - 模板打印水印条件 - 打印布局选择条件 - 模板不打印条件 - 关系 - 结构化工艺:添加的二开功能作用于 [结构化工艺](系统功能扩展.md#结构化工艺) - BOM结构管理添加的二开功能作用于 [BOM结构管理](系统功能扩展.md#BOM结构管理) - 表格属性 - 表格属性功能扩展:添加的二开功能作用于 [表格属性操作](对象类功能扩展.md#表格属性操作) - 容器 - 资料柜功能扩展 - 内容 - 内容功能扩展 - 任务:添加的二开功能作用于 [任务功能扩展](系统功能扩展.md#任务功能扩展) - 其他:添加的二开功能作用于 [导航条功能扩展](系统功能扩展.md#导航条功能扩展)、[通用查询](系统功能扩展.md#通用查询)、[首页功能扩展](系统功能扩展.md#首页功能扩展) - 附件:添加的二开功能作用于 [附件](对象类功能扩展.md#附件) - 数据批量导入:添加的二开功能作用于 [文档功能扩展](系统功能扩展.md#文档功能扩展)、[创建PCA功能扩展](系统功能扩展.md#创建PCA功能扩展) - 其他 # 二次开发功能列表 选择 [脚本存放目录](#脚本存放目录) 后,右侧展示出的即为当前目录下的所有二次开发脚本 其顶部菜单栏为: - [新建](#新建) - [打开](#打开) - [删除](#删除) - [刷新](#刷新) - 下载 - [保存](#保存) ## 新建 点击 **新建** 后,自动打开 **添加二次开发功能** 页面,需要写入 **功能名**,设置 **权限项**,并上传 **DPL脚本** ![image-20241220153106772](assets/image-20241220153106772.png) ==**权限项**(必设)==:作用与 [菜单定义功能授权](../安全管理/菜单定义功能授权.md) 的作用相似,设置二开功能A的权限与选定的功能权限B的授权分配保持一致,即只有具备功能B的操作权限,才能操作二开功能A > 案例:设置 **二开功能——测试对象功能扩展** 的权限项为 **事件日志** > > ![image-20241220155701489](assets/image-20241220155701489.png) > > 而在 [功能授权](../安全管理/功能授权.md) 中不给 “彦页” [日志管理](../安全管理/功能授权.md#日志管理) 的 **事件日志** 权限 > > ![image-20241220160749850](assets/image-20241220160749850.png) > > 那么在具备此二开功能的对象中,“彦页” **不可执行** 测试对象功能扩展操作 > > ![image-20241220160828022](assets/image-20241220160828022.png) > > 若在 [功能授权](../安全管理/功能授权.md) 中给予 “彦页” [日志管理](../安全管理/功能授权.md#日志管理) 的 **事件日志** 权限 > > ![image-20241220160905322](assets/image-20241220160905322.png) > > 那么在具备此二开功能的对象中,“彦页” **可执行** 测试对象功能扩展操作 > > ![image-20241220160935631](assets/image-20241220160935631.png) ## 打开 选择二开功能后,点击 **打开** 能够打开 **查看二次开发功能** 页面,并对二开功能的定义内容进行修改 ![image-20241220161126314](assets/image-20241220161126314.png) ## 删除 删除二开功能 ## 刷新 刷新当前 [脚本存放目录](#脚本存放目录) 的二开功能列表,若操作后没保存,刷新会还原到操作前 ## 保存 保存所做的操作