当前位置: 首页>>代码示例>>Java>>正文


Java Criteria.addEqualToField方法代码示例

本文整理汇总了Java中org.apache.ojb.broker.query.Criteria.addEqualToField方法的典型用法代码示例。如果您正苦于以下问题:Java Criteria.addEqualToField方法的具体用法?Java Criteria.addEqualToField怎么用?Java Criteria.addEqualToField使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.ojb.broker.query.Criteria的用法示例。


在下文中一共展示了Criteria.addEqualToField方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getPreviousCalendarEntryByCalendarId

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
@Override
public CalendarEntryBo getPreviousCalendarEntryByCalendarId(String hrCalendarId, CalendarEntryContract calendarEntry) {
    Criteria root = new Criteria();
    Criteria beginDate = new Criteria();
    Criteria endDate = new Criteria();

    beginDate.addEqualToField("hrCalendarId", Criteria.PARENT_QUERY_PREFIX + "hrCalendarId");
    beginDate.addLessThan("beginPeriodDateTime", calendarEntry.getBeginPeriodFullDateTime().toDate());
    ReportQueryByCriteria beginDateSubQuery = QueryFactory.newReportQuery(CalendarEntryBo.class, beginDate);
    beginDateSubQuery.setAttributes(new String[]{"max(beginPeriodDateTime)"});

    endDate.addEqualToField("hrCalendarId", Criteria.PARENT_QUERY_PREFIX + "hrCalendarId");
    endDate.addLessThan("endPeriodDateTime", calendarEntry.getEndPeriodFullDateTime().toDate());
    ReportQueryByCriteria endDateSubQuery = QueryFactory.newReportQuery(CalendarEntryBo.class, endDate);
    endDateSubQuery.setAttributes(new String[]{"max(endPeriodDateTime)"});

    root.addEqualTo("hrCalendarId", hrCalendarId);
    root.addEqualTo("beginPeriodDateTime", beginDateSubQuery);
    root.addEqualTo("endPeriodDateTime", endDateSubQuery);

    Query query = QueryFactory.newQuery(CalendarEntryBo.class, root);

    CalendarEntryBo pce = (CalendarEntryBo) this.getPersistenceBrokerTemplate().getObjectByQuery(query);
    return pce;
}
 
开发者ID:kuali-mirror,项目名称:kpme,代码行数:26,代码来源:CalendarEntryDaoOjbImpl.java

示例2: getActiveAccrualCategories

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
@Override
// KPME-1011
   public List<AccrualCategoryBo> getActiveAccrualCategories(LocalDate asOfDate) {
	List<AccrualCategoryBo> accrualCategories = new ArrayList<AccrualCategoryBo>();
	Criteria root = new Criteria();
	Criteria timestampSubCrit = new Criteria();
	
	timestampSubCrit.addEqualToField("accrualCategory", Criteria.PARENT_QUERY_PREFIX + "accrualCategory");
	ReportQueryByCriteria timestampSubQuery = QueryFactory.newReportQuery(AccrualCategoryBo.class, timestampSubCrit);
	timestampSubQuery.setAttributes(new String[]{ "max(timestamp)" });
	
	root.addLessOrEqualThan("effectiveDate", asOfDate.toDate());
	root.addEqualTo("timestamp", timestampSubQuery);
	root.addEqualTo("active",true);
	
	Query query = QueryFactory.newQuery(AccrualCategoryBo.class, root);
	
	Collection c = this.getPersistenceBrokerTemplate().getCollectionByQuery(query);
	
	if (c != null) {
		accrualCategories.addAll(c);
	}

	return accrualCategories;
   }
 
开发者ID:kuali-mirror,项目名称:kpme,代码行数:26,代码来源:AccrualCategoryDaoOjbImpl.java

