【二开示例】查看源单的源单的影像原创
46人赞赏了该文章
960次浏览
编辑于2023年08月28日 08:30:27
1、单据新增一个文本字段,字段ID为FSrcSrcImageNo,用于保存源单的源单的影像编码
2、编辑“共享中心查看影像”操作,勾选“查看指定影像”,选择刚刚新增的字段
3、在 "查看影像" 按钮事件上增加空操作,上移到"查看影像操作"前面:
4、空操作上绑定二开服务插件,服务插件会查询源单的源单的影像编码,填入数据包中
服务插件代码如下:
using Kingdee.BOS.Core.DynamicForm.PlugIn; using System.Linq; namespace TestPlugin { /// <summary> /// 空操作插件源码 /// </summary> [Kingdee.BOS.Util.HotUpdate] public class GetImageServicePlugin : AbstractOperationServicePlugIn { public override void BeforeExecuteOperationTransaction(Kingdee.BOS.Core.DynamicForm.PlugIn.Args.BeforeExecuteOperationTransaction e) { var sel = e.SelectedRows; for (int i = 0; i < e.SelectedRows.Count(); i++) { var entity = e.SelectedRows.ToArray()[i]; var formId = this.BusinessInfo.GetForm().Id; var id = entity["Id"].ToString(); //获取源单的源单的影像编码,填入文本字段 var srcSrcImageNo = GetSrcSrcImageNo(formId, id); if (!string.IsNullOrWhiteSpace(srcSrcImageNo)) { entity["FSrcSrcImageNo"] = srcSrcImageNo; } } } /// <summary> /// 获取源单的源单影像编号 /// </summary> /// <param name="formId">本单的FormId</param> /// <param name="id">本单的内码</param> /// <returns></returns> string GetSrcSrcImageNo(string formId, string id) { //TODO:用SQL查到源单的源单FormId和内码Id var srcSrcFormId = "xxxx"; //源单的源单的单据类型 var srcSrcId = "10001"; //源单的源单的内码 //根据FormId和内码,查询影像号 var sql = string.Format("SELECT FBILLNO FROM T_ASC_PROCINST WHERE FOBJECTTYPEID = '{0}' AND FOBJECTKEYVALUE = '{1}'", srcSrcFormId, srcSrcId); return Kingdee.BOS.App.Data.DBUtils.ExecuteScalar<string>(this.Context, sql, ""); } } }
赞 46
46人点赞
还没有人点赞,快来当第一个点赞的人吧!
打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!
推荐阅读