插件
- 表单插件:设置表单插件,扩充、完善单据的功能
- 列表插件:设置列表插件,扩充、完善列表的功能
- 表单构建插件:界面构建插件,处理界面元素的展示
- 操作事件中的服务插件:扩展、完善操作功能
以新建"表单插件"为例
程序集包 -> 表单插件工程 -> 右键 -> 新建表单插件工程 -> 输入工程名称 -> 确定
右键工程名称 -> 添加插件 -> 填写信息(表单插件、TestPlugin、测试插件) -> 确定
较大的工程建议对插件进行分类(建几个目录),然后使用VS进行开发
双击"TestPlugin.cs",增加一个事件
/// <summary>
/// 点击按钮,弹出测试
/// </summary>
/// <param name="e"></param>
public override void AfterBarItemClick(AfterBarItemClickEventArgs e)
{
if(e.BarItemKey.ToUpperInvartant() == 'UZOE_tbButton')
{
this.View.ShowMessage("测试");
}
}
选择工程名称 -> 右键 -> 编译工程(在VS中是右键->生成)
插件路径,如:D:\WorkSpace\CRM测试\K3Cloud\bin\Test.BusinessPlugin.dll
注意:如果使用服务器进行构建(服务器一般不装开发环境),建议把插件路径改在金蝶安装路径
右键 -> 工程属性设置 -> 引用/输出目录 -> 通常为:"C:\Program Files (x86)\Kingdee\K3Cloud\WebSite\bin"
编译完成后,双击"之前新增的单据" -> 属性 -> 表单插件 -> 注册 -> 选择插件
右键"TestPlugin.cs" -> 签入(也可以直接在VS中用svn插件提交或使用小乌龟提交)
VS添加SVN插件(先下载AnkhSvn)
工具 -> 选项 -> 源代码管理 -> 插件选择 -> AnkhSvn -> 确定
热更新配置(避免每次都重启IIS):在类上面[Kingdee.BOS.Util.HotUpdate]
重启IIS
控制面板 -> 管理工具 -> 服务 -> 找到IIS -> 右键 -> 点击重新启动
反编译
以 dnSpy
反编译任意一个插件为例
文件 -> 打开 -> C:\Program Files (x86)\Kingdee\K3Cloud\WebSite\bin\Kingdee.BOS.App.dll
然后在左侧列表就能看到 Kingdee.BOS.App.dll
BOS -> 查找 -> 业务对象名称模糊搜索 -> 双击选中行 -> 可以快速定位到业务对象,然后查找相关的插件