示例3: getEffectiveDateSubQueryWithFilter

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
public static ReportQueryByCriteria getEffectiveDateSubQueryWithFilter(Class clazz, Criteria effectiveDateFilter, List<String> equalToField, boolean checkActive) {
    Criteria effdt = new Criteria();
    if (effectiveDateFilter != null) {
        effdt.addAndCriteria(effectiveDateFilter);
    }
    if (CollectionUtils.isNotEmpty(equalToField)) {
        for (String field : equalToField) {
            Criteria keyField = new Criteria();
            keyField.addEqualToField(field, Criteria.PARENT_QUERY_PREFIX+field);
            Criteria orNull = new Criteria();
            orNull.addIsNull(field);
            orNull.addIsNull(Criteria.PARENT_QUERY_PREFIX+field);
            keyField.addOrCriteria(orNull);
            effdt.addAndCriteria(keyField);
        }
    }
    if (checkActive) {
        effdt.addEqualTo("active", true);
    }
    ReportQueryByCriteria effdtSubQuery = QueryFactory.newReportQuery(clazz, effdt);
    effdtSubQuery.setAttributes(new String[]{"max(effdt)"});

    return effdtSubQuery;
}
 
开发者ID:kuali-mirror,项目名称:kpme,代码行数:25,代码来源:OjbSubQueryUtil.java

示例4: testSubQuery3

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
/**
 * test Subquery get all product groups with more than 10 articles, uses
 * attribute as value ! see testSubQuery4 for a better way
 * <p/>
 * test may fail if db does not support sub queries
 */
public void testSubQuery3()
{

    ReportQueryByCriteria subQuery;
    Criteria subCrit = new Criteria();
    Criteria crit = new Criteria();

    subCrit.addEqualToField("productGroupId", Criteria.PARENT_QUERY_PREFIX + "groupId");
    subQuery = QueryFactory.newReportQuery(Article.class, subCrit);
    subQuery.setAttributes(new String[]{"count(productGroupId)"});

    crit.addLessThan("10", subQuery); // MORE than 10 articles, uses
    // attribute as value !
    crit.addLessThan("groupId", PGROUP_ID_HI_WATERMARK);
    Query q = QueryFactory.newQuery(ProductGroup.class, crit);

    Collection results = broker.getCollectionByQuery(q);
    assertNotNull(results);
    assertEquals(4, results.size());
}
 
开发者ID:KualiCo,项目名称:ojb,代码行数:27,代码来源:QueryTest.java

示例5: getEarnCodeGroupsForEarnCode

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
@Override
public List<EarnCodeGroupBo> getEarnCodeGroupsForEarnCode(String earnCode, LocalDate asOfDate) {
	
	Criteria root = new Criteria();
	Criteria earnCodeJoin = new Criteria();

	earnCodeJoin.addEqualToField("hrEarnCodeGroupId", Criteria.PARENT_QUERY_PREFIX + "hrEarnCodeGroupId");
	earnCodeJoin.addEqualTo("UPPER(earnCode)", earnCode.toUpperCase());
	ReportQueryByCriteria earnCodeSubQuery = QueryFactory.newReportQuery(EarnCodeGroupDefinitionBo.class, earnCodeJoin);
	earnCodeSubQuery.setAttributes(new String[]{"hr_earn_code_group_id"});
	
	root.addEqualTo("hrEarnCodeGroupId",earnCodeSubQuery);
       root.addEqualTo("effectiveDate", OjbSubQueryUtil.getEffectiveDateSubQuery(EarnCodeGroupBo.class, asOfDate, EarnCodeGroupBo.BUSINESS_KEYS, false));
       root.addEqualTo("timestamp", OjbSubQueryUtil.getTimestampSubQuery(EarnCodeGroupBo.class, EarnCodeGroupBo.BUSINESS_KEYS, false));

	Criteria activeFilter = new Criteria(); // Inner Join For Activity
	activeFilter.addEqualTo("active", true);
	root.addAndCriteria(activeFilter);
	
	Query query = QueryFactory.newQuery(EarnCodeGroupBo.class, root);
      
    List<EarnCodeGroupBo> results = new ArrayList<EarnCodeGroupBo>();
    results.addAll(getPersistenceBrokerTemplate().getCollectionByQuery(query));
    
    return results;
}
 
开发者ID:kuali-mirror,项目名称:kpme,代码行数:27,代码来源:EarnCodeGroupDaoOjbImpl.java

