我正在使用Jdev 11g进行开发。
现在的问题是:我不能在每次有新值时更新视图条件的值。
例如,有一个视图条件VC,它包含2个条件名称和年龄。我已经设置了name和execute SQL的值以获得结果。
现在,我需要重置视图条件,并将新值设置为name或age。
我使用下面的代码来重置视图条件:
vo.removeViewCriteria(viewCriteriaName);
ViewCriteria vc= vo.getViewCriteria(viewCriteriaName);
vc.reset();
//update the view criteria
ViewCriteriaRow vcr = (ViewCriteriaRow)vc.first();
ViewCriteriaItem vci = vcRow.getCriteriaItem(attributeName);
vcItem.setOperator(SearchServiceConstants.IN);
//get the values here
vci.setValues(values);
vcr.setConjunction(vcRow.VC_CONJ_AND);
vo.applyViewCriteria(vc, true);
vo.executeQuery();但是在视图条件中仍然有一个绑定变量会影响SQL结果。
我想要的是一个干净的视图标准,它没有任何绑定数据。
有人能帮上忙吗?谢谢!
发布于 2019-02-25 19:06:29
如果我正确理解了这个问题,您正在询问如何将视图条件应用于对象,同时删除所有先前设置的视图条件值。
第二个参数设置为布尔值,以允许您保留或删除先前设置的View criteria。
将视图条件应用于此视图对象。如果bAppend为true,则将视图条件附加到已应用的视图条件列表中。如果bAppend为false,则应用的视图条件列表将在应用传递的视图条件之前清除。参数: criteria -要应用的查看条件bAppend -用于指示在应用查看条件之前是否需要清除已应用的查看条件列表的标志。
在本例中,您只需要在java函数中使用以下两行代码:
vo.applyViewCriteria(vc, false);
vo.executeQuery();有关更多信息,请参阅文档或以下教程:https://cedricleruth.com/how-to-apply-a-viewcriteria-programmatically-in-adf/
发布于 2019-03-04 20:12:02
试试这个:
vo.setApplyViewCriteriaName(null);
vo.executeQuery();然后设置新的条件并绑定变量。在过去一直为我工作
https://stackoverflow.com/questions/54864414
复制相似问题