Web平台的编辑界面,是根据当前申请URL中billId组织数据,组织数据的原则是按编辑界面的控件内容按需加载的。但是,有些相对特殊的业务需求中要求返还到编辑界面的业务数据包含一些额外的非界面控件的内容。因此,Web平台提供了一个com.kingdee.bos.eventbus.model.ModelFieldSelectorEvent。
可以在定义工具中的界面控制的事件管理中,增加一个插件,提供一个ModelFieldSelectorEvent事件的中处理器
配置页面信息如下图所示:
3.1后台事件处理程序Handler如下:
package com.kingdee.eas.custom;
import com.kingdee.bos.BOSException;
import com.kingdee.bos.eventbus.event.action.KDActionEvent;
import com.kingdee.bos.webframework.exception.WafException;
import com.kingdee.bos.webframework.dynamic.handler.AbstractWebEventHandler;
import com.kingdee.bos.eventbus.event.action.IActionEventHandler;
import com.kingdee.bos.eventbus.event.model.IModelFieldSelectorEventHandler;
import com.kingdee.bos.eventbus.event.model.ModelFieldSelectorEvent;
import com.kingdee.bos.metadata.entity.SelectorItemCollection;
import com.kingdee.bos.metadata.entity.SelectorItemInfo;
public class ModelFieldSelectorHandler extends AbstractWebEventHandler implements IModelFieldSelectorEventHandler {
@Override
public void onFieldSelect(ModelFieldSelectorEvent event) {
SelectorItemCollection sic = event.getSelectorItemCollection();
//增加额外的编辑页面分录字段
sic.add(new SelectorItemInfo("entrys.dEntrys.qty"));
sic.add(new SelectorItemInfo("entrys.dEntrys.item"));
sic.add(new SelectorItemInfo("entrys.dEntrys.item.name"));
event.setSelectorItemCollection(sic);
}
}
1.配置页面
2.预览页面