亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? queryreportaction.java

?? The ability to create groups of reports, and grant users access to reports by group. The ability to
?? JAVA
字號(hào):
/*
 * Copyright (C) 2004 Erik Swenson - eswenson@opensourcesoft.net
 * 
 * This program is free software; you can redistribute it and/or modify it
 * under the terms of the GNU General Public License as published by the Free
 * Software Foundation; either version 2 of the License, or (at your option)
 * any later version.
 * 
 * This program is distributed in the hope that it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
 * more details.
 * 
 * You should have received a copy of the GNU General Public License along with
 * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
 * Place - Suite 330, Boston, MA 02111-1307, USA.
 *  
 */

package org.efs.openreports.actions;

import java.sql.*;
import java.util.*;
import java.util.Date;

import com.opensymphony.xwork.ActionContext;
import com.opensymphony.xwork.ActionSupport;

import org.apache.commons.beanutils.DynaProperty;
import org.apache.commons.beanutils.RowSetDynaClass;
import org.apache.log4j.Logger;
import org.efs.openreports.ORStatics;
import org.efs.openreports.objects.*;
import org.efs.openreports.providers.*;
import org.efs.openreports.util.ORUtil;

import net.sf.jasperreports.engine.design.JRDesignQuery;
import net.sf.jasperreports.engine.util.JRQueryExecuter;

