2.5. 弹出界面
var uiContext = new com.kingdee.eas.common.client.UIContext(pluginCtx.getUI()); var uiName = \
DataBaseCustomListUI\ //$$后面的为对应的模板界面
var uiWindow = com.kingdee.bos.ui.face.UIFactory.createUIFactory(com.kingdee.eas.common.
client.UIFactoryName.MODEL).create(uiName, uiContext);
uiWindow.show();
2.6. F7控件设置过滤条件
//可在界面的onload扩展点后置脚本中添加过滤,参考实现: var easImporter = JavaImporter();
easImporter.importPackage(Packages.com.kingdee.bos.ctrl.extendcontrols); easImporter.importPackage(Packages.com.kingdee.bos.metadata.entity); easImporter.importPackage(Packages.com.kingdee.bos.metadata.query.util); easImporter.importPackage(Packages.com.kingdee.bos.util); with(easImporter){ var prmtAssist = pluginCtx.getKDBizPromptBox(\获取F7控件 var filterInfo = new FilterInfo();
var entityViewInfo = new EntityViewInfo(); //获取当前财务组织 var company = pluginCtx.getUIContext().get(\
filterInfo.getFilterItems().add(new FilterItemInfo(\
CompareType.EQUALS)); //按财务组织过滤
entityViewInfo.setFilter(filterInfo);
prmtAssist.setEntityViewInfo(entityViewInfo);
}
2.7. 控件(复选框)添加监听器
pluginCtx.getKDCheckBox(\function(event,methodName){
5 / 24
if(pluginCtx.getKDCheckBox(\
com.kingdee.bos.ctrl.swing.ButtonStates.UNSELECTED) {
pluginCtx.getKDTextField(\
pluginCtx.getKDBizPromptBox(\
} else{
pluginCtx.getKDTextField(\
//pluginCtx.getKDTextField(\
pluginCtx.getKDTextField(\
}
});
注意:监听器可以在onLoad扩展点。
2.8. F7控件增加监听器
var easNames = JavaImporter();
easNames.importPackage(Packages.com.kingdee.bos.ctrl.extendcontrols); easNames.importPackage(Packages.com.kingdee.bos); with(easNames){
var roadMap = pluginCtx.getKDBizPromptBox(\roadMap.addPreChangeListener(function(){
throw new BOSException(\路线图不允许为空!\}); }
2.9. 设置F7默认值
var easImporter = JavaImporter();
easImporter.importPackage(Packages.com.kingdee.bos.ctrl.extendcontrols); easImporter.importPackage(Packages.com.kingdee.eas.basedata.scm.common); easImporter.importPackage(Packages.com.kingdee.bos.util);
6 / 24
easImporter.importPackage(Packages.com.kingdee.eas.basedata.assistant); with(easImporter){
var prmtCurrency =pluginCtx.getKDBizPromptBox(\var cur = new CurrencyInfo();
cur.setId(BOSUuid.create(\cur.setNumber(\cur.setName(\prmtCurrency.setValue(cur); } 或如下:
7 / 24
if(pluginCtx.getOprtState().equals(\
var data = com.kingdee.eas.basedata.org.AdminOrgUnitFactory.getRemoteInstance()
.getAdminOrgUnitCollection(\管理单元'\
if(data.size() > 0){
pluginCtx.getKDBizPromptBox(\ } }
注意:Number和Name,根据想默认值改变
2.10. 客户端调用服务端方法
var easNames = JavaImporter();
easNames.importPackage(Packages.com.kingdee.bos.ctrl.extendcontrols); easNames.importPackage(Packages.com.kingdee.bos); easNames.importPackage(Packages.com.kingdee.bos.util); easNames.importPackage(Packages.com.kingdee.bos.metadata); easNames.importPackage(Packages.com.kingdee.eas.util.client); easNames.importPackage(Packages.com.kingdee.bos.framework); with(easNames){
//pk为服务端实体的全路径,可通过DEP元数据检查获得
var pk = new MetaDataPK(\
//name为被调用实体方法的名称,可通过实体界面获取
var name = \
//params为方法参数,与被调用方法参数类型一致 var params = [BOSUuid.read(\ var result = BOClientTool.callCmethod(pk,name,params); MsgBox.showInfo(\
com.kingdee.eas.util.SysUtil.abort(); }
8 / 24
相关推荐: