001    /*
002     * Copyright 2011 The Kuali Foundation.
003     * 
004     * Licensed under the Educational Community License, Version 2.0 (the "License");
005     * you may not use this file except in compliance with the License.
006     * You may obtain a copy of the License at
007     * 
008     * http://www.opensource.org/licenses/ecl2.php
009     * 
010     * Unless required by applicable law or agreed to in writing, software
011     * distributed under the License is distributed on an "AS IS" BASIS,
012     * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013     * See the License for the specific language governing permissions and
014     * limitations under the License.
015     */
016    package org.kuali.kfs.gl.dataaccess;
017    
018    
019    /**
020     * DAO interface for the balancing process of ledger entries
021     */
022    public interface LedgerEntryBalancingDao {
023        /**
024         * Does a group by query on the parameters passed in and returns an object array with the count as first parameter and sum of TRANSACTION_LEDGER_ENTRY_AMOUNT of the second.
025         * @param universityFiscalYear the given university fiscal year
026         * @param chartOfAccountsCode the given chart of account code
027         * @param financialObjectCode the given object code
028         * @param financialBalanceTypeCode the given balance type code
029         * @param universityFiscalPeriodCode the given university fiscal period code
030         * @param transactionDebitCreditCode the given transaction debit or credit code
031         * @return object array with [0] being count(*) and [1] sum(TRANSACTION_LEDGER_ENTRY_AMOUNT). Returns null if data was not found
032         */
033        public Object[] findEntryByGroup(Integer universityFiscalYear, String chartOfAccountsCode, String financialObjectCode, String financialBalanceTypeCode, String universityFiscalPeriodCode, String transactionDebitCreditCode);
034    
035        /**
036         * Finds the count of rows for >= fiscal year passed in.
037         * @param the given university fiscal year
038         * @return count
039         */
040        public Integer findCountGreaterOrEqualThan(Integer year);
041    }