示例6: getEarnCodeGroupForEarnCode

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
@Override
	public EarnCodeGroupBo getEarnCodeGroupForEarnCode(String earnCode, LocalDate asOfDate) {
		Criteria root = new Criteria();
		Criteria earnCodeJoin = new Criteria();

		earnCodeJoin.addEqualToField("hrEarnCodeGroupId", Criteria.PARENT_QUERY_PREFIX + "hrEarnCodeGroupId");
		earnCodeJoin.addEqualTo("UPPER(earnCode)", earnCode.toUpperCase());
		ReportQueryByCriteria earnCodeSubQuery = QueryFactory.newReportQuery(EarnCodeGroupDefinitionBo.class, earnCodeJoin);
		earnCodeSubQuery.setAttributes(new String[]{"hr_earn_code_group_id"});
		
		root.addEqualTo("hrEarnCodeGroupId",earnCodeSubQuery);
        root.addEqualTo("effectiveDate", OjbSubQueryUtil.getEffectiveDateSubQuery(EarnCodeGroupBo.class, asOfDate, EarnCodeGroupBo.BUSINESS_KEYS, false));
        root.addEqualTo("timestamp", OjbSubQueryUtil.getTimestampSubQuery(EarnCodeGroupBo.class, EarnCodeGroupBo.BUSINESS_KEYS, false));
//		root.addEqualTo("active", true);

		Criteria activeFilter = new Criteria(); // Inner Join For Activity
		activeFilter.addEqualTo("active", true);
		root.addAndCriteria(activeFilter);
		
		Query query = QueryFactory.newQuery(EarnCodeGroupBo.class, root);
		EarnCodeGroupBo earnGroupObj  = (EarnCodeGroupBo)this.getPersistenceBrokerTemplate().getObjectByQuery(query);
		return earnGroupObj;
	}
 
开发者ID:kuali-mirror,项目名称:kpme,代码行数:24,代码来源:EarnCodeGroupDaoOjbImpl.java

示例7: getLastClockLog

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
public ClockLogBo getLastClockLog(String principalId){
      Criteria currentRecordCriteria = new Criteria();
      currentRecordCriteria.addEqualTo("principalId", principalId);

      Criteria clockTimeJoinCriteria = new Criteria();
      clockTimeJoinCriteria.addEqualToField("principalId",Criteria.PARENT_QUERY_PREFIX +"principalId");

      ReportQueryByCriteria clockTimeSubQuery = QueryFactory.newReportQuery(ClockLogBo.class, clockTimeJoinCriteria);
      clockTimeSubQuery.setAttributes(new String[]{"max(clockTimestamp)"});

      currentRecordCriteria.addEqualTo("clockTimestamp", clockTimeSubQuery);

      Criteria timestampJoinCriteria = new Criteria();
      timestampJoinCriteria.addEqualToField("principalId", Criteria.PARENT_QUERY_PREFIX + "principalId");
      timestampJoinCriteria.addEqualToField("clockTimestamp", Criteria.PARENT_QUERY_PREFIX + "clockTimestamp");
	
ReportQueryByCriteria timeStampSubQuery = QueryFactory.newReportQuery(ClockLogBo.class, timestampJoinCriteria);
timeStampSubQuery.setAttributes(new String[]{"max(timestamp)"});
	
currentRecordCriteria.addEqualTo("timestamp", timeStampSubQuery);
	
return (ClockLogBo)this.getPersistenceBrokerTemplate().getObjectByQuery(QueryFactory.newQuery(ClockLogBo.class,currentRecordCriteria));
  }
 
开发者ID:kuali-mirror,项目名称:kpme,代码行数:24,代码来源:ClockLogDaoOjbImpl.java

示例8: getTimestampSubQuery

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
public static ReportQueryByCriteria getTimestampSubQuery(Class clazz, List<String> equalToField, boolean checkActive) {
    Criteria timestamp = new Criteria();
    //need to check the effective date, always
    timestamp.addEqualToField("effectiveDate", Criteria.PARENT_QUERY_PREFIX + "effectiveDate");

    if (CollectionUtils.isNotEmpty(equalToField)) {
        for (String field : equalToField) {
            Criteria keyField = new Criteria();
            keyField.addEqualToField(field, Criteria.PARENT_QUERY_PREFIX+field);
            Criteria orNull = new Criteria();
            orNull.addIsNull(field);
            orNull.addIsNull(Criteria.PARENT_QUERY_PREFIX+field);
            keyField.addOrCriteria(orNull);
            timestamp.addAndCriteria(keyField);
        }
    }
    if (checkActive) {
        timestamp.addEqualTo("active", true);
    }
    ReportQueryByCriteria timestampSubQuery = QueryFactory.newReportQuery(clazz, timestamp);
    timestampSubQuery.setAttributes(new String[]{"max(timestamp)"});

    return timestampSubQuery;
}
 
