java - ADF : how to remove values set to the view criteria

标签 java oracle-adf

我使用 Jdev 11g 进行开发。

现在的问题是:我无法在每次获得新值时更新 View 条件的值。

例如,有一个观看条件 VC,其中包含 2 个条件名称和年龄。我已经设置了 name 的值并执行 SQL 来获取结果。

现在我需要重置查看条件并为姓名或年龄设置新值。

我使用以下代码来重置查看条件:

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();

但是 View 条件中仍然有一个绑定(bind)变量会影响 SQL 结果。

我想要的是一个干净的 View 标准,没有任何绑定(bind)数据。

有人可以帮忙解决这个问题吗?谢谢!

最佳答案

如果我正确理解了这个问题,您会问如何将 View 条件应用于 View 对象,同时删除所有先前设置的 View 条件值

在您的用例中,由于您在 vo.applyViewCriteria(vc, true); 中传递的 boolean 值,因此不会删除先前的 View 条件;

第二个参数 boolean 值设置为允许您保留或删除之前设置的查看条件。

参见:https://docs.oracle.com/cd/E23943_01/apirefs.1111/e10653/oracle/jbo/ViewObject.html#applyViewCriteria(oracle.jbo.ViewCriteria,%20boolean)

Applied the view criteria to this view object. If bAppend is true view criteria is appended to the list of already applied view criteria. If bAppend is false the applied view criteria list is cleared prior to applying the passed view criteria. Parameters: criteria - view criteria to be applied bAppend - flag to indicate if the applied view criteria list needs to be cleared before applying the view criteria.

在您的情况下,您只需要在 java 函数中添加以下两行:

vo.applyViewCriteria(vc, false);
vo.executeQuery();

有关更多信息,请参阅文档或以下教程:https://cedricleruth.com/how-to-apply-a-viewcriteria-programmatically-in-adf/

关于java - ADF : how to remove values set to the view criteria,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54864414/

相关文章:

java - 什么会导致同步块(synchronized block)内部的 IllegalMonitorStateException?

java - Oracle ADF、Oracle Rich Client 用户界面、Fusion FX - 这些术语之间的联系?

jsf - JSF 中的 partialSubmit 和 autoSubmit 有什么区别?

java - 如何在 Netbeans 中添加 ADF 库?

java - JSP + Ajax 不起作用

java - 在多线程环境中使用什么; vector 或数组列表

java - PDFTable Itext 阿拉伯语

java - junit 断言语句

java - ADF 可视化 : Retrieve current managed bean

java - ORA-01858 : a non-numeric character was found where a numeric was expected in Oracle ADF