
1.在dep方案中打开应付单编辑界面,在右侧的数据控件中选择文本,拖拽至编辑界面,可自行设置显示文字

2.点击扩展定义,打开dep脚本编辑器

3.在脚本编辑器中选择模版方法-加载值(loadFields),编辑后置脚本,输入以下脚本
```
//定义引入变量
var mbosNames = JavaImporter();
//引入指定包
mbosNames.importPackage(com.kingdee.eas.fi.gl);
with(mbosNames)
{
var amountDataChangeListener = pluginCtx.getUIContext().get("amountDataChangeListener");
if(amountDataChangeListener == null){
amountDataChangeListener = function(event,methodName){
if(methodName == "equals"){
return this == event;
}
if (methodName =="dataChanged"){
var amount = pluginCtx.getKDFormattedTextField("txtTotalAmount").getText();
amount = amount.replace(",","");
var bigDecimalAmount = new java.math.BigDecimal(amount);
var local = pluginCtx.getUIContext().get("sysContext").getLocale();
var chineseAmount = GlUtils.getChineseFormat(bigDecimalAmount,true,local);
pluginCtx.getKDTextField("txtkDTextField").setText(chineseAmount);
}
}
}
pluginCtx.getKDFormattedTextField("txtTotalAmount").addDataChangeListener(amountDataChangeListener);
pluginCtx.getUIContext().put("amountDataChangeListener",amountDataChangeListener);
}
```
4.其中txtTotalAmount对应应付金额的控件id,txtkDTextField对应应付金额大写的控件id
5.添加前置脚本,在页面加载之前删除该值变更监听,否则重复调用页面loadFields()方法时,会重复添加监听事件,在页面值加载的时候也会触发该值变更监听,可能会导致错误的数据携带
```
var amountDataChangeListener = pluginCtx.getUIContext().get("amountDataChangeListener");
if(amountDataChangeListener != null){
pluginCtx.getKDFormattedTextField("txtTotalAmount").removeDataChangeListener(amountDataChangeListener);
}
```
6.效果展示