开发者ID:kuali-mirror,项目名称:kpme,代码行数:25,代码来源:OjbSubQueryUtil.java

示例9: getCashBalanceCountQuery

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
/**
 * Builds a query for cash balances, based on the given field values
 *
 * @param fieldValues a map of keys to use when building the query
 * @return an OJB ReportQuery to use as the query
 */
protected ReportQueryByCriteria getCashBalanceCountQuery(Map fieldValues, Collection<String> encumbranceBalanceTypes) {
    Criteria criteria = buildCriteriaFromMap(fieldValues, new CashBalance(), encumbranceBalanceTypes);
    criteria.addEqualTo(KFSPropertyConstants.BALANCE_TYPE_CODE, KFSConstants.BALANCE_TYPE_ACTUAL);
    criteria.addEqualToField("chart.financialCashObjectCode", KFSPropertyConstants.OBJECT_CODE);

    ReportQueryByCriteria query = QueryFactory.newReportQuery(CashBalance.class, criteria);

    List groupByList = buildGroupByList();
    groupByList.remove(KFSPropertyConstants.SUB_ACCOUNT_NUMBER);
    groupByList.remove(KFSPropertyConstants.SUB_OBJECT_CODE);
    groupByList.remove(KFSPropertyConstants.OBJECT_TYPE_CODE);

    // add the group criteria into the selection statement
    String[] groupBy = (String[]) groupByList.toArray(new String[groupByList.size()]);
    query.addGroupBy(groupBy);

    return query;
}
 
开发者ID:kuali,项目名称:kfs,代码行数:25,代码来源:BalanceDaoOjb.java

示例10: getDebarredVendorsUnmatched

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
/**
 * @see org.kuali.kfs.vnd.batch.dataaccess.DebarredVendorMatchDao.getDebarredVendorsUnmatched()
 */
@Override
public List<VendorDetail> getDebarredVendorsUnmatched() {

    Criteria subcr = new Criteria();
    subcr.addEqualToField("vendorHeaderGeneratedIdentifier", Criteria.PARENT_QUERY_PREFIX + "vendorHeaderGeneratedIdentifier");
    subcr.addEqualToField("vendorDetailAssignedIdentifier", Criteria.PARENT_QUERY_PREFIX + "vendorDetailAssignedIdentifier");
    Criteria orcr = new Criteria();
    orcr.addEqualTo("confirmStatusCode", "C");
    Criteria orcr2 = new Criteria();
    orcr2.addEqualTo("confirmStatusCode", "U");
    orcr.addOrCriteria(orcr2);
    subcr.addAndCriteria(orcr);
    QueryByCriteria subqr = QueryFactory.newQuery(DebarredVendorMatch.class, subcr);

    Criteria criteria = new Criteria();
    criteria.addEqualTo("vendorHeader.vendorDebarredIndicator", "Y");
    criteria.addNotExists(subqr);
    QueryByCriteria query = QueryFactory.newQuery(VendorDetail.class, criteria);
    List<VendorDetail> vendors = (List<VendorDetail>) getPersistenceBrokerTemplate().getCollectionByQuery(query);

    return vendors;
  }
 
开发者ID:kuali,项目名称:kfs,代码行数:26,代码来源:DebarredVendorMatchDaoOjb.java

示例11: getBudgetConstructionPullupChildOrgs

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
/**
 * @see org.kuali.kfs.module.bc.document.dataaccess.BudgetConstructionDao#getBcPullupChildOrgs(java.lang.String,
 *      java.lang.String, java.lang.String)
 */
