下面是我用于将2个视图条件应用于VO的代码:
vc1是在VO中预定义的视图标准,而vc2是通过编程创建的视图标准:
ViewCriteria vc1 = vo.getViewCriteria(viewCriteriaName);
ViewCriteria vc2 = vo.createViewCriteria();
ViewCriteriaRow vcr1 = vc1.createViewCriteriaRow();
vcr1.setAttribute("name", "Steve");
vcr1.setConjunction(ViewCriteriaRow.VC_CONJ_AND);
vc1.add(vcr1);
ViewCriteriaRow vcr2 = vc2.createViewCriteriaRow();
vcr2.setAttribute("age", 22);
vcr2.setConjunction(ViewCriteriaRow.VC_CONJ_AND);
vc2.add(vcr2);
vo.applyViewCriteria(vc1, true);
vo.applyViewCriteria(vc2, true);
vo.executeQuery();
测试结果表明,只有最新的查看标准才生效。也就是说,在我的情况下,它仅适用于(VO = 22)VO,但丢失了(名称=“ Steve”)。
任何人都可以帮忙吗?