DEP实现特殊需求单据被引用后,被引用的基础资料不能被删除。
需求背景:
如下图在费用报销单中加了一个F7字段引用的是自定义核算项目。做完单据后后台表中存的是这个对应F7的关联FID。
数据库中存了原煤种类,那么就证明被引用了,基础资料不让删除。
需求分析:
该问题可通过在删除前置脚本进行校验,当检测到数据库有值时不让删除即可。先调用框架:getAllSelecteIDListValues()方法获取选中行数list,遍历此list获取fid,然后字符串拼接。再查库最后校验即可。
实现步骤:
1、编辑界面--界面加载--删除前置脚本编写校验逻辑
2、实现效果:
参考脚本:
var idList = pluginCtx.getUI().getAllSelecteIDListValues();
var stringBuffer = new java.lang.StringBuffer(); var idList1;
if(idList!=null){
for(var i=0;i<idList.size();i++){
idList1 = stringBuffer.append(idList.get(i)).append(",");
}
var sendDocNum = idList1.substring(0, idList1.length() - 1);
//查询数据库
var sql = "select count(1) from T_BC_BizAccountBillEntry where cftestid IN('"+ sendDocNum +"')";
var fMIsqlFacade =com.kingdee.eas.fm.common.FMIsqlFacadeFactory.getRemoteInstance();
var rs = fMIsqlFacade.executeQuery(sql.toString(),null);
if( rs != null && rs.next()){
if( rs.getInt(1) > 0){
com.kingdee.eas.util.client.MsgBox.showInfo("数据被引用不能删除"); com.kingdee.eas.util.SysUtil.abort();
}
}
}
DEP实现特殊需求单据被引用后,被引用的基础资料不能被删除。
本文2024-09-16 22:51:51发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-50864.html