public class QueryReportAction
	extends ActionSupport
	implements ReportLogProviderAware, DataSourceProviderAware
{
	protected static Logger log = Logger.getLogger(QueryReportAction.class);

	private DataSourceProvider dataSourceProvider;
	private ReportLogProvider reportLogProvider;
	
	private List results;
	private DynaProperty[] properties;

	public String execute()
	{
		ReportUser user =
			(ReportUser) ActionContext.getContext().getSession().get(
				ORStatics.REPORT_USER);

		Report report =
			(Report) ActionContext.getContext().getSession().get(
				ORStatics.REPORT);

		Map reportParameters = getReportParameterMap(user);

		ReportLog reportLog = new ReportLog(user, report, new Date());

		try
		{
			log.debug("Starting Query Report: " + report.getName());
			log.debug("Query: " + report.getQuery());

			reportLogProvider.insertReportLog(reportLog);

			executeQuery(report, reportParameters);

			reportLog.setEndTime(new Date());
			reportLog.setStatus(ReportLog.STATUS_SUCCESS);
			reportLogProvider.updateReportLog(reportLog);

			log.debug("Finished Query Report: " + report.getName());
		}
		catch (Exception e)
		{

			addActionError(e.getMessage());

			log.error(e.getMessage());

			reportLog.setMessage(e.getMessage());
			reportLog.setStatus(ReportLog.STATUS_FAILURE);

			reportLog.setEndTime(new Date());

			try
			{
				reportLogProvider.updateReportLog(reportLog);
			}
			catch (Exception ex)
			{
				log.error("Unable to create ReportLog: " + ex.getMessage());
			}

			return ERROR;
		}

		return SUCCESS;
	}

	private void executeQuery(Report report, Map parameters)
		throws ProviderException
	{
		results = new ArrayList();
		
		Connection conn = null;
		PreparedStatement pStmt = null;
		ResultSet rs = null;

		try
		{
			ReportDataSource dataSource = report.getDataSource();
			conn = dataSourceProvider.getConnection(dataSource.getId());			

			if (parameters == null || parameters.isEmpty())
			{
				pStmt = conn.prepareStatement(report.getQuery());				
			}
			else				
			{				
				// Use JasperReports Query logic to parse parameters in chart
				// queries

				JRDesignQuery query = new JRDesignQuery();
				query.setText(report.getQuery());

				// convert parameters to JRDesignParameters so they can be
				// parsed
				Map jrParameters = ORUtil.buildJRDesignParameters(parameters);
				
				pStmt =
					JRQueryExecuter.getStatement(
						query,
						jrParameters,
						parameters,
						conn);				
			}
			
			rs = pStmt.executeQuery();

			RowSetDynaClass rowSetDynaClass = new RowSetDynaClass(rs);			
			
			results = rowSetDynaClass.getRows();	
			properties = rowSetDynaClass.getDynaProperties();
			
			rs.close();
		}
		catch (Exception e)
		{
			throw new ProviderException(
				"Error executing report query: " + e.getMessage());
		}
		finally
		{
			try
			{
				if (pStmt != null)
					pStmt.close();
				if (conn != null)
					conn.close();
			}
			catch (Exception c)
			{
				log.error("Error closing");
			}
		}
	}

	protected Map getReportParameterMap(ReportUser user)
	{
		Map reportParameters = new HashMap();

		if (ActionContext
			.getContext()
			.getSession()
			.get(ORStatics.REPORT_PARAMETERS)
			!= null)
		{
			reportParameters =
				(Map) ActionContext.getContext().getSession().get(
					ORStatics.REPORT_PARAMETERS);
		}

		// add standard report parameters
		reportParameters.put(ORStatics.USER_ID, user.getId());
		reportParameters.put(ORStatics.EXTERNAL_ID, user.getExternalId());
		reportParameters.put(ORStatics.USER_NAME, user.getName());

		return reportParameters;
	}

	public void setReportLogProvider(ReportLogProvider reportLogProvider)
	{
		this.reportLogProvider = reportLogProvider;
	}

	public void setDataSourceProvider(DataSourceProvider dataSourceProvider)
	{
		this.dataSourceProvider = dataSourceProvider;
	}

	public List getResults()
	{
		return results;
	}
	
	public DynaProperty[] getProperties()
	{
		return properties;
	}

}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人va在线观看| 日韩精品专区在线| 亚洲精品福利视频网站| 国产福利一区二区| 亚洲图片一区二区| 国产日产欧产精品推荐色 | 日韩二区在线观看| 欧美成人a在线| 处破女av一区二区| 日韩成人精品在线观看| 日韩免费性生活视频播放| 成人av在线观| 日韩av在线播放中文字幕| 欧美一区二区性放荡片| 香蕉加勒比综合久久| 中文天堂在线一区| 欧美一二三区在线| 欧美日韩一级片网站| 欧美在线啊v一区| 777精品伊人久久久久大香线蕉| 欧美色区777第一页| 欧美唯美清纯偷拍| 日本国产一区二区| 欧美性猛交xxxx乱大交退制版| 99这里只有精品| 色婷婷av一区二区三区软件| 不卡影院免费观看| 色菇凉天天综合网| 欧美日韩精品综合在线| 91精品久久久久久久99蜜桃 | 精品一区二区三区不卡| 九色|91porny| 99精品热视频| 欧美三级电影在线看| 日韩一级精品视频在线观看| 国产视频在线观看一区二区三区 | 日韩高清在线不卡| 国内精品国产成人国产三级粉色| 国产传媒久久文化传媒| 欧洲生活片亚洲生活在线观看| 91污片在线观看| 国产精品亚洲视频| 色综合久久综合| 国产精品影视网| 亚洲欧美日韩国产另类专区 | 成人激情开心网| 精品亚洲欧美一区| 国内精品写真在线观看| 色哟哟日韩精品| 久久久不卡网国产精品二区| 婷婷中文字幕综合| 欧美tk—视频vk| 91极品视觉盛宴| 日韩福利视频网| 中文字幕中文乱码欧美一区二区| 一本高清dvd不卡在线观看| 日韩精品乱码av一区二区| 日本一区二区电影| 在线看国产日韩| 国模大尺度一区二区三区| 国产精品色在线观看| 91成人国产精品| 亚洲成人动漫一区| 欧美日韩美少妇| 国产精品美女久久久久久久网站| 韩国在线一区二区| 日韩美女天天操| 国产尤物一区二区| 久久久天堂av| 不卡一区二区中文字幕| 国产精品久久久久久久蜜臀 | 亚洲小少妇裸体bbw| 91在线porny国产在线看| 亚洲免费三区一区二区| 亚洲国产精品天堂| 9色porny自拍视频一区二区| 国产色产综合色产在线视频| 蜜臂av日日欢夜夜爽一区| 日韩欧美美女一区二区三区| 国产成人鲁色资源国产91色综| 久久婷婷国产综合精品青草| 国产v综合v亚洲欧| 首页国产欧美日韩丝袜| 欧美日韩亚洲国产综合| 日本中文字幕不卡| 欧美国产精品一区二区| 成人av网址在线| 日本va欧美va欧美va精品| 久久―日本道色综合久久| eeuss国产一区二区三区| 欧美日韩精品免费| 亚洲三级电影网站| 国产成人午夜视频| 中文字幕欧美日韩一区| 色诱视频网站一区| 激情综合色播激情啊| 成人欧美一区二区三区黑人麻豆| 在线亚洲免费视频| 国产老肥熟一区二区三区| 亚洲靠逼com| 欧美一区国产二区| 精品综合免费视频观看| 自拍偷在线精品自拍偷无码专区| 欧美系列亚洲系列| 亚洲午夜羞羞片| 欧美三级视频在线观看| 亚洲大片一区二区三区| 久久久噜噜噜久久人人看| av一区二区三区在线| 美女脱光内衣内裤视频久久影院| 国产精品激情偷乱一区二区∴| 欧美亚洲国产怡红院影院| 亚洲成a人v欧美综合天堂| 欧美精品aⅴ在线视频| 色综合久久综合网欧美综合网| 国产精品自拍av| 美脚の诱脚舐め脚责91| 成人a免费在线看| 国内不卡的二区三区中文字幕| 中文文精品字幕一区二区| 99久久精品一区二区| 波多野结衣一区二区三区| 欧美日韩午夜在线| 欧美中文字幕一区二区三区亚洲| 成人激情图片网| 国产乱子伦一区二区三区国色天香| 狠狠v欧美v日韩v亚洲ⅴ| 国产一区二区三区香蕉| fc2成人免费人成在线观看播放| 波多野结衣中文字幕一区二区三区| 成人午夜免费av| 91视频在线看| 欧美大片免费久久精品三p| 国产亚洲精品7777| 午夜精品爽啪视频| 国产精品福利一区| aaa国产一区| 亚洲成人1区2区| 日韩欧美中文字幕制服| 国产在线日韩欧美| 国产精品久99| 欧美私人免费视频| 国产在线不卡视频| 综合久久久久综合| 91精品国产色综合久久不卡电影| 狠狠狠色丁香婷婷综合久久五月| 国产精品成人免费| 欧美日韩国产欧美日美国产精品| 中文字幕亚洲精品在线观看| 欧美中文字幕一区二区三区| 亚洲综合丁香婷婷六月香| 日韩女优电影在线观看| www.亚洲激情.com| 日本在线不卡一区| 久久精品一区四区| 欧美精品欧美精品系列| 国产 欧美在线| 无吗不卡中文字幕| 国产精品美女久久久久久2018| 欧美亚洲尤物久久| 国产精品亚洲综合一区在线观看| 亚洲一二三区不卡| 国产亚洲精品精华液| 欧美猛男男办公室激情| 成人av在线电影| 激情久久久久久久久久久久久久久久| 亚洲色图制服丝袜| 久久久久久久久久久99999| 欧美日韩精品一区视频| 99久久精品国产精品久久| 日韩av电影免费观看高清完整版| 国产精品久久久久7777按摩| 精品国产免费一区二区三区四区 | www成人在线观看| 色8久久精品久久久久久蜜 | 欧美福利视频导航| 色综合久久中文综合久久牛| 国产大陆亚洲精品国产| 美日韩黄色大片| 五月天激情综合| 一二三区精品视频| 国产精品妹子av| 久久精品亚洲一区二区三区浴池 | 26uuu亚洲综合色欧美| 在线观看日韩高清av| 成人精品一区二区三区中文字幕| 久久电影网站中文字幕| 亚洲国产综合视频在线观看| 国产精品高清亚洲| 国产三级欧美三级| 久久综合九色综合97婷婷女人 | 欧美理论片在线| 欧洲av一区二区嗯嗯嗯啊| 成人av综合在线| 国产成人综合亚洲网站| 精品在线一区二区| 裸体一区二区三区| 欧美aaaaaa午夜精品| 午夜一区二区三区在线观看| 一区二区三区不卡视频|