使用Input Text with LOV组件时,点击按钮会显示LOV的查询结果。
如果需要通过程序设置查询条件,可以定制LaunchPopupPopupListener。
与上一个实验不同的地方是:在LOV对应的VO上没有ViewCriteria和参数定义。
也就是说,通过程序动态创建ViewCriteria和设置参数。
重要步骤说明:
1. Managed Bean 代码
public void jobIdLaunchPopupListener(LaunchPopupEvent launchPopupEvent) {
BindingContainer bindings = getBindings();
JUCtrlListBinding lov = (JUCtrlListBinding)bindings.get("JobId");
ViewCriteriaManager vcm = lov.getListIterBinding().getViewObject().getViewCriteriaManager();
vcm.removeViewCriteria(vcm.DFLT_VIEW_CRITERIA_NAME);
ViewCriteria vc = new ViewCriteria(lov.getListIterBinding().getViewObject());
vc.setName(vcm.DFLT_VIEW_CRITERIA_NAME);
ViewCriteriaRow vcr1 = new ViewCriteriaRow(vc);
vcr1.setAttribute("MinSalary", "> 5000");
vcr1.setAttribute("MaxSalary", "< 15000");
vc.addRow(vcr1);
lov.getListIterBinding().getViewObject().applyViewCriteria(vc);
}
2. 运行
和第2个实验一样,显示MinSalary>5000且MaxSalary<15000的记录。
Project 下载:ADF_LOV_InputText(7).7z
没有评论:
发表评论