Package clips.reportgen

Source Code of clips.reportgen.QuerySearcher

/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/

package clips.reportgen;

import cli_fmw.delegate.AuditListener;
import framework.beans.reportgen.ReportGeneratorBean;
import framework.beans.reportgen.ReportGeneratorBeanRemote;
import cli_fmw.delegate.DelegateSimple;
import cli_fmw.delegate.directory.complex.reportType.DirectoryReportTypeItem;
import cli_fmw.main.ClipsException;
import cli_fmw.utils.MessageBox;
import framework.beans.reportgen.item.QueryDetails;
import java.util.ArrayList;
import java.util.List;

/**
*
* @author petr
*/
public class QuerySearcher extends DelegateSimple<ReportGeneratorBeanRemote> {
   

    public QuerySearcher(AuditListener al) throws ClipsException {
        super(ReportGeneratorBean.class.getSimpleName());
        initBean();
        this.am = al;
    }


    /**
     * Возвращает список генерируемых отчетов. Один из параметров предполагается равным null
     * @param type - тип группы отчетов (выборка происходит отчетов только этой группы)
     * @param bool - вид отчета (основной или вспомогат)
     * @return
     * @throws ClipsException/
     */
    public ArrayList<QueryLocal> getQueryList(DirectoryReportTypeItem type, Boolean bool) throws ClipsException{
        int errorCount = 0;
        try {
            ArrayList<QueryLocal> res = new ArrayList<QueryLocal>();
            List<QueryDetails> queryList = getBean().get().getQueryList(type != null ? type.getID() : 0, bool);
            String msg = "";
            for (QueryDetails qd : queryList) {
                try {
                    res.add(new QueryLocal(qd, false, am));
                } catch (Exception ex) {
                    QueryDetails details = new QueryDetails();
                    details.id = qd.id;
                    details.title = qd.title;
                    details.description = qd.description;
                    res.add(new QueryLocal(details, true, am));
                    ex.printStackTrace();
                    msg += ex.getLocalizedMessage() + "\n";
                    errorCount++;
                }
            }
            if(errorCount > 0) {
                String str = (type == null ? "Всего отчетов" : "Отчетов в группе");
                MessageBox.showExceptionOnly(
                        new Exception(str + ", признанных некорректными и не загруженных: " + errorCount
                        + "\n\n" + msg));
            }
            return res;
        } catch (Exception ex) {
            clearBean();
            throw new ClipsException("Ошибка при получении запросов", ex);
        }
    }
}
TOP

Related Classes of clips.reportgen.QuerySearcher

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.