所有类型页面打开参数的继承关系如下图所示
所有类型页面打开参数详细介绍
类名 | 描述 |
kd.bos.form.FormShowParameter | PC 动态表单 页面打开参数 |
kd.bos.bill.BillShowParameter | PC 单据 查看或编辑 页面打开参数 |
kd.bos.report.ReportShowParameter | PC 报表 页面打开参数 |
kd.bos.parameter.ParameterShowParameter | PC 参数(云参数、应用参数、单据参数) 页面打开参数 |
kd.bos.filter.FilterShowParameter | PC 带过滤方案的列表 页面打开参数 |
kd.bos.form.MobileFormShowParameter | Mobile 移动表单 页面打开参数 |
kd.bos.list.ListShowParameter | PC 单据列表 页面打开参数 |
kd.bos.report.filter.ReportFilterShowParameter | PC 带过滤方案的报表 页面打开参数 |
kd.bos.base.BaseShowParameter | PC 基础资料 查看或编辑 页面打开参数 |
kd.bos.bill.MobileBillShowParameter | Mobile 单据 查看或编辑 页面打开参数 |
kd.bos.list.MobileListShowParameter | Mobile 单据列表 页面打开参数 |
kd.bos.base.MobileBaseShowParameter | Mobile 基础资料 查看或编辑 页面打开参数 |
- 一定要使用正确的页面打开参数,否则会出现意想不到的结果
打开列表
//打开列表
ListShowParameter listShowParameter = new ListShowParameter();
listShowParameter.setFormId("bos_list");//列表标识
listShowParameter.setBillFormId("单据标识");//打开的表单标识
listShowParameter.getOpenStyle().setShowType(ShowType.Model);//打开方式
this.getView().showForm(listShowParameter);//打开页面
打开表单
//打开表单
BaseShowParameter showParameter=new BaseShowParameter();
showParameter.setFormId("单据标识");//打开的表单标识
showParameter.getOpenStyle().setShowType(ShowType.Modal);//打开方式
this.getView().showForm(showParameter);//打开页面
打开列表某一行的详情页面
@Override
public void listRowDoubleClick(ListRowClickEvent evt) {
// 取消系统内置的逻辑处理
evt.setCancel(true);
//this.getView().showSuccessNotification("双击");
//获取双击行的金蝶id
Long kdId =(Long)evt.getCurrentListSelectedRow().getPrimaryKeyValue();
//打开列表某一行的详情页面
BillShowParameter showParameter = new BillShowParameter();
showParameter.setPkId(kdId);//注意这里是双击行的主键id
showParameter.setFormId("单据标识");//注意这里是FormId,指的是列表对应的单据标识
showParameter.setCloseCallBack(new CloseCallBack(this, "回调标识"));//设置回调标识,回调标识可以是任意字符
showParameter.getOpenStyle().setShowType(ShowType.Modal);//打开方式
//showParameter.setCustomParam("kdId",kdId);//传递参数
this.getView().showForm(showParameter);//打开页面
}
页面接收参数
//在被打开的页面插件上重写afterBindData方法来接收参数
@Override
public void afterBindData(EventObject e) {
super.afterBindData(e);
//接收动态表单传递的参数,BillShowParameter为打开页面的对象类型,不同的对象要更换不同的接收类型
BillShowParameter showParameter=(BillShowParameter)this.getView().getFormShowParameter();
//通过key获取参数值
Long kdId=showParameter.getCustomParam("kdId");
}
回调方法
@Override
public void closedCallBack(ClosedCallBackEvent closedCallBackEvent) {
super.closedCallBack(closedCallBackEvent);
// 接收回调标识,进行判断
if (StringUtils.equals(closedCallBackEvent.getActionId(), "回调标识")){
// TODO 在此添加业务逻辑
this.getView().invokeOperation("refresh");//刷新页面
}
}