关于DEP如何实现字段必录以及常见场景

业务场景:某些字段需要必录,但是标准产品已无法实现满足,需要变通处理。下面以几个示例作为演示:
示例一:表头分录字段必录已F7和文本字段为例

实现思路:编辑界面--扩展定义--保存前置脚本校验即可,若提交也需要提交也加必录

实现效果:

参考脚本:
var address = pluginCtx.getKDTextField("txtaddress").getStringValue();
if(address == null){
com.kingdee.eas.util.client.MsgBox.showInfo("交货地址不能为空");
com.kingdee.eas.util.SysUtil.abort();
}
var rowCount = pluginCtx.getKDTable("kdtEntrys").getRowCount();
for(var i=0;i<rowCount;i++){
var materialCode = pluginCtx.getKDTable("kdtEntrys").getRow(i).getCell("materialCode").getValue();
if(materialCode == null ){
com.kingdee.eas.util.client.MsgBox.showInfo("物料编码不能为空");
com.kingdee.eas.util.SysUtil.abort();
}
}
示例二:在某些组织下实现字段必录(原理和上面一致将必录组织写死即可,还是已交货地址为例当为环球机械集团实现必录)

测试效果:

示例代码:
//获取当前财务组织
var company = pluginCtx.getUIContext().get("sysContext").getCurrentFIUnit().toString();
var address = pluginCtx.getKDTextField("txtaddress").getStringValue();
if( company.equals("环球机械集团")){
if(address == null){
com.kingdee.eas.util.client.MsgBox.showInfo("请填写交货地址");
com.kingdee.eas.util.SysUtil.abort();
}
}
示例三:实现互斥,如下图
关于DEP如何实现字段必录以及常见场景
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