public List<BudgetConstructionPullup> getBudgetConstructionPullupChildOrgs(String principalId, String chartOfAccountsCode, String organizationCode) {
    List<BudgetConstructionPullup> orgs = new ArrayList<BudgetConstructionPullup>();

    Criteria cycleCheckCriteria = new Criteria();
    cycleCheckCriteria.addEqualToField("chartOfAccountsCode", "reportsToChartOfAccountsCode");
    cycleCheckCriteria.addEqualToField("organizationCode", "reportsToOrganizationCode");
    cycleCheckCriteria.setEmbraced(true);
    cycleCheckCriteria.setNegative(true);

    Criteria criteria = new Criteria();
    criteria.addEqualTo("reportsToChartOfAccountsCode", chartOfAccountsCode);
    criteria.addEqualTo("reportsToOrganizationCode", organizationCode);
    criteria.addEqualTo("principalId", principalId);
    criteria.addAndCriteria(cycleCheckCriteria);

    QueryByCriteria query = QueryFactory.newQuery(BudgetConstructionPullup.class, criteria);
    query.addOrderByAscending("organization.organizationName");

    orgs = (List<BudgetConstructionPullup>) getPersistenceBrokerTemplate().getCollectionByQuery(query);

    if (orgs.isEmpty() || orgs.size() == 0) {
        return Collections.EMPTY_LIST;
    }
    return orgs;
}
 
开发者ID:kuali,项目名称:kfs,代码行数:30,代码来源:BudgetConstructionDaoOjb.java

示例12: getActiveChildOrgs

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
/**
 * @see org.kuali.kfs.module.bc.document.dataaccess.BudgetConstructionOrganizationReportsDao#getActiveChildOrgs(java.lang.String,
 *      java.lang.String)
 */
public List getActiveChildOrgs(String chartOfAccountsCode, String organizationCode) {
    List orgs = new ArrayList();
    Criteria cycleCheckCriteria = new Criteria();
    cycleCheckCriteria.addEqualToField("chartOfAccountsCode", "reportsToChartOfAccountsCode");
    cycleCheckCriteria.addEqualToField("organizationCode", "reportsToOrganizationCode");
    cycleCheckCriteria.setEmbraced(true);
    cycleCheckCriteria.setNegative(true);

    Criteria criteria = new Criteria();
    criteria.addEqualTo("reportsToChartOfAccountsCode", chartOfAccountsCode);
    criteria.addEqualTo("reportsToOrganizationCode", organizationCode);
    criteria.addAndCriteria(cycleCheckCriteria);
    criteria.addEqualTo("organization.active", Boolean.TRUE);
    orgs = (List) getPersistenceBrokerTemplate().getCollectionByQuery(QueryFactory.newQuery(BudgetConstructionOrganizationReports.class, criteria));

    if (orgs.isEmpty() || orgs.size() == 0) {
        return Collections.EMPTY_LIST;
    }
    return orgs;
}
 
开发者ID:kuali,项目名称:kfs,代码行数:25,代码来源:BudgetConstructionOrganizationReportsDaoOjb.java

示例13: addInactivateableFromToCurrentCriteria

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
/**
    * Translates criteria for current status to criteria on the active from field
    * 
    * @param example - business object being queried on
    * @param currentSearchValue - value for the current search field, should convert to boolean
    * @param criteria - Criteria object being built
    */
protected void addInactivateableFromToCurrentCriteria(Object example, String currentSearchValue, Criteria criteria, Map searchValues) {
	Criteria maxBeginDateCriteria = new Criteria();
	
	Timestamp activeTimestamp = LookupUtils.getActiveDateTimestampForCriteria(searchValues);
	
	maxBeginDateCriteria.addLessOrEqualThan(KRADPropertyConstants.ACTIVE_FROM_DATE, activeTimestamp);

	List<String> groupByFieldList = dataDictionaryService.getGroupByAttributesForEffectiveDating(example
			.getClass());
	if (groupByFieldList == null) {
		return;
	}

	// join back to main query with the group by fields
	String[] groupBy = new String[groupByFieldList.size()];
	for (int i = 0; i < groupByFieldList.size(); i++) {
		String groupByField = groupByFieldList.get(i);
		groupBy[i] = groupByField;

		maxBeginDateCriteria.addEqualToField(groupByField, Criteria.PARENT_QUERY_PREFIX + groupByField);
	}

	String[] columns = new String[1];
	columns[0] = "max(" + KRADPropertyConstants.ACTIVE_FROM_DATE + ")";

	QueryByCriteria query = QueryFactory.newReportQuery(example.getClass(), columns, maxBeginDateCriteria, true);
	query.addGroupBy(groupBy);

	String currentBooleanStr = (String) (new OjbCharBooleanConversion()).javaToSql(currentSearchValue);
	if (OjbCharBooleanConversion.DATABASE_BOOLEAN_TRUE_STRING_REPRESENTATION.equals(currentBooleanStr)) {
		criteria.addIn(KRADPropertyConstants.ACTIVE_FROM_DATE, query);
	} else if (OjbCharBooleanConversion.DATABASE_BOOLEAN_FALSE_STRING_REPRESENTATION.equals(currentBooleanStr)) {
		criteria.addNotIn(KRADPropertyConstants.ACTIVE_FROM_DATE, query);
	}
}
 
