Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ADF:如何删除设置为视图条件的值_Java_Oracle Adf - Fatal编程技术网

Java ADF:如何删除设置为视图条件的值

Java ADF:如何删除设置为视图条件的值,java,oracle-adf,Java,Oracle Adf,我正在使用JDEV11G进行开发 现在的问题是:我无法在每次有新的视图条件值时更新它的值 例如,有一个视图标准VC,它包含两个标准name和age。我已经为name和executesql设置了值以获得结果 现在我需要重置视图条件,并将新值设置为name或age 我使用以下代码重置视图条件: vo.removeViewCriteria(viewCriteriaName); ViewCriteria vc= vo.getViewCriteria(viewCriteriaName); vc.reset

我正在使用JDEV11G进行开发

现在的问题是:我无法在每次有新的视图条件值时更新它的值

例如,有一个视图标准VC,它包含两个标准name和age。我已经为name和executesql设置了值以获得结果

现在我需要重置视图条件,并将新值设置为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();
但是在视图条件中仍然有一个bind变量会影响SQL结果

我想要的是一个干净的视图标准,它没有任何绑定数据


有人能帮忙吗?谢谢

如果我正确理解了您在h上询问的问题,即如何将视图条件应用于视图对象,同时删除以前设置的所有视图条件值

在您的用例中,由于您在vo.applyViewCriteria(vc,true)中传递的布尔值,先前的视图条件不会被删除

第二个参数布尔值设置为允许您保留或删除以前设置的视图条件

见:

将视图条件应用于此视图对象。如果BAPPUND为true,则查看 条件将附加到已应用的视图条件列表中。如果 BAPPUND为false应用的视图条件列表在 应用通过的视图条件。参数:条件-视图 要应用的条件BAPPUND-指示应用的视图 在应用视图条件之前,需要清除条件列表

在本例中,java函数中只需要以下两行:

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

有关更多信息,请参阅文档或以下教程:

如果我正确理解了您在h上询问的问题,即如何在删除所有以前设置的视图标准值的同时将视图标准应用于视图对象

在您的用例中,由于您在vo.applyViewCriteria(vc,true)中传递的布尔值,先前的视图条件不会被删除

第二个参数布尔值设置为允许您保留或删除以前设置的视图条件

见:

将视图条件应用于此视图对象。如果BAPPUND为true,则查看 条件将附加到已应用的视图条件列表中。如果 BAPPUND为false应用的视图条件列表在 应用通过的视图条件。参数:条件-视图 要应用的条件BAPPUND-指示应用的视图 在应用视图条件之前,需要清除条件列表

在本例中,java函数中只需要以下两行:

vo.applyViewCriteria(vc, false);
vo.executeQuery();
有关更多信息,请参阅文档或以下教程:

尝试以下操作:

vo.setApplyViewCriteriaName(null);
vo.executeQuery();
然后设置新的条件并绑定变量。过去一直为我工作

试试这个:

vo.setApplyViewCriteriaName(null);
vo.executeQuery();

然后设置新的条件并绑定变量。过去一直为我工作

我尝试过代码,但仍然面临同样的问题。为视图条件设置的值如果以前设置过,则仍然存在。这不应该存在,您确定不再设置该值吗?似乎applyViewCriteria(vc,false)清除了应用的视图条件的现有列表,并仅应用了当前列表,在我的例子中,只有一个视图条件,我只想清除视图条件中以前的项目。你能在你的问题中添加一个视图条件的屏幕截图吗?是否使用绑定变量来设置值?如果是这样,我将写另一个关于如何清除视图条件以前的值的答案。我在问题中添加了如何更新视图条件的详细信息。请检查。我尝试了代码,但仍然面临相同的问题。为视图条件设置的值如果以前设置过,则仍然存在。这不应该存在,您确定不再设置该值吗?似乎applyViewCriteria(vc,false)清除了应用的视图条件的现有列表,并仅应用了当前列表,在我的例子中,只有一个视图条件,我只想清除视图条件中以前的项目。你能在你的问题中添加一个视图条件的屏幕截图吗?是否使用绑定变量来设置值?如果是这样,我将写另一个关于如何清除视图条件以前的值的答案。我在问题中添加了如何更新视图条件的详细信息。请复查。