用DEP如何增加字段,并实现字段的逻辑计算。原创
3人赞赏了该文章
700次浏览
编辑于2021年11月26日 16:31:10
1. 在销售退货申请单增加三个字段; 2. 在loadfields()方法增加datachanged事件,实现逻辑计算 3.21.3 DEP详细开发步骤 1) 导入扩展单元:销售退货申请单。 2) 打开销售退货申请单的编辑界面,增加“退货金额”“换货金额”“退换货金额差额”字段。 3)扩展脚本,loadfieds()方法, 前置脚本: var amountChangeEvent = pluginCtx.getUIContext().get("salereturn_amountChangeEvent"); if (amountChangeEvent != null){ pluginCtx.getKDFormattedTextField("txtreturnAmount").removeDataChangeListener(amountChangeEvent); pluginCtx.getKDFormattedTextField("txtchangeAmount").removeDataChangeListener(amountChangeEvent); } 后置脚本: var amountChangeEvent = pluginCtx.getUIContext().get("salereturn_amountChangeEvent"); if (amountChangeEvent == null){ amountChangeEvent = function(event,methodName){ if(methodName == "equals"){ return this == event; } if(methodName == "dataChanged"){ var q_returnAmount = pluginCtx.getKDFormattedTextField("txtreturnAmount").getBigDecimalValue(); var q_changeAmount = pluginCtx.getKDFormattedTextField("txtchangeAmount").getBigDecimalValue(); if(q_returnAmount != null && q_changeAmount != null){ var q_balance = q_returnAmount.subtract(q_changeAmount); pluginCtx.getKDFormattedTextField("txtbalance").setValue(q_balance); } } }; pluginCtx.getUIContext().put("salereturn_amountChangeEvent",amountChangeEvent); } pluginCtx.getKDFormattedTextField("txtreturnAmount").addDataChangeListener(amountChangeEvent); pluginCtx.getKDFormattedTextField("txtchangeAmount").addDataChangeListener(amountChangeEvent);
推荐阅读