开发者ID:kuali,项目名称:kc-rice,代码行数:43,代码来源:LookupDaoOjb.java

示例14: findPendingLedgerEntriesForCashBalance

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
/**
 * @see org.kuali.ole.sys.dataaccess.GeneralLedgerPendingEntryDao#findPendingLedgerEntriesForCashBalance(java.util.Map, boolean,
 *      java.lang.String, int)
 */
@Override
public Iterator findPendingLedgerEntriesForCashBalance(Map fieldValues, boolean isApproved, String currentFiscalPeriodCode, int currentFiscalYear, List<String> encumbranceBalanceType) {
    LOG.debug("findPendingLedgerEntriesForCashBalance started");

    Criteria criteria = buildCriteriaFromMap(fieldValues, this.getEntryClassInstance(), currentFiscalPeriodCode, currentFiscalYear, encumbranceBalanceType);
    criteria.addEqualTo(OLEPropertyConstants.FINANCIAL_BALANCE_TYPE_CODE, "AC");
    criteria.addEqualToField(OLEPropertyConstants.FINANCIAL_OBJECT_CODE, CHART_FINANCIAL_CASH_OBJECT_CODE);

    // add the status codes into the criteria
    this.addStatusCode(criteria, isApproved);

    QueryByCriteria query = QueryFactory.newQuery(this.getEntryClass(), criteria);
    return getPersistenceBrokerTemplate().getIteratorByQuery(query);
}
 
开发者ID:VU-libtech,项目名称:OLE-INST,代码行数:19,代码来源:GeneralLedgerPendingEntryDaoOjb.java

示例15: getLastCarryOverBlocks

import org.apache.ojb.broker.query.Criteria; //导入方法依赖的package包/类
public Map<String, LeaveBlockBo> getLastCarryOverBlocks(String principalId, String leaveBlockType, LocalDate asOfDate) {
    Map<String, LeaveBlockBo> carryOver = new HashMap<String, LeaveBlockBo>();
    Criteria root = new Criteria();
    root.addEqualTo("principalId", principalId);
    root.addEqualTo("leaveBlockType", leaveBlockType);

    Criteria dateSubquery = new Criteria();
    dateSubquery.addEqualToField("principalId", Criteria.PARENT_QUERY_PREFIX + "principalId");
    dateSubquery.addEqualToField("leaveBlockType", Criteria.PARENT_QUERY_PREFIX + "leaveBlockType");
    dateSubquery.addEqualToField("accrualCategory", Criteria.PARENT_QUERY_PREFIX + "accrualCategory");
    if (asOfDate != null) {
        dateSubquery.addLessThan("leaveDate", asOfDate.toDate());
    }

    ReportQueryByCriteria subQuery = QueryFactory.newReportQuery(LeaveBlockBo.class, dateSubquery);
    String[] attributes = new String[] { "max(leaveDate)" };
    subQuery.setAttributes(attributes);

    root.addEqualTo("leaveDate", subQuery);

    Query query = QueryFactory.newQuery(LeaveBlockBo.class, root);
    Collection<LeaveBlockBo> c = (Collection<LeaveBlockBo>)this.getPersistenceBrokerTemplate().getCollectionByQuery(query);
    //Collection c = this.getPersistenceBrokerTemplate().getCollectionByQuery(query);
    for (LeaveBlockBo lb : c) {
        carryOver.put(lb.getAccrualCategory(), lb);
    }

    return carryOver;

}
 
开发者ID:kuali-mirror,项目名称:kpme,代码行数:31,代码来源:LeaveBlockDaoOjbImpl.java


注:本文中的org.apache.ojb.broker.query.Criteria.addEqualToField方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。