单据体自定义菜单按钮,弹出自定义列表选择数据,回填显示原创
金蝶云社区-云社区用户kSko8213
云社区用户kSko8213
38人赞赏了该文章 2,303次浏览 未经作者许可,禁止转载编辑于2020年12月16日 16:16:33

image.png

image.png


注意:单据体字段必须是文本类型



private final static String KEY_CHOSEJCXM = "chosejcxm";

public void registerListener(EventObject e) {

Toolbar toolbar = this.getView().getControl("ypplantoolbar");

toolbar.addItemClickListener(this);

}


public void itemClick(ItemClickEvent  evt){

if (StringUtils.equals(KEY_CHOSEJCXM, evt.getItemKey())){

// TODO 在此添加业务逻辑

ListShowParameter listShowParameter = new ListShowParameter();

// 设置FormId,列表的FormId(列表表单模板)

listShowParameter.setFormId("bos_list");

// 设置BillFormId,为列表所对应单据的标识

listShowParameter.setBillFormId("fjht_xzjiancff");

// 设置弹出页面标题

listShowParameter.setCaption("选择:");

// 设置弹出页面的打开方式

listShowParameter.getOpenStyle().setShowType(ShowType.Modal);

StyleCss styleCss = new StyleCss();

styleCss.setWidth("800");

styleCss.setHeight("600");

listShowParameter.getOpenStyle().setInlineStyleCss(styleCss);

// 设置为不能多选,如果为true则表示可以多选

listShowParameter.setMultiSelect(true);

// 设置页面回调事件方法

listShowParameter.setCloseCallBack(new CloseCallBack(this, KEY_CHOSEJCXM));

// 绑定子页面到当前页面

this.getView().showForm(listShowParameter);

}

}


public void closedCallBack(ClosedCallBackEvent e) {

super.closedCallBack(e);

String data=String.valueOf(e.getReturnData());

if (e.getReturnData() != null && StringUtils.equals(KEY_CHOSEJCXM, e.getActionId())){

//获取单据体当前焦点行索引

int index=this.getModel().getEntryCurrentRowIndex("单据体标识");

this.getModel().setValue("jcxm",data,index);

}

}


赞 38