1、在我们的工作流的审批界面中,有时候我们需要添加自定义的审批的功能按钮。下面推荐一种方法。
思路:1 在我们自定义的单据的editlUI.java实现一个接口 com.kingdee.eas.framework.client.workflow.IWorkflowUISupport
public interface IWorkflowUISupport
{
public abstract IWorkflowUIEnhancement getWorkflowUIEnhancement();
}
2、在编写一个内部类,实现IWorkflowUIEnhancement 接口或者是继承DefaultWorkflowUIEnhancement类,重写相关的set、get方法,给对应的菜单栏、工具栏进行赋值
这个接口返回的是一个对象,返回的对象可以获取审批界面的菜单栏,工具栏等等
public interface IWorkflowUIEnhancement
{
public abstract List getApproveMenus(CoreUIObject coreuiobject);
public abstract List getApporveToolButtons(CoreUIObject coreuiobject);
public abstract String getQueryFieldNameBindingWf(CoreUIObject coreuiobject);
public abstract boolean enableEntryProcess(BOSObjectType bosobjecttype)
throws Exception;
}
==============================具体实现代码===========================================
public class VPNUnitEditUI extends AbstractVPNUnitEditUI implements
IWorkflowUISupport {
//实现接口方法,返回一个获取菜单栏、工具栏的方法
public IWorkflowUIEnhancement getWorkflowUIEnhancement() {
DemoWFEnhancement demoWFEnhancement = new DemoWFEnhancement();
List buttonList = new ArrayList();
buttonList.add(btnAudit);
buttonList.add(btnUnAudit);
try {
demoWFEnhancement.setApporveToolButtons(buttonList);
} catch (Exception e) {
e.printStackTrace();
}
return demoWFEnhancement;
}
/**
*
* 在工作流的审批界面中,我们可以通过getApproveMenus获取菜单栏对象,通过getApporveToolButtons获取工具栏对象
* 可以自己添加添加菜单栏、工具栏的方法。
* @author Administrator
*
*/
class DemoWFEnhancement extends DefaultWorkflowUIEnhancement {
List menuList = null;
List toolBarList = null;
public List getApproveMenus(CoreUIObject uiObject) {
return menuList;
}
public List getApporveToolButtons(CoreUIObject uiObject) {
return toolBarList;
}
public String getQueryFieldNameBindingWf(CoreUIObject uiObject) {
return "id";
}
public boolean enableEntryProcess(BOSObjectType objectType)
throws Exception {
return false;
}
public void setToolbar(List list) throws Exception {
menuList = list;
}
public void setApporveToolButtons(List list) throws Exception {
toolBarList = list;
}
}
}