﻿<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Web报表工具-专业博客</title>
	<atom:link href="http://reportblog.cn/feed" rel="self" type="application/rss+xml" />
	<link>http://reportblog.cn</link>
	<description>报表技术知识：web报表，报表工具，表单工具，报表设计，报表系统，java报表</description>
	<lastBuildDate>Thu, 12 Jan 2012 03:24:48 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>揭榜咯~Finereport爱好者论坛征文竞赛第一期获奖名单！！！</title>
		<link>http://reportblog.cn/archives/1728</link>
		<comments>http://reportblog.cn/archives/1728#comments</comments>
		<pubDate>Thu, 12 Jan 2012 01:57:07 +0000</pubDate>
		<dc:creator>FineReport——web报表技术领跑者</dc:creator>
				<category><![CDATA[Web报表工具-应用实例]]></category>
		<category><![CDATA[finereport报表]]></category>
		<category><![CDATA[Finereport爱好者论坛征文竞赛]]></category>
		<category><![CDATA[web报表工具]]></category>

		<guid isPermaLink="false">http://reportblog.cn/?p=1728</guid>
		<description><![CDATA[各位FineReport的Fans们，感谢各位对web报表工具FineReport的厚爱，感谢各位对Finereport爱好者论坛活动的关注！ 在各位的积极参与和支持下，Finereport爱好者论坛第一期征文竞赛圆满结束！ 在此，Finereport爱好者论坛管委会全体成员祝大家龙年大吉，好运连连！ 获奖名单如下：（点击帖子名可查看相关作品） 一等奖： vikou——基于FineReport的电机行业综合管理平台 二等奖： 年华——用FineReport打造独立的电子政务平台 三等奖： nanboalex——FR报表在金融行业资产负债系统的应用 yuzhifu——FR报表在制造业的应用          四等奖： ピ智焱戟梓℃——FR工具构建短信平台统计分析系统 vikou——Finereport搭建Web版ipad报表系统 wwip——基于FineReport报表构建航空客票综合支撑系统           五等奖： 4color——Finereport在土地市场动态监测与监管系统中的应用 vikou——基于FineReport的钢铁行业生产运营系统 东门吹风——Finereport 集成到AWS系统 dalong.li——FineReport报表员工绩效考核通用版 dashidashida——FineReport报表在电信行业的应用          鼓励奖： 花生——Finereport在企业级BI分析中应用案例 nageqd——企业质量管理系统 ╭夜晚看太阳——FineReport报表城建应用-套打 Web报表主题相关文章： 冬日送大礼—Finereport爱好者论坛征文竞赛第一期！ 帆软FineReport报表满意度调研 FineReport爱好者论坛迎新有奖活动开始啦！！！ 报表工具FineReport最新版本V6.5.5金秋华丽登场 帆软—finereport有奖产品调研]]></description>
			<content:encoded><![CDATA[<p>各位FineReport的Fans们，感谢各位对<a title="web报表工具" href="http://www.finereport.com/web-reportingtool">web报表工具</a>FineReport的厚爱，感谢各位对<a title="Finereport爱好者论坛活动" href="http://bbs.finereport.com">Finereport爱好者论坛活动</a>的关注！<br />
在各位的积极参与和支持下，Finereport爱好者论坛<a title="第一期征文竞赛" href="http://bbs.finereport.com/thread-611-1-1.html">第一期征文竞赛</a>圆满结束！<br />
在此，Finereport爱好者论坛管委会全体成员祝大家龙年大吉，好运连连！</p>
<div><img src="http://piccache1.soso.com/face/_10266596982388498757" alt="" border="0" /></div>
<p><span id="more-1728"></span><br />
<span><strong>获奖名单如下：（点击帖子名可查看相关作品）</strong></span></p>
<p><span style="color: #000000;"><span><strong>一等奖：</strong></span></span><br />
<span style="color: #ff0000;"><span>vikou</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-995-1-1.html" target="_blank">基于FineReport的电机行业综合管理平台</a></span></span></p>
<p><span style="color: #000000;"><span><strong>二等奖：</strong></span></span><br />
<span style="color: #ff0000;"><span>年华</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-1195-1-1.html" target="_blank">用FineReport打造独立的电子政务平台</a></span></span></p>
<p><span style="color: #000000;"><span><strong>三等奖：</strong></span></span><br />
<span style="color: #ff0000;"><span>nanboalex</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-971-1-1.html" target="_blank">FR报表在</a><a href="http://portal.vsharing.com/industry/1636.html" target="_blank">金融</a>行业资产负债系统的应用</span></span><br />
<span style="color: #ff0000;"><span>yuzhifu</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-897-1-1.html" target="_blank">FR报表在</a><a href="http://portal.vsharing.com/industry/1632.html" target="_blank">制造业</a>的应用</span></span><br />
<span style="color: #000000;"><span>        </span></span><br />
<span style="color: #000000;"><span><strong>四等奖：</strong></span></span><br />
<span style="color: #ff0000;"><span>ピ智焱戟梓℃</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-973-1-1.html" target="_blank">FR工具构建短信平台统计分析系统</a></span></span><br />
<span style="color: #ff0000;"><span>vikou</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-1078-1-1.html" target="_blank">Finereport搭建Web版ipad报表系统</a></span></span><br />
<span style="color: #ff0000;"><span>wwip</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-1035-1-1.html" target="_blank">基于FineReport报表构建航空客票综合支撑系统</a></span></span><br />
<span style="color: #000000;"><span>         </span></span><br />
<span style="color: #000000;"><span><strong>五等奖：</strong></span></span><br />
<span style="color: #ff0000;"><span>4color</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-1075-1-1.html" target="_blank">Finereport在土地市场动态监测与监管系统中的应用</a></span></span><br />
<span style="color: #ff0000;"><span>vikou</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-997-1-1.html" target="_blank">基于FineReport的钢铁行业生产运营系统</a></span></span><br />
<span style="color: #ff0000;"><span>东门吹风</span></span><span style="color: #000000;"><span>——</span></span><a href="http://bbs.finereport.com/thread-1130-1-1.html" target="_blank">Finereport 集成到AWS系统</a><br />
<span style="color: #ff0000;"><span>dalong.li</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-960-1-1.html" target="_blank">FineReport报表员工绩效考核通用版</a></span></span><br />
<span style="color: #ff0000;"><span>dashidashida</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-936-1-1.html" target="_blank">FineReport报表在电信行业的应用</a></span></span><br />
<span style="color: #000000;"><span>        </span></span><br />
<span style="color: #000000;"><span><strong>鼓励奖：</strong></span></span><br />
<span style="color: #ff0000;"><span>花生</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-1087-1-1.html" target="_blank">Finereport在企业级</a><a href="http://bi.vsharing.com/" target="_blank">BI</a>分析中应用案例</span></span><br />
<span style="color: #ff0000;"><span>nageqd</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-1169-1-1.html" target="_blank">企业质量管理系统</a></span></span><br />
<span style="color: #ff0000;"><span>╭夜晚看太阳</span></span><span style="color: #000000;"><span>——<a href="http://bbs.finereport.com/thread-1048-1-1.html" target="_blank">FineReport报表城建应用-套打</a></span></span></p>

<p><strong>Web报表主题相关文章：</strong></p>
<ul>
<li><a href="http://reportblog.cn/archives/1676">冬日送大礼—Finereport爱好者论坛征文竞赛第一期！</a></li>
<li><a href="http://reportblog.cn/archives/1433">帆软FineReport报表满意度调研</a></li>
<li><a href="http://reportblog.cn/archives/1408">FineReport爱好者论坛迎新有奖活动开始啦！！！</a></li>
<li><a href="http://reportblog.cn/archives/1378">报表工具FineReport最新版本V6.5.5金秋华丽登场</a></li>
<li><a href="http://reportblog.cn/archives/1376">帆软—finereport有奖产品调研</a></li>
</ul><br />
]]></content:encoded>
			<wfw:commentRss>http://reportblog.cn/archives/1728/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>IIS集成配置</title>
		<link>http://reportblog.cn/archives/1700</link>
		<comments>http://reportblog.cn/archives/1700#comments</comments>
		<pubDate>Thu, 05 Jan 2012 01:00:20 +0000</pubDate>
		<dc:creator>FineReport——web报表技术领跑者</dc:creator>
				<category><![CDATA[Web报表工具-技术园地]]></category>
		<category><![CDATA[finereport报表]]></category>
		<category><![CDATA[IIS集成配置]]></category>

		<guid isPermaLink="false">http://reportblog.cn/?p=1700</guid>
		<description><![CDATA[IIS简介： Internet Information Server的缩写为（IIS）是一个World Wide Web server。 Gopher server和FTP server全部包容在里面。 IIS意味着你能发布网页，并且有ASP（Active Server Pages）、JAVA、VBscript产生页面，有着一些扩展功能。IIS支持一些 有趣的东西，像有编辑环境的界面（FRONTPAGE）、有全文检索功能的（INDEX SERVER）、 有多媒体功能的（NET SHOW）。 ASP.net与IIS服务器集成后就可以发布相应的ASP网站。 IIS集成： 我们通过两种服务器的整合就可以将web报表工具FineReport工程与.net工程进行无缝集成。 以web报表工具FineReport自带的工程WebReport为例，先将WebReport工程与可以解析jsp,servlet的服务器集成（例如WebSphere,Tomcat等服务器），然后对服务器与可以解析asp的服务器（例如IIS服务器）进行整合。 IIS集成配置： 1. 复制插件：将FRFilter文件夹拷贝至IIS所在的服务器上的任意目录，如C:\FRFilter 。 该文件夹中包涵IsapiRewrite4.dll ，IsapiRewrite4.ini两个文件。前者为ISAPI筛选器。 2. 修改IsapiRewrite4.ini配置设置：打开配置文件，修改应用服务器端口，如下图： 3. IIS服务器添加筛选器：打开控制面板&#124;管理工具-Internet信息服务，右击网站，选择属性，添加一ISAPI筛选器，筛选器名称任意，如命名为FRFilter，可执行文件选择IsapiRewrite4.dll，如下图： 4. 配置完成，重启IIS服务器： 5. 启动应用服务器如tomcat： 6. 浏览报表： 在浏览其中输入地址如： http://localhost/WebReport/ReportServer/reportlet=/com/doc/cross.cpt 即可访问报表。 Web报表主题相关文章： Jboss 服务器 JNDI 配置数据源连接数据库 Oracle 数据库实现自增长列 Weblogic 10.1 配置JNDI 数据源 Sql server 2000 连接测试 [...]]]></description>
			<content:encoded><![CDATA[<p>IIS简介：<br />
Internet Information Server的缩写为（IIS）是一个World Wide Web server。<br />
Gopher server和FTP server全部包容在里面。 IIS意味着你能发布网页，并且有ASP（Active Server Pages）、JAVA、VBscript产生页面，有着一些扩展功能。IIS支持一些<br />
有趣的东西，像有编辑环境的界面（FRONTPAGE）、有全文检索功能的（INDEX SERVER）、<br />
有多媒体功能的（NET SHOW）。<br />
ASP.net与IIS服务器集成后就可以发布相应的ASP网站。<span id="more-1700"></span></p>
<p>IIS集成：<br />
我们通过两种服务器的整合就可以将<a title="web报表工具" href="http://www.finereport.com/web-reportingtool">web报表工具</a>FineReport工程与.net工程进行无缝集成。<br />
以<a title="web报表工具" href="http://www.finereport.com/web-reportingtool">web报表工具</a>FineReport自带的工程WebReport为例，先将WebReport工程与可以解析jsp,servlet的服务器集成（例如WebSphere,Tomcat等服务器），然后对服务器与可以解析asp的服务器（例如IIS服务器）进行整合。</p>
<p>IIS集成配置：<br />
1. 复制插件：将FRFilter文件夹拷贝至IIS所在的服务器上的任意目录，如C:\FRFilter 。 该文件夹中包涵IsapiRewrite4.dll ，IsapiRewrite4.ini两个文件。前者为ISAPI筛选器。<br />
2. 修改IsapiRewrite4.ini配置设置：打开配置文件，修改应用服务器端口，如下图：</p>
<p><a title="http://www.finereport.com/forumimages/i-modify.jpg" href="http://www.finereport.com/forumimages/i-modify.jpg"><img src="http://www.finereport.com/forumimages/i-modify.jpg" alt="" /></a><br />
3. IIS服务器添加筛选器：打开控制面板|管理工具-Internet信息服务，右击网站，选择属性，添加一ISAPI筛选器，筛选器名称任意，如命名为FRFilter，可执行文件选择IsapiRewrite4.dll，如下图：</p>
<p><a title="http://www.finereport.com/forumimages/i-add.jpg" href="http://www.finereport.com/forumimages/i-add.jpg"><img src="http://www.finereport.com/forumimages/i-add.jpg" alt="" /></a><br />
4. 配置完成，重启IIS服务器：<br />
5. 启动应用服务器如tomcat：<br />
6. 浏览报表：<br />
在浏览其中输入地址如：<br />
<a href="http://www.finereport.com/web-reportingtool">http://localhost/WebReport/ReportServer/reportlet=/com/doc/cross.cpt</a> 即可访问<a title="报表" href="http://www.finereport.com">报表</a>。</p>

<p><strong>Web报表主题相关文章：</strong></p>
<ul>
<li><a href="http://reportblog.cn/archives/1697">Jboss 服务器 JNDI 配置数据源连接数据库</a></li>
<li><a href="http://reportblog.cn/archives/1694">Oracle 数据库实现自增长列</a></li>
<li><a href="http://reportblog.cn/archives/1689">Weblogic 10.1 配置JNDI 数据源</a></li>
<li><a href="http://reportblog.cn/archives/1685">Sql server 2000 连接测试</a></li>
<li><a href="http://reportblog.cn/archives/1667">程序数据集传参使用解决方案</a></li>
</ul><br />
]]></content:encoded>
			<wfw:commentRss>http://reportblog.cn/archives/1700/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jboss 服务器 JNDI 配置数据源连接数据库</title>
		<link>http://reportblog.cn/archives/1697</link>
		<comments>http://reportblog.cn/archives/1697#comments</comments>
		<pubDate>Thu, 22 Dec 2011 01:41:16 +0000</pubDate>
		<dc:creator>FineReport——web报表技术领跑者</dc:creator>
				<category><![CDATA[Web报表工具-技术园地]]></category>
		<category><![CDATA[Jboss 服务器]]></category>
		<category><![CDATA[JNDI 配置]]></category>
		<category><![CDATA[数据库]]></category>

		<guid isPermaLink="false">http://reportblog.cn/?p=1697</guid>
		<description><![CDATA[一. Jboss端配置JNDI 数据源 Jboss安装目录 doc\examples\jca 下有各种如oracle,db2,sqlserver等数据库JNDI配置的模板文件，形式为 “数据库-ds.xml”，在此我们以配置oracle10g 数据库为例： 将Jboss_home\docs\examples\jca 下的oracle-ds.xml 拷贝到 Jboss_home\server\default\deploy 下，并做相应的修改，主要内容如下： http://www.finereport.com/forumimages/j-deploy.jpg 其中红色标注的是后面加上的,有了这句在jndi前可以不用加前缀;否则,需要加前缀java(即:lookup(“Zqb Oracle Test”) 和 lookup(“java:Zqb Oracle Test”)的区别). 二. 拷贝数据库驱动程序 配置好JNDI数据源后还不够，还需要将相应数据库的驱动程序拷贝至Jboss_home\ server\default\lib，在此将oracle数据库驱动ojdbc14.jar拷贝至Jboss_home\ server\default\lib 目录下 三. 用JNDI连接数据源并制作模板 打开设计器，在登录对话框的远程环境里选择远程服务器如下图： 如果事先没有定义远程服务器，就点击登录界面的…按钮如下图： 选择+按钮 新增一个远程服务器 登陆到远程服务器后，开始配置远程服务器。如下图，填写好各项配置： 配置完成后，点击确定，登陆到远程服务器的运行环境。 再打开服务器—定义数据连接，使用JDBC连接oracle10g数据库并制作好模板，将数据源修改为JNDI，如下图： Initial_context_factory : 选择org.jboss.naming.HttpNamingContextFactory Provider_url: 修改其中的地址为相应服务器所在地址与端口 保存模板 四. 部署应用并访问 重命名WebReport文件夹为WebReport.war， 拷贝至Jboss_home\server\default\deploy下，启动服务器输入地址，便可以访问jndi数据源制作的模板啦 Web报表主题相关文章： IIS集成配置 Oracle 数据库实现自增长列 Weblogic 10.1 配置JNDI 数据源 Sql [...]]]></description>
			<content:encoded><![CDATA[<p>一. Jboss端配置JNDI 数据源<br />
Jboss安装目录 doc\examples\jca 下有各种如oracle,db2,sqlserver等数据库JNDI配置的模板文件，形式为 “数据库-ds.xml”，在此我们以配置oracle10g 数据库为例：<br />
将Jboss_home\docs\examples\jca 下的oracle-ds.xml<br />
拷贝到 Jboss_home\server\default\deploy 下，并做相应的修改，主要内容如下： <span id="more-1697"></span> http://www.finereport.com/forumimages/j-deploy.jpg<br />
其中红色标注的是后面加上的,有了这句在jndi前可以不用加前缀;否则,需要加前缀java(即:lookup(“Zqb Oracle Test”) 和 lookup(“java:Zqb Oracle Test”)的区别).</p>
<p>二. 拷贝数据库驱动程序<br />
配置好JNDI数据源后还不够，还需要将相应数据库的驱动程序拷贝至Jboss_home\ server\default\lib，在此将oracle数据库驱动ojdbc14.jar拷贝至Jboss_home\ server\default\lib 目录下</p>
<p>三. 用JNDI连接数据源并制作模板<br />
打开设计器，在登录对话框的远程环境里选择远程服务器如下图：</p>
<p><a title="http://www.finereport.com/forumimages/j-setting1.jpg" href="http://www.finereport.com/forumimages/j-setting1.jpg"><img src="http://www.finereport.com/forumimages/j-setting1.jpg" alt="" /></a><br />
如果事先没有定义远程服务器，就点击登录界面的…按钮如下图：</p>
<p><a title="http://www.finereport.com/forumimages/j-setting2.jpg" href="http://www.finereport.com/forumimages/j-setting2.jpg"><img src="http://www.finereport.com/forumimages/j-setting2.jpg" alt="" /></a><br />
选择+按钮 新增一个远程服务器</p>
<p><a title="http://www.finereport.com/forumimages/j-add.jpg" href="http://www.finereport.com/forumimages/j-add.jpg"><img src="http://www.finereport.com/forumimages/j-add.jpg" alt="" /></a><br />
登陆到远程服务器后，开始配置远程服务器。如下图，填写好各项配置：</p>
<p><a title="http://www.finereport.com/forumimages/j-fillin.jpg" href="http://www.finereport.com/forumimages/j-fillin.jpg"><img src="http://www.finereport.com/forumimages/j-fillin.jpg" alt="" /></a><br />
配置完成后，点击确定，登陆到远程服务器的运行环境。<br />
再打开服务器—定义数据连接，使用JDBC连接oracle10g数据库并制作好模板，将数据源修改为JNDI，如下图：</p>
<p><a title="http://www.finereport.com/forumimages/j-define.jpg" href="http://www.finereport.com/forumimages/j-define.jpg"><img src="http://www.finereport.com/forumimages/j-define.jpg" alt="" /></a><br />
Initial_context_factory : 选择org.jboss.naming.HttpNamingContextFactory<br />
Provider_url: 修改其中的地址为相应服务器所在地址与端口<br />
保存模板</p>
<p>四. 部署应用并访问<br />
重命名WebReport文件夹为WebReport.war，<br />
拷贝至Jboss_home\server\default\deploy下，启动服务器输入地址，便可以访问jndi数据源制作的模板啦</p>

<p><strong>Web报表主题相关文章：</strong></p>
<ul>
<li><a href="http://reportblog.cn/archives/1700">IIS集成配置</a></li>
<li><a href="http://reportblog.cn/archives/1694">Oracle 数据库实现自增长列</a></li>
<li><a href="http://reportblog.cn/archives/1689">Weblogic 10.1 配置JNDI 数据源</a></li>
<li><a href="http://reportblog.cn/archives/1685">Sql server 2000 连接测试</a></li>
<li><a href="http://reportblog.cn/archives/1667">程序数据集传参使用解决方案</a></li>
</ul><br />
]]></content:encoded>
			<wfw:commentRss>http://reportblog.cn/archives/1697/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Oracle 数据库实现自增长列</title>
		<link>http://reportblog.cn/archives/1694</link>
		<comments>http://reportblog.cn/archives/1694#comments</comments>
		<pubDate>Mon, 19 Dec 2011 02:03:29 +0000</pubDate>
		<dc:creator>FineReport——web报表技术领跑者</dc:creator>
				<category><![CDATA[Web报表工具-技术园地]]></category>
		<category><![CDATA[finereport报表]]></category>
		<category><![CDATA[Oracle 数据库]]></category>
		<category><![CDATA[自增长列]]></category>

		<guid isPermaLink="false">http://reportblog.cn/?p=1694</guid>
		<description><![CDATA[SqlServer 和MySql都有自增长的功能，而Oracle必须接结合sequence序列（一般用于主键列）,并使用触发器才能够实现自动增长，具体步骤如下： 一、 建表 create table list（id number,name varchar2(50)）; 二、 创建序列 1. create sequence list_seq 2. minvalue 1 3. maxvalue 99999999999999 4. start with 1 5. increment by 1 6. cache 20 7. order; 三、 创建触发器 1. Create or replace trigger list_tg 2. Before insert on list 3. For each row 4. Begin 5. Select [...]]]></description>
			<content:encoded><![CDATA[<p>SqlServer 和MySql都有自增长的功能，而Oracle必须接结合sequence序列（一般用于主键列）,并使用触发器才能够实现自动增长，具体步骤如下：</p>
<p>一、 建表<br />
create table list（id number,name varchar2(50)）;<span id="more-1694"></span></p>
<p>二、 创建序列</p>
<p>1. create sequence list_seq<br />
2. minvalue 1<br />
3. maxvalue 99999999999999<br />
4. start with 1<br />
5. increment by 1<br />
6. cache 20<br />
7. order;</p>
<p><a title="http://www.finereport.com/forumimages/o-order.jpg " href="http://www.finereport.com/forumimages/o-order.jpg"><img src="http://www.finereport.com/forumimages/o-order.jpg" alt="" /></a></p>
<p>三、 创建触发器<br />
1. Create or replace trigger list_tg<br />
2. Before insert on list<br />
3. For each row<br />
4. Begin<br />
5. Select list_seq.nextval into :new.id from dual;<br />
6. End;</p>
<p><a title="http://www.finereport.com/forumimages/o-trigger1.jpg " href="http://www.finereport.com/forumimages/o-trigger1.jpg"><img src="http://www.finereport.com/forumimages/o-trigger1.jpg" alt="" /></a></p>
<p><a title="http://www.finereport.com/forumimages/o-trigger2.jpg " href="http://www.finereport.com/forumimages/o-trigger2.jpg"><img src="http://www.finereport.com/forumimages/o-trigger2.jpg" alt="" /></a></p>
<p><a title="http://www.finereport.com/forumimages/o-trigger3.jpg" href="http://www.finereport.com/forumimages/o-trigger3.jpg"><img src="http://www.finereport.com/forumimages/o-trigger3.jpg" alt="" /> </a><br />
四、 插入数据<br />
Insert into list values(’’,’aaa’);<br />
Insert into list values(’’,’bbb’);<br />
Select * from list ;<br />
结果为:<br />
ID name<br />
1 aaa<br />
2 bbb</p>
<p>在Oracle 10g 的em 操作界面按照上图配置即可实现自增长序列，数据库端设置完成；<br />
在插入数据时自增长字段可由空值’ ’或null代替，如果insert 语句中列出了所插入的字段，如insert into list(name) values(’aaa’),则增长字段不用写 ；如模板所示为一简单的表单，ID字段绑定数据库中的自增长列，BS填报时，id字段不输入若输入任意数字时，数据库中都按照自增长的规律进行赋值，如下图所示：</p>
<p><a title="http://www.finereport.com/forumimages/o-assign1.jpg" href="http://www.finereport.com/forumimages/o-assign1.jpg"><img src="http://www.finereport.com/forumimages/o-assign1.jpg" alt="" /> </a></p>
<p><a title="http://www.finereport.com/forumimages/o-assign2.jpg " href="http://www.finereport.com/forumimages/o-assign2.jpg"><img src="http://www.finereport.com/forumimages/o-assign2.jpg" alt="" /></a></p>
<p><a title="http://www.finereport.com/forumimages/o-assign3.jpg" href="http://www.finereport.com/forumimages/o-assign3.jpg"><img src="http://www.finereport.com/forumimages/o-assign3.jpg" alt="" /></a></p>

<p><strong>Web报表主题相关文章：</strong></p>
<ul>
<li><a href="http://reportblog.cn/archives/1700">IIS集成配置</a></li>
<li><a href="http://reportblog.cn/archives/1697">Jboss 服务器 JNDI 配置数据源连接数据库</a></li>
<li><a href="http://reportblog.cn/archives/1689">Weblogic 10.1 配置JNDI 数据源</a></li>
<li><a href="http://reportblog.cn/archives/1685">Sql server 2000 连接测试</a></li>
<li><a href="http://reportblog.cn/archives/1667">程序数据集传参使用解决方案</a></li>
</ul><br />
]]></content:encoded>
			<wfw:commentRss>http://reportblog.cn/archives/1694/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Weblogic 10.1 配置JNDI 数据源</title>
		<link>http://reportblog.cn/archives/1689</link>
		<comments>http://reportblog.cn/archives/1689#comments</comments>
		<pubDate>Thu, 15 Dec 2011 01:52:38 +0000</pubDate>
		<dc:creator>FineReport——web报表技术领跑者</dc:creator>
				<category><![CDATA[Web报表工具-技术园地]]></category>
		<category><![CDATA[finereport报表]]></category>
		<category><![CDATA[JNDI 数据源]]></category>
		<category><![CDATA[Weblogic 10.1]]></category>

		<guid isPermaLink="false">http://reportblog.cn/?p=1689</guid>
		<description><![CDATA[一. JNDI连接的使用原理： 1.1 在设计器中先用JDBC连接到数据库，建立数据库连接，然后用SQL或者其他方法创建数据集，使用数据集制作好报表，然后把建立的数据库连接从JDBC连接改成JNDI连接，保存模板，并部署至weblogic服务器。 1.2 服务器端配置数据源。 1.3 修改应用WEB-INF下的web.xml文件 这样就可以通过WEB浏览器浏览到使用JNDI数据源的报表了。 二. 我们以oracle 10g数据源制作的模板jndi.cpt为例来说明 2.1 设计器制作报表： l 在设计器中用JDBC连接到oracle 10g数据库，使用数据库中的数据表student 制作如下模板jndi.cpt： l 回到定义数据连接面板，将先前定义的数据库连接变为JNDI连接，设置JNDI的名字为oracle l 保存模板至weblogic 10的应用目录WebReport/WEB-INF/reportlets下，保存为 jndi.cpt. 此时服务器端的数据源还没有配置，启动服务器并访问jndi报表会显示如下类似错误： 2.2 服务器端配置数据源 l 打开weblogic 10 的控制界面：http://localhost:7001/console ；登录weblogic server 域 选择 域结构&#124;服务&#124;JDBC&#124;数据源 打开数据源配置界面: l 锁定并编辑该界面，新建一数据源，设置数据源JNDI名称为oracle（即制作模板时定义的JNDI名字），选择数据库类型及驱动点击“下一步”，如下图： l 事务选项根据自己要求定义，在此默认，点击“下一步” l 配置连接属性：数据库名，URL，用户名及密码，建立weblogic 10 至oracle 10g的物理连接 l 测试刚定义的数据源连接：weblogic 服务器会呈现之前我们配置好的数据源，并提供连接测试，点击“测试配置”，弹出消息“连接测试成功”说明配置正确，点击“下一步” l 部署新建的JDBC数据源：选中需要部署该数据源的服务器，点击“完成” 服务器端的数据源配置好了，激活配置后部署的应用就能通过“oracle”这个桥梁（JNDI名字）与oracle数据库连接 2.3 修改应用WebReport/web-inf 下的web.xml文件: [...]]]></description>
			<content:encoded><![CDATA[<p><strong>一. JNDI连接的使用原理：</strong></p>
<p>1.1 在设计器中先用JDBC连接到数据库，建立数据库连接，然后用SQL或者其他方法创建数据集，使用数据集制作好<a title="报表" href="http://www.finereport.com/">报表</a>，然后把建立的数据库连接从JDBC连接改成JNDI连接，保存模板，并部署至weblogic服务器。<span id="more-1689"></span></p>
<p>1.2 服务器端配置数据源。</p>
<p>1.3 修改应用WEB-INF下的web.xml文件</p>
<p>这样就可以通过WEB浏览器浏览到使用JNDI数据源的<a title="报表" href="http://www.finereport.com/">报表</a>了。</p>
<p><strong>二. 我们以oracle 10g数据源制作的模板jndi.cpt为例来说明</strong></p>
<p>2.1 设计器制作报表：</p>
<p>l 在设计器中用JDBC连接到oracle 10g数据库，使用数据库中的数据表student 制作如下模板jndi.cpt：</p>
<p><a title="http://www.finereport.com/forumimages/w-formwork.jpg" href="http://www.finereport.com/forumimages/w-formwork.jpg"><img src="http://www.finereport.com/forumimages/w-formwork.jpg" alt="" /></a></p>
<p>l 回到定义数据连接面板，将先前定义的数据库连接变为JNDI连接，设置JNDI的名字为oracle</p>
<p><a title="http://www.finereport.com/forumimages/w-link1.jpg" href="http://www.finereport.com/forumimages/w-link1.jpg"><img src="http://www.finereport.com/forumimages/w-link1.jpg" alt="" /></a></p>
<p><a title="http://www.finereport.com/forumimages/w-link2.jpg" href="http://www.finereport.com/forumimages/w-link2.jpg"><img src="http://www.finereport.com/forumimages/w-link2.jpg" alt="" /></a></p>
<p>l 保存模板至weblogic 10的应用目录WebReport/WEB-INF/reportlets下，保存为</p>
<p>jndi.cpt.</p>
<p>此时服务器端的数据源还没有配置，启动服务器并访问jndi<a title="报表" href="http://www.finereport.com/">报表</a>会显示如下类似错误：</p>
<p><a title="http://www.finereport.com/forumimages/w-error.jpg" href="http://www.finereport.com/forumimages/w-error.jpg"><img src="http://www.finereport.com/forumimages/w-error.jpg" alt="" /></a></p>
<p>2.2 服务器端配置数据源</p>
<p>l 打开weblogic 10 的控制界面：<a title="http://localhost:7001/console" href="http://localhost:7001/console">http://localhost:7001/console</a> ；登录weblogic server 域</p>
<p>选择 域结构|服务|JDBC|数据源 打开数据源配置界面:</p>
<p><a title="http://www.finereport.com/forumimages/w-configure.jpg" href="http://www.finereport.com/forumimages/w-configure.jpg"><img src="http://www.finereport.com/forumimages/w-configure.jpg" alt="" /></a></p>
<p>l 锁定并编辑该界面，新建一数据源，设置数据源JNDI名称为oracle（即制作模板时定义的JNDI名字），选择数据库类型及驱动点击“下一步”，如下图：</p>
<p><a title="http://www.finereport.com/forumimages/w-set.jpg" href="http://www.finereport.com/forumimages/w-set.jpg"><img src="http://www.finereport.com/forumimages/w-set.jpg" alt="" /></a></p>
<p>l 事务选项根据自己要求定义，在此默认，点击“下一步”</p>
<p>l 配置连接属性：数据库名，URL，用户名及密码，建立weblogic 10 至oracle 10g的物理连接</p>
<p><a title="http://www.finereport.com/forumimages/w-attribute.jpg" href="http://www.finereport.com/forumimages/w-attribute.jpg"><img src="http://www.finereport.com/forumimages/w-attribute.jpg" alt="" /></a></p>
<p>l 测试刚定义的数据源连接：weblogic 服务器会呈现之前我们配置好的数据源，并提供连接测试，点击“测试配置”，弹出消息“连接测试成功”说明配置正确，点击“下一步”</p>
<p>l 部署新建的JDBC数据源：选中需要部署该数据源的服务器，点击“完成”</p>
<p><a title="http://www.finereport.com/forumimages/w-deploy.jpg" href="http://www.finereport.com/forumimages/w-deploy.jpg"><img src="http://www.finereport.com/forumimages/w-deploy.jpg" alt="" /></a></p>
<p>服务器端的数据源配置好了，激活配置后部署的应用就能通过“oracle”这个桥梁（JNDI名字）与oracle数据库连接</p>
<p>2.3 修改应用WebReport/web-inf 下的web.xml文件:</p>
<p>在……之间增加如下语句：</p>
<p><a title="http://www.finereport.com/forumimages/w-modify.jpg" href="http://www.finereport.com/forumimages/w-modify.jpg"><img src="http://www.finereport.com/forumimages/w-modify.jpg" alt="" /></a></p>
<p>2.4 配置完全，可以访问JNDI数据源报表啦：</p>
<p><a title="http://www.finereport.com/forumimages/w-access.jpg" href="http://www.finereport.com/forumimages/w-access.jpg"><img src="http://www.finereport.com/forumimages/w-access.jpg" alt="" /></a></p>

<p><strong>Web报表主题相关文章：</strong></p>
<ul>
<li><a href="http://reportblog.cn/archives/1700">IIS集成配置</a></li>
<li><a href="http://reportblog.cn/archives/1697">Jboss 服务器 JNDI 配置数据源连接数据库</a></li>
<li><a href="http://reportblog.cn/archives/1694">Oracle 数据库实现自增长列</a></li>
<li><a href="http://reportblog.cn/archives/1685">Sql server 2000 连接测试</a></li>
<li><a href="http://reportblog.cn/archives/1667">程序数据集传参使用解决方案</a></li>
</ul><br />
]]></content:encoded>
			<wfw:commentRss>http://reportblog.cn/archives/1689/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sql server 2000 连接测试</title>
		<link>http://reportblog.cn/archives/1685</link>
		<comments>http://reportblog.cn/archives/1685#comments</comments>
		<pubDate>Mon, 12 Dec 2011 02:09:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Web报表工具-技术园地]]></category>
		<category><![CDATA[Sql server 2000]]></category>
		<category><![CDATA[连接测试]]></category>

		<guid isPermaLink="false">http://reportblog.cn/?p=1685</guid>
		<description><![CDATA[1. Sqlserver 2000 数据库本身规定了其数据库连接URL 的一般格式，如下： jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]] 之间无空格，其中： ·        jdbc:sqlserver://（必需）称为子协议，且为常数。 ·        serverName（可选）是要连接到的服务器的地址。它可以是 DNS 或 IP 地址，也可以是本地计算机地址 localhost 或 127.0.0.1。如果未在连接 URL 中指定服务器名称，则必须在属性集中指定。 ·        instanceName （可选）是 serverName 上要连接到的实例。如果未指定，则会连接到默认实例（master）。 ·        portNumber（可选）是 serverName 上要连接到的端口。默认值为 1433。如果使用默认端口，则无需在 URL 中指定端口及其前面的“:”。 ·        property（可选）是一个或多个选项连接属性。有关详细信息，请参阅设置连接属性。可指定该列表中的任何属性。属性只能用分号（“;”）分隔，且不允许重复。 2.  连接实例写法有： A.    使用用户名和密码连接到本地计算机上的默认数据库： jdbc:sqlserver://localhost;user=MyUserName;password=*****; B.       使用集成身份验证连接到本地计算机上的默认数据库： jdbc:sqlserver://localhost;integratedSecurity=true; C.    连接到远程服务器上的指定数据库： jdbc:sqlserver://localhost;databaseName=AdventureWorks;integratedSecurity=true; D.      连接到远程服务器上的默认端口： jdbc:sqlserver://localhost:1433;databaseName=AdventureWorks;integratedSecurity=true; E.    通过指定自定义应用程序名称进行连接： &#160; jdbc:sqlserver://localhost;databaseName=AdventureWorks;integratedSecurity=true;applicationName=MyApp; 3 .以我们设计器中的URL写法为例详细说明： jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test 其中 (1).  databaseName=test为连接属性，属性值只用“;”分割，我们只用了一个，如有多个属性便可写成: ;databaseName=test;user=MyUserName;password=*****; 因此在test后加不加“;”连接效果一样，即URL写成 jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test 或jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test； 都能正确读取test数据库      (2).Sql server 2000 数据库默认的端口为1433，默认的数据库实master（应该是安装时自带的数据库） 当URL中databaseName 前误加了一“_”空格后，如下： jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test 此时获取URL时自动判断空格时URL结束，即获得的实际URL为： jdbc:microsoft:sqlserver://192.168.100.112:1433; 而此URL连接的为sql server 2000 默认的数据库 master,所以读取的就是数据库master中的表 &#160; &#160; 结论： 在写sql server 2000的数据库URL时，除其本身已有的特殊字符外，要添加其他特殊字符必须进行转义，将这些字符包含在大括号中， JDBC 驱动程序将支持对其进行转义。例如，{;} 将转义分号。 转义的值可以包含特殊字符（特别是“=”、“;”、“[]”和空格），但不能包含大括号。应将必须进行转义且包含大括号的值添加到属性集中。 方案： 将我们所用的数据库改变为默认数据库是一种方法，但一般存在多个可用的数据库，所以除sqlserver 本身规定的URL格式外，在我们的程序中最好进行限制，只使用 jdbc:microsoft:sqlserver://ip:port;databaseName=Databasename 一种写法，且中间不能有空格等 [...]]]></description>
			<content:encoded><![CDATA[<p>1. Sqlserver 2000 数据库本身规定了其数据库连接URL 的一般格式，如下：</p>
<p><tt><strong>jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]]</strong></tt></p>
<p>之间无空格，其中：</p>
<p>·        <strong>jdbc:sqlserver://</strong>（必需）称为子协议，且为常数。</p>
<p>·        <strong>serverName</strong>（可选）是要连接到的服务器的地址。它可以是 DNS 或 IP 地址，也可以是本地计算机地址 localhost 或 127.0.0.1。如果未在连接 URL 中指定服务器名称，则必须在属性集中指定。<span id="more-1685"></span></p>
<p>·        <strong>instanceName</strong> （可选）是 serverName 上要连接到的实例。如果未指定，则会连接到默认实例（master）。</p>
<p>·        <strong>portNumber</strong>（可选）是 serverName 上要连接到的端口。默认值为 1433。如果使用默认端口，则无需在 URL 中指定端口及其前面的“:”。</p>
<p>·        <strong>property</strong>（可选）是一个或多个选项连接属性。有关详细信息，请参阅<a href="http://msdn.microsoft.com/zh-cn/library/ms378988(SQL.90).aspx">设置连接属性</a>。可指定该列表中的任何属性。属性只能用分号（“;”）分隔，且不允许重复。</p>
<p>2.  连接实例写法有：</p>
<p>A.    使用用户名和密码连接到本地计算机上的默认数据库：</p>
<p><tt>jdbc:sqlserver://localhost;user=MyUserName;password=*****;</tt></p>
<p>B.       使用集成身份验证连接到本地计算机上的默认数据库：</p>
<p><tt>jdbc:sqlserver://localhost;integratedSecurity=true;</tt></p>
<p>C.    连接到远程服务器上的指定数据库：</p>
<p><tt>jdbc:sqlserver://localhost;databaseName=AdventureWorks;integratedSecurity=true;</tt></p>
<p>D.      连接到远程服务器上的默认端口：</p>
<p><tt>jdbc:sqlserver://localhost:1433;databaseName=AdventureWorks;integratedSecurity=true;</tt></p>
<p>E.    通过指定自定义应用程序名称进行连接：</p>
<p>&nbsp;</p>
<p><tt>jdbc:sqlserver://localhost;databaseName=AdventureWorks;integratedSecurity=true;applicationName=MyApp;</tt></p>
<p>3 .以我们设计器中的URL写法为例详细说明：</p>
<p><strong>jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test</strong></p>
<p>其中</p>
<p><strong>(1). </strong><strong> </strong>databaseName=test为连接属性，属性值只用“;”分割，我们只用了一个，如有多个属性便可写成:</p>
<p>;databaseName=test<tt>;user=MyUserName;password=*****;</tt></p>
<p><tt>因此在test后加不加“;”连接效果一样，即URL写成</tt></p>
<p>jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test</p>
<p>或jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test；</p>
<p>都能正确读取test数据库</p>
<p><strong>     (2).</strong>Sql server 2000 数据库默认的端口为1433，默认的数据库实master（应该是安装时自带的数据库）</p>
<p>当URL中databaseName 前误加了一“_”空格后，如下：</p>
<p><strong>jdbc:microsoft:sqlserver://192.168.100.112:1433;databaseName=test</strong></p>
<p>此时获取URL时自动判断空格时URL结束，即获得的实际URL为：</p>
<p><strong>jdbc:microsoft:sqlserver://192.168.100.112:1433;</strong></p>
<p>而此URL连接的为sql server 2000 默认的数据库 master,所以读取的就是数据库master中的表</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>结论：</p>
<p>在写sql server 2000的数据库URL时，除其本身已有的特殊字符外，要添加其他特殊字符必须进行转义，将这些字符包含在大括号中， JDBC 驱动程序将支持对其进行转义。例如，{;} 将转义分号。</p>
<p>转义的值可以包含特殊字符（特别是“=”、“;”、“[]”和空格），但不能包含大括号。应将必须进行转义且包含大括号的值添加到属性集中。</p>
<p>方案：</p>
<p>将我们所用的数据库改变为默认数据库是一种方法，但一般存在多个可用的数据库，所以除sqlserver 本身规定的URL格式外，在我们的程序中最好进行限制，只使用</p>
<p>jdbc:microsoft:sqlserver://ip:port;databaseName=Databasename</p>
<p>一种写法，且中间不能有空格等</p>

<p><strong>Web报表主题相关文章：</strong></p>
<ul>
<li><a href="http://reportblog.cn/archives/1700">IIS集成配置</a></li>
<li><a href="http://reportblog.cn/archives/1697">Jboss 服务器 JNDI 配置数据源连接数据库</a></li>
<li><a href="http://reportblog.cn/archives/1694">Oracle 数据库实现自增长列</a></li>
<li><a href="http://reportblog.cn/archives/1689">Weblogic 10.1 配置JNDI 数据源</a></li>
<li><a href="http://reportblog.cn/archives/1667">程序数据集传参使用解决方案</a></li>
</ul><br />
]]></content:encoded>
			<wfw:commentRss>http://reportblog.cn/archives/1685/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>冬日送大礼—Finereport爱好者论坛征文竞赛第一期！</title>
		<link>http://reportblog.cn/archives/1676</link>
		<comments>http://reportblog.cn/archives/1676#comments</comments>
		<pubDate>Fri, 09 Dec 2011 02:50:59 +0000</pubDate>
		<dc:creator>FineReport——web报表技术领跑者</dc:creator>
				<category><![CDATA[Web报表工具-应用实例]]></category>
		<category><![CDATA[Finereport爱好者论坛]]></category>
		<category><![CDATA[论坛征文竞赛]]></category>

		<guid isPermaLink="false">http://reportblog.cn/?p=1676</guid>
		<description><![CDATA[各位FineReport的Fans们，感谢各位对web报表FineReport报表和论坛的支持与青睐！FineReport爱好者论坛特举办月赛征文活动，拟用丰厚的礼品回馈各位，为这个严冬送去融融暖意。 活动期间，提交有关“FineReport报表的项目案例”即有机会赢取我们为您精心准备的礼品，商业用户和非商业用户均可参加，且一人可提交多份作品，可重复得奖，欢迎各位积极投稿！ 活动地址：http://bbs.finereport.com/thread-611-1-1.html 一 奖品设置 1. 一等奖：1名，价值RMB 2000元的奖品 2. 二等奖：1名，价值RMB 1000元的奖品 3. 三等奖：2名，价值RMB 500元的奖品 4. 四等奖：3名，价值RMB 200元的奖品 5. 五等奖：5名，价值RMB 100元的奖品 （注：投稿的优秀作品较多时，可能会添加奖项） 二 竞标条件 （注：活动期间积分规则调整，方便参赛者在短期内更快达到竞标条件） （温馨提示：除此活动之外，年底还有积分金币兑换环节，请各位保持论坛活跃度，积分金币越多，兑换的奖品越好哦~） 1. 一等奖：“FR高手”方可竞争一等奖（即论坛积分≥500） 2. 二等奖：“FR老手”方可竞争二等奖（即论坛积分≥200） 3. 三等奖：“FR熟手”方可竞争三等奖（即论坛积分≥100） 4. 四等奖：论坛积分≥50方可竞争四等奖 5. 五等奖：论坛积分≥50方可竞争五等奖 点击查看自己的积分和积分规则 三 作品要求 1. 请按照作品示例的格式行文，作品示例： http://www.finereport.com/success/cases/finance-system.html 2. 作品所用项目截图要求美观，能直观反映出您所从事行业的特点和对管理的帮助 3. 提交作品的格式为word或者pdf 4. 作品中若除文字和图片外还需其他文件补充，可以以压缩包形式提供相关附件 四 参赛方式 1. 请先点击此贴中“我要参加”按钮，报名参赛 2. 作品请发表在竞赛活动版块，主题分类选择“第一期作品”，帖子内容先简单介绍下您的作品，作品简介包括以下几项： A． 项目背景 [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://bbs.finereport.com/data/attachment/forum/201112/02/1609437m0ww5f07022mrk2.jpg"><img src="http://bbs.finereport.com/data/attachment/forum/201112/02/1609437m0ww5f07022mrk2.jpg" alt="" width="307" height="180" /></a><br />
各位FineReport的Fans们，感谢各位对<a title="web报表" href="http://www.finereport.com/knowledge/professional/webreport.html">web报表</a>FineReport报表和论坛的支持与青睐！<a title="Finereport爱好者论坛" href="http://bbs.finereport.com/forum.php">FineReport爱好者论坛</a>特举办月赛征文活动，拟用丰厚的礼品回馈各位，为这个严冬送去融融暖意。</p>
<p>活动期间，提交有关<span style="color: #ff0000"><span style="font-family: 宋体">“</span>FineReport<span style="font-family: 宋体">报表的项目案例”</span></span>即有机会赢取我们为您精心准备的礼品，商业用户和非商业用户均可参加，且一人可提交多份作品，可重复得奖，欢迎各位积极投稿！</p>
<p>活动地址：http://bbs.finereport.com/thread-611-1-1.html<span id="more-1676"></span></p>
<p>一 奖品设置</p>
<p>1. 一等奖：1名，价值RMB 2000元的奖品</p>
<p>2. 二等奖：1名，价值RMB 1000元的奖品</p>
<p>3. 三等奖：2名，价值RMB 500元的奖品</p>
<p>4. 四等奖：3名，价值RMB 200元的奖品</p>
<p>5. 五等奖：5名，价值RMB 100元的奖品</p>
<p><span style="color: #ff0000">（注：投稿的优秀作品较多时，可能会添加奖项）</span></p>
<p>二 竞标条件</p>
<p><span style="color: #ff0000">（注：活动期间积分规则调整，方便参赛者在短期内更快达到竞标条件）</span></p>
<p><span style="color: #ff0000">（温馨提示：除此活动之外，年底还有积分金币兑换环节，请各位保持论坛活跃度，积分金币越多，兑换的奖品越好哦~）</span></p>
<p>1. 一等奖：“FR高手”方可竞争一等奖（即论坛积分≥500）</p>
<p>2. 二等奖：“FR老手”方可竞争二等奖（即论坛积分≥200）</p>
<p>3. 三等奖：“FR熟手”方可竞争三等奖（即论坛积分≥100）</p>
<p>4. 四等奖：论坛积分≥50方可竞争四等奖</p>
<p>5. 五等奖：论坛积分≥50方可竞争五等奖</p>
<p><a title="点击查看自己的积分和积分规则" href="http://bbs.finereport.com/home.php?mod=spacecp&amp;ac=credit&amp;op=base">点击查看自己的积分和积分规则</a></p>
<p>三 作品要求</p>
<p>1. 请按照作品示例的格式行文，<a title="作品示例" href="http://www.finereport.com/success/cases/finance-system.html">作品示例</a>：</p>
<p>http://www.finereport.com/success/cases/finance-system.html</p>
<p>2. 作品所用项目截图要求美观，能直观反映出您所从事行业的特点和对管理的帮助</p>
<p>3. 提交作品的格式为word或者pdf</p>
<p>4. 作品中若除文字和图片外还需其他文件补充，可以以压缩包形式提供相关附件</p>
<p>四 参赛方式</p>
<p>1. 请先点击此贴中“我要参加”按钮，报名参赛</p>
<p>2. 作品请发表在竞赛活动版块，主题分类选择“第一期作品”，帖子内容先简单介绍下您的作品，作品简介包括以下几项：</p>
<p>A． 项目背景</p>
<p>B． 项目所用工具</p>
<p>C． 项目截图（请在作品中精选一张效果图贴上）</p>
<p>3. 完整作品请以附件形式添加在您的主题帖中</p>
<p>4. 作品发表完后，请将您作品贴的链接以回帖的形式复制粘贴进此活动贴后<span style="color: #ff0000">（注：请不要忘了这一步，O(∩_∩)O谢谢~）</span></p>
<p>五 问题与疑问</p>
<p>如有任何问题和疑问，您可通过以下两种联系方式联系我们</p>
<p>1. 直接在本帖后回复留言</p>
<p>2．拨打活动专线025-66772199</p>
<p>FineReport爱好者论坛保留对本活动的最终解释权。</p>

<p><strong>Web报表主题相关文章：</strong></p>
<ul>
<li><a href="http://reportblog.cn/archives/1728">揭榜咯~Finereport爱好者论坛征文竞赛第一期获奖名单！！！</a></li>
<li><a href="http://reportblog.cn/archives/1433">帆软FineReport报表满意度调研</a></li>
<li><a href="http://reportblog.cn/archives/1408">FineReport爱好者论坛迎新有奖活动开始啦！！！</a></li>
<li><a href="http://reportblog.cn/archives/1378">报表工具FineReport最新版本V6.5.5金秋华丽登场</a></li>
<li><a href="http://reportblog.cn/archives/1376">帆软—finereport有奖产品调研</a></li>
</ul><br />
]]></content:encoded>
			<wfw:commentRss>http://reportblog.cn/archives/1676/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>程序数据集传参使用解决方案</title>
		<link>http://reportblog.cn/archives/1667</link>
		<comments>http://reportblog.cn/archives/1667#comments</comments>
		<pubDate>Thu, 01 Dec 2011 03:02:20 +0000</pubDate>
		<dc:creator>FineReport——web报表技术领跑者</dc:creator>
				<category><![CDATA[Web报表工具-技术园地]]></category>
		<category><![CDATA[FineReport报表工具]]></category>
		<category><![CDATA[web报表工具]]></category>
		<category><![CDATA[程序数据集]]></category>

		<guid isPermaLink="false">http://reportblog.cn/?p=1667</guid>
		<description><![CDATA[通过TableData接口可以读取任何形式的数据源，web报表Finereport报表的数据来源可以是数据库数据或是文本数据，并且还可以是其它任何类型的数据，因为这些所有的数据来源都实现了TableData接口，所以用户只要实现了TableData接口，也就可以用自定义类型的数据源了。对于传参，我们可以在程序数据集中写入传入的参数，此方案传入的参数为tableName 和 columnNames 两项；即传入 数据库表名 以及 所需要的列名 取出所需要的值；这里连的数据库为web报表工具FineReport的内置数据库，适用时可输入表名：stscore 列名 name；sex。具体步骤如下： 1. 定义程序数据源 1.1   TableData接口简介 TableData接口所需实现的方法 只要实现了TableData接口，web报表工具FineReport报表引擎就能够读取数据源作为报表数据源使用。TableData接口主要有5个方法，如下： 1). public int getColumnCount();//获取TableData的总列数 2). public String getColumnName(int columnIndex);//获取TableData中第columnIndex列的列名。 3). public boolean hasRow(int rowIndex);  //判断是否存在第rowIndex行，这主要是用于处理超大数据时，完全遍历所有数据获取总行数相当困难，用这个方法来判断第rowIndex行是否存在，存在则可读取。 4). public int getRowCount();//获取TableData的总行数。 5).public Object getValueAt(int rowIndex, int columnIndex);//获取TableData中第columnIndex列，第rowIndex行的数据。 1.2   以PramTableDataDemo为例描述如何实现TableData接口 因为AbstractTableData已经实现了默认的hasRow(int rowIndex)方法，所以可以从AbstractTableData扩展，定义ParamTableDataDemo，代码如下： private String splitMark =”;”; // 自定义间隔符 暂定为‘；’ 即输入列名参数时需像如此 name；sex；age； private String[] columnNames =null; // 列字段名数组 保存在数据集窗口下一开始显示的数据列名称 private int columnNum = 10; // 自定义需要列出的列数量 即在数据集窗口列出的数据集下的字段数量 &#160; String[] colNames = null; // 保存取到的字段 即输入的参数字段，假如是name；sex 参数字段即为name 和 sex两项 private ArrayList valueList = null; // 保存查询得到的值列 1.3   构造函数 public ParamTableDataDemo() { // 定义需要的参数 tablename [...]]]></description>
			<content:encoded><![CDATA[<p>通过TableData接口可以读取任何形式的数据源，<a title="web报表" href="http://www.finereport.com/knowledge/professional/webreport.html">web报表</a>Finereport<a title="报表" href="http://www.finereport.com/">报表</a>的数据来源可以是数据库数据或是文本数据，并且还可以是其它任何类型的数据，因为这些所有的数据来源都实现了TableData接口，所以用户只要实现了TableData接口，也就可以用自定义类型的数据源了。对于传参，我们可以在程序数据集中写入传入的参数，此方案传入的参数为tableName 和 columnNames 两项；即传入 数据库表名 以及 所需要的列名 取出所需要的值；这里连的数据库为<a title="web报表工具" href="http://www.finereport.com/web-reportingtool">web报表工具</a>FineReport的内置数据库，适用时可输入表名：stscore 列名 name；sex。具体步骤如下：<span id="more-1667"></span></p>
<p><strong>1.</strong><strong> </strong><strong>定义程序数据源</strong><a name="1" href="http://hi.baidu.com/%E6%88%91%E5%8F%AA%E7%88%B1k/blog/item/c61a67086dc40d23b1351dbc.html?timeStamp=1322706067712"></a><strong></strong></p>
<p><strong>1.1   </strong><strong>TableData</strong><strong>接口简介</strong></p>
<p>TableData接口所需实现的方法</p>
<p>只要实现了TableData接口，<a title="web报表工具" href="http://www.finereport.com/web-reportingtool">web报表工具</a>FineReport<a title="报表" href="http://www.finereport.com">报表</a>引擎就能够读取数据源作为报表数据源使用。TableData接口主要有5个方法，如下：</p>
<p>1).<strong> public</strong> <strong>int</strong> getColumnCount();//获取TableData的总列数</p>
<p>2). <strong>public</strong> String getColumnName(<strong>int</strong> columnIndex);//获取TableData中第columnIndex列的列名。</p>
<p>3).<strong> public</strong> <strong>boolean</strong> hasRow(<strong>int</strong> rowIndex);  //判断是否存在第rowIndex行，这主要是用于处理超大数据时，完全遍历所有数据获取总行数相当困难，用这个方法来判断第rowIndex行是否存在，存在则可读取。</p>
<p>4). <strong>public</strong> <strong>int</strong> getRowCount();//获取TableData的总行数。</p>
<p>5).<strong>public</strong> Object getValueAt(<strong>int</strong> rowIndex, <strong>int</strong> columnIndex);//获取TableData中第columnIndex列，第rowIndex行的数据。</p>
<p><strong>1.2   </strong><strong>以PramTableDataDemo为例描述如何实现TableData接口</strong><strong></strong></p>
<p>因为AbstractTableData已经实现了默认的hasRow(int rowIndex)方法，所以可以从AbstractTableData扩展，定义ParamTableDataDemo，代码如下：</p>
<p>private String splitMark =”;”;</p>
<p>// 自定义间隔符 暂定为‘；’ 即输入列名参数时需像如此 name；sex；age；</p>
<p>private String[] columnNames =null;</p>
<p>// 列字段名数组 保存在数据集窗口下一开始显示的数据列名称</p>
<p>private int columnNum = 10;</p>
<p>// 自定义需要列出的列数量 即在数据集窗口列出的数据集下的字段数量</p>
<p>&nbsp;</p>
<p>String[] colNames = null;</p>
<p>// 保存取到的字段 即输入的参数字段，假如是name；sex 参数字段即为name 和 sex两项</p>
<p>private ArrayList valueList = null;</p>
<p>// 保存查询得到的值列</p>
<p><strong>1.3   </strong><strong>构造函数</strong></p>
<p>public ParamTableDataDemo() {</p>
<p>// 定义需要的参数 tablename columnNames</p>
<p>this.parameters = newParameter[]</p>
<p>{</p>
<p>new Parameter(“tableName”),new Parameter(“columnNames”)</p>
<p>};</p>
<p>// 初始化下列名，暂定为columnName#0，columnName#1&#8230;&#8230;显示在数据集窗体中的</p>
<p>columnNames = new String[columnNum];</p>
<p>for (int i = 0; i &lt; columnNum; i++)</p>
<p>{</p>
<p>columnNames[i]= “columnNames#” + String.valueOf(i);</p>
<p>}</p>
<p>}</p>
<p><strong>1.4   </strong><strong>匹配取值</strong></p>
<p>for (int i = 0; i &lt; parameters.length; i++)</p>
<p>{</p>
<p>If(parameters[i].getName().equals(“tableName”)) // 做匹配</p>
<p>tableName = parameters[i].getValue().toString();</p>
<p>else</p>
<p>colNames =this.getParameters()[i].getValue().toString().split(</p>
<p>splitMark);</p>
<p>}</p>
<p><strong>1.5   </strong><strong>构造SQL语句</strong></p>
<p>String sql = “select “;// 传入参数中输入的字段</p>
<p>for (int i = 0; i &lt; colNames.length; i++) {</p>
<p>colNames[i].trim();</p>
<p>if (i == colNames.length &#8211; 1)</p>
<p>sql += colNames[i];</p>
<p>else {sql += colNames[i] +”,”;} }</p>
<p>sql += ” from ” +tableName + “;”;</p>
<p><strong>1.6   </strong><strong>获得数据库连接</strong></p>
<p>public Connection getConnection() {</p>
<p>String driverName =”sun.jdbc.odbc.JdbcOdbcDriver”;// 加载驱动</p>
<p>String url = “jdbc:odbc:Driver={MicrosoftAccess Driver (*.mdb)};DBQ=D:\\ProgramFiles\\finereport\\FineReport6.5\\WebReport\\                              WEB-INF\\resources\\data\\FRDemo.mdb”;</p>
<p>String username = “”;</p>
<p>String password = “”;</p>
<p>Connection con = null;</p>
<p>try {</p>
<p>Class.forName(driverName);</p>
<p>con= DriverManager.getConnection(url, username, password);</p>
<p>} catch(Exception e) {</p>
<p>e.printStackTrace();</p>
<p>returnnull;</p>
<p>}</p>
<p>returncon;</p>
<p>}</p>
<p>具体实现代码如附件所示</p>
<p>编译ParamTableDataDemo.java，将生成的ParamTableDataDemo.class文件放到<a title="报表" href="http://www.finereport.com">报表</a>服务的%\FineReport6.5\WebReport\WEB-INF\classes目录；注意：如该例子所示，其包名为com.demo,所以其类所在路径为com\demo<br />
<strong>2.</strong><strong> </strong><strong>配置程序数据集</strong><strong></strong></p>
<ul>
<li>步骤一：选择“服务器|服务器数据集”，在弹出的窗口左上角点击，选择添加程序，可以把默认名字更改为恰当的名字，如下图所示：<br />
<a title="http://www.finereport.com/forumimages/c-step2.jpg" href="http://www.finereport.com/forumimages/c-step2.jpg"><img src="http://www.finereport.com/forumimages/c-step1.jpg" alt="" /></a></li>
<li>步骤二：点击选择您定义好的类文件，此处选择上面定义好的ParamTableDataDemo.class，点击下方的确定即添加完成。如下图所示：<br />
<a title="http://www.finereport.com/forumimages/c-step2.jpg" href="http://www.finereport.com/forumimages/c-step2.jpg"><img src="http://www.finereport.com/forumimages/c-step2.jpg" alt="" /></a><br />
添加完成后的程序数据集并会在数据面板中出现，如下图所示：<br />
<a title="http://www.finereport.com/forumimages/c-step2-1.jpg" href="http://www.finereport.com/forumimages/c-step2-1.jpg"><img src="http://www.finereport.com/forumimages/c-step2-1.jpg" alt="" /></a><br />
在参数对话框中输入需要传递的参数tableName,columnNames如图所示：<br />
<a title="http://www.finereport.com/forumimages/c-step2-input.jpg" href="http://www.finereport.com/forumimages/c-step2-input.jpg"><img src="http://www.finereport.com/forumimages/c-step2-input.jpg" alt="" /></a><br />
点击确定之后出现如下图面：<br />
<a title="http://www.finereport.com/forumimages/c-step2-3.jpg" href="http://www.finereport.com/forumimages/c-step2-3.jpg"><img src="http://www.finereport.com/forumimages/c-step2-3.jpg" alt="" /></a><strong>          </strong>图片中的columnName#是在程序数据集中自定义的<strong>3. </strong><strong>使用程序数据集</strong><strong>       </strong><strong> </strong>因为columnNames输入的是两个数据列名，所以columnNames#0,columnNames#1字段中存入了相应的name,sex字段数据3.1 将columnNames#0,columnNames#1拖到B2,C2单元格中，表样设计如图所示<br />
<a title="http://www.finereport.com/forumimages/c-table%20design.jpg" href="http://www.finereport.com/forumimages/c-table%20design.jpg"><img src="http://www.finereport.com/forumimages/c-table%20design.jpg" alt="" /></a></p>
<p>点击设计器预览：再次出现参数窗口，输入相应的参数：<br />
<a title="http://www.finereport.com/forumimages/c-input.jpg" href="http://www.finereport.com/forumimages/c-input.jpg"><img src="http://www.finereport.com/forumimages/c-input.jpg" alt="" /></a><br />
再次输入相应的参数，点击确定，预览效果图如下：<br />
<a title="http://www.finereport.com/forumimages/c-preview.jpg" href="http://www.finereport.com/forumimages/c-preview.jpg"><img src="http://www.finereport.com/forumimages/c-preview.jpg" alt="" /></a></p>
<p>注意：程序数据集中的代码在配置时需要改动相应的url，如图所示：<br />
<a title="http://www.finereport.com/forumimages/c-notice1.jpg" href="http://www.finereport.com/forumimages/c-notice1.jpg"><img src="http://www.finereport.com/forumimages/c-notice1.jpg" alt="" /></a><br />
此驱动和Url对应服务器|自定义数据连接 中的driverName 和 URL<br />
<a title="http://www.finereport.com/forumimages/c-notice2.jpg" href="http://www.finereport.com/forumimages/c-notice2.jpg"><img src="http://www.finereport.com/forumimages/c-notice2.jpg" alt="" /></a></li>
</ul>

<p><strong>Web报表主题相关文章：</strong></p>
<ul>
<li><a href="http://reportblog.cn/archives/1700">IIS集成配置</a></li>
<li><a href="http://reportblog.cn/archives/1697">Jboss 服务器 JNDI 配置数据源连接数据库</a></li>
<li><a href="http://reportblog.cn/archives/1694">Oracle 数据库实现自增长列</a></li>
<li><a href="http://reportblog.cn/archives/1689">Weblogic 10.1 配置JNDI 数据源</a></li>
<li><a href="http://reportblog.cn/archives/1685">Sql server 2000 连接测试</a></li>
</ul><br />
]]></content:encoded>
			<wfw:commentRss>http://reportblog.cn/archives/1667/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>数据库表为纵表时转变为横表的设计方法</title>
		<link>http://reportblog.cn/archives/1477</link>
		<comments>http://reportblog.cn/archives/1477#comments</comments>
		<pubDate>Thu, 24 Nov 2011 01:39:48 +0000</pubDate>
		<dc:creator>FineReport——web报表技术领跑者</dc:creator>
				<category><![CDATA[Web报表工具-设计详述]]></category>
		<category><![CDATA[finereport报表]]></category>
		<category><![CDATA[数据库表]]></category>
		<category><![CDATA[纵表转变为横表]]></category>

		<guid isPermaLink="false">http://reportblog.cn/?p=1477</guid>
		<description><![CDATA[一． 横表&#38;纵表： 数据库表按照存储的数据结构不同区分为横表与纵表，通过如下数据的存储我们分别对横表与纵表进行简单介绍： 横表： 纵表： 由图1，2可以看出，若我们要将每种产品的信息罗列在报表中展示，使用横表将会非常方便，直接将各字段拖进设计器对应标题的单元格即可，字段间不需要考虑任何逻辑关（默认有扩展关系）如下图： 预览如下： 二． Web报表工具FineReport实现纵表转为横表显示： 使用纵表时，想达到如图4的效果，也很简单： 其中： 单元格 列名 设置属性 A2： 字段编号 默认 B1： 名称 设置为从左向右扩展，其余默认 B2： 属性 不扩展，其余默认 只需要设置名称字段为横向扩展，逻辑关系使用默认的，在展示数据时，就会对应选择出字段编号为A2，名称为B1的属性值，如下图所示： 便达到了数据库表为纵表时转变为横表显示。 三． 润乾实现纵表转为横表显示： 润乾报表在该问题有两种解决方案： 一． 参考润乾官网&#8211;知识库中&#8212;数据库为纵表时转为横表展现的设计方法： 定义了两个数据集ds1,ds2，都取用数据库中的那个纵表： B2：=ds1.dselect(字段编号) //相当于select distinct ……，取所有不重复的”字段编号”值，或者用=ds1.group(字段编号)用字段编号分组 C1：=ds1.dselect(名称) //取所有不重复的”名称”值 C2：=ds2.select(属性,,ds2.字段编号==B2&#38;&#38;ds2.名称==C1) //用横轴”字段编号”，纵轴”名称”作为筛选条件，把唯一的”属性”值取出来 。 结果预览如下： 四． 总结： 由上可以看出，Web报表工具FineReport与润乾都可以使用简单的交叉报表来实现数据库表为纵表时转变为横表来显示：  操作都很简单，步骤也基本类似  润乾使用数据表字段时默认为列表型，而Web报表工具FineReport默认为分组，后者更贴近用户的需求，大部分用户制作的是复杂的自由报表，所以通常需要合并相同项 Web报表主题相关文章： Web报表工具树形展开的折叠报表的制作 使用FineReport纯JAVA（web平台）报表软件事件编辑说明之七 使用FineReport纯JAVA（web报表）事件编辑说明之六 使用FineReport纯JAVA（web报表）事件编辑说明之五 使用FineReport纯JAVA（web报表）事件编辑说明之四]]></description>
			<content:encoded><![CDATA[<p>一． 横表&amp;纵表：<br />
数据库表按照存储的数据结构不同区分为横表与纵表，通过如下数据的存储我们分别对横表与纵表进行简单介绍：<br />
横表：</p>
<p><a href="http://www.finereport.com/forumimages/zjkbwzbszbwhb1.jpg"><img src="http://www.finereport.com/forumimages/zjkbwzbszbwhb1.jpg" alt="http://www.finereport.com/forumimages/zjkbwzbszbwhb1.jpg" /></a><span id="more-1477"></span><br />
纵表：</p>
<p><a href="http://www.finereport.com/forumimages/zjkbwzbszbwhb2.jpg"><img src="http://www.finereport.com/forumimages/zjkbwzbszbwhb2.jpg" alt="http://www.finereport.com/forumimages/zjkbwzbszbwhb2.jpg" /></a><br />
由图1，2可以看出，若我们要将每种产品的信息罗列在<a href="http://www.finereport.com/" title="报表">报表</a>中展示，使用横表将会非常方便，直接将各字段拖进设计器对应标题的单元格即可，字段间不需要考虑任何逻辑关（默认有扩展关系）如下图：</p>
<p><a href="http://www.finereport.com/forumimages/zjkbwzbszbwhb3.jpg"><img src="http://www.finereport.com/forumimages/zjkbwzbszbwhb3.jpg" alt="http://www.finereport.com/forumimages/zjkbwzbszbwhb3.jpg" /></a><br />
预览如下：</p>
<p><a href="http://www.finereport.com/forumimages/zjkbwzbszbwhb4.jpg"><img src="http://www.finereport.com/forumimages/zjkbwzbszbwhb4.jpg" alt="http://www.finereport.com/forumimages/zjkbwzbszbwhb4.jpg" /></a><br />
二． Web报表工具FineReport实现纵表转为横表显示：<br />
使用纵表时，想达到如图4的效果，也很简单：</p>
<p><a href="http://www.finereport.com/forumimages/zjkbwzbszbwhb5.jpg"><img src="http://www.finereport.com/forumimages/zjkbwzbszbwhb5.jpg" alt="http://www.finereport.com/forumimages/zjkbwzbszbwhb5.jpg" /></a><br />
其中：<br />
单元格 列名 设置属性<br />
A2： 字段编号 默认<br />
B1： 名称 设置为从左向右扩展，其余默认<br />
B2： 属性 不扩展，其余默认<br />
只需要设置名称字段为横向扩展，逻辑关系使用默认的，在展示数据时，就会对应选择出字段编号为A2，名称为B1的属性值，如下图所示：</p>
<p><a href="http://www.finereport.com/forumimages/zjkbwzbszbwhb6.jpg"><img src="http://www.finereport.com/forumimages/zjkbwzbszbwhb6.jpg" alt="http://www.finereport.com/forumimages/zjkbwzbszbwhb6.jpg" /></a><br />
便达到了数据库表为纵表时转变为横表显示。</p>
<p>三． 润乾实现纵表转为横表显示：<br />
<a href="http://reportblog.cn/archives/271" title="润乾报表">润乾报表</a>在该问题有两种解决方案：<br />
一． 参考润乾官网&#8211;知识库中&#8212;数据库为纵表时转为横表展现的设计方法：<br />
定义了两个数据集ds1,ds2，都取用数据库中的那个纵表：</p>
<p><a href="http://www.finereport.com/forumimages/zjkbwzbszbwhb7.jpg"><img src="http://www.finereport.com/forumimages/zjkbwzbszbwhb7.jpg" alt="http://www.finereport.com/forumimages/zjkbwzbszbwhb7.jpg" /></a><br />
B2：=ds1.dselect(字段编号) //相当于select distinct ……，取所有不重复的”字段编号”值，或者用=ds1.group(字段编号)用字段编号分组<br />
C1：=ds1.dselect(名称) //取所有不重复的”名称”值<br />
C2：=ds2.select(属性,,ds2.字段编号==B2&amp;&amp;ds2.名称==C1) //用横轴”字段编号”，纵轴”名称”作为筛选条件，把唯一的”属性”值取出来 。<br />
结果预览如下：</p>
<p><img src="http://www.finereport.com/forumimages/zjkbwzbszbwhb8.jpg" alt="http://www.finereport.com/forumimages/zjkbwzbszbwhb8.jpg" /><a href="http://www.finereport.com/forumimages/zjkbwzbszbwhb8.jpg"></a></p>
<p>四． 总结：<br />
由上可以看出，<a href="http://www.finereport.com/web-reportingtool" title="web报表工具">Web报表工具</a>FineReport与润乾都可以使用简单的<a href="http://www.finereport.com/knowledge/professional/crossreport.html" title="交叉报表">交叉报表</a>来实现数据库表为纵表时转变为横表来显示：<br />
 操作都很简单，步骤也基本类似<br />
 润乾使用数据表字段时默认为列表型，而<a href="http://www.finereport.com/web-reportingtool" title="web报表工具">Web报表工具</a>FineReport默认为分组，后者更贴近用户的需求，大部分用户制作的是复杂的<a href="http://www.finereport.com/web-reportingtool" title="自由报表">自由报表</a>，所以通常需要合并相同项</p>

<p><strong>Web报表主题相关文章：</strong></p>
<ul>
<li><a href="http://reportblog.cn/archives/1309">Web报表工具树形展开的折叠报表的制作</a></li>
<li><a href="http://reportblog.cn/archives/917">使用FineReport纯JAVA（web平台）报表软件事件编辑说明之七</a></li>
<li><a href="http://reportblog.cn/archives/908">使用FineReport纯JAVA（web报表）事件编辑说明之六</a></li>
<li><a href="http://reportblog.cn/archives/906">使用FineReport纯JAVA（web报表）事件编辑说明之五</a></li>
<li><a href="http://reportblog.cn/archives/904">使用FineReport纯JAVA（web报表）事件编辑说明之四</a></li>
</ul><br />
]]></content:encoded>
			<wfw:commentRss>http://reportblog.cn/archives/1477/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Web报表FineReport通过权限控制数据访问方案</title>
		<link>http://reportblog.cn/archives/1472</link>
		<comments>http://reportblog.cn/archives/1472#comments</comments>
		<pubDate>Mon, 21 Nov 2011 02:26:40 +0000</pubDate>
		<dc:creator>FineReport——web报表技术领跑者</dc:creator>
				<category><![CDATA[Web报表工具-技术园地]]></category>
		<category><![CDATA[finereport报表]]></category>
		<category><![CDATA[Web报表]]></category>
		<category><![CDATA[控制数据访问]]></category>

		<guid isPermaLink="false">http://reportblog.cn/?p=1472</guid>
		<description><![CDATA[问题：实际应用环境中，不同角色的人可能对数据具有不同的访问权限，通过直接在SQL语句中筛选出需要的数据制作模板可以解决该需求，但对于角色较多的情况，就需要制作很多张样式相同只是数据集不同的报表，不利于后期的维护并且加大了报表制作的工作量。 方案：针对该问题，在Web报表FineReport中，可以利用SQL参数配合参数处理器再结合权限以完成该需求。使用该方案只需要制作一张表样，利用SQL中的参数进行动态过滤达到该目的。下面具体描述该方案的实施过程。 第一步：数据准备 这里使用的是DEMO数据，主要为了演示该方案的操作，具体使用的时候需要根据具体的数据情况进行调整： 表：datas ID DATA ROLE 1 100 0 2 200 0 3 300 0 4 400 1 5 500 1 6 600 2 7 700 2 8 800 3 ID：编号 DATA：数据 ROLE：可查看角色编码 表：roles ID ROLENANME ROLE 1 总裁 0 2 总经理 1 3 部门经理 2 4 销售人员 3 第二步：制作模板 2.1 新建一张模板，报表数据集中新建一个“数据库查询数据集”，名称为：datas，SQL语句写成“select * [...]]]></description>
			<content:encoded><![CDATA[<p><strong>问题</strong>：实际应用环境中，不同角色的人可能对数据具有不同的访问权限，通过直接在SQL语句中筛选出需要的数据制作模板可以解决该需求，但对于角色较多的情况，就需要制作很多张样式相同只是数据集不同的<a title="报表" href="http://www.finereport.com/">报表</a>，不利于后期的维护并且加大了<a title="报表制作" href="http://www.finereport.com/knowledge/professional/webreport.html">报表制作</a>的工作量。<br />
<strong>方案</strong>：针对该问题，在<a title="web报表" href="http://www.finereport.com/knowledge/professional/webreport.html">Web报表</a>FineReport中，可以利用SQL参数配合参数处理器再结合权限以完成该需求。使用该方案只需要制作一张表样，利用SQL中的参数进行动态过滤达到该目的。下面具体描述该方案的实施过程。<span id="more-1472"></span></p>
<p><strong>第一步：数据准备</strong><br />
这里使用的是DEMO数据，主要为了演示该方案的操作，具体使用的时候需要根据具体的数据情况进行调整：<br />
表：datas</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top" width="197">ID</td>
<td valign="top" width="197">DATA</td>
<td valign="top" width="197">ROLE</td>
</tr>
<tr>
<td valign="top" width="197">1</td>
<td valign="top" width="197">100</td>
<td valign="top" width="197">0</td>
</tr>
<tr>
<td valign="top" width="197">2</td>
<td valign="top" width="197">200</td>
<td valign="top" width="197">0</td>
</tr>
<tr>
<td valign="top" width="197">3</td>
<td valign="top" width="197">300</td>
<td valign="top" width="197">0</td>
</tr>
<tr>
<td valign="top" width="197">4</td>
<td valign="top" width="197">400</td>
<td valign="top" width="197">1</td>
</tr>
<tr>
<td valign="top" width="197">5</td>
<td valign="top" width="197">500</td>
<td valign="top" width="197">1</td>
</tr>
<tr>
<td valign="top" width="197">6</td>
<td valign="top" width="197">600</td>
<td valign="top" width="197">2</td>
</tr>
<tr>
<td valign="top" width="197">7</td>
<td valign="top" width="197">700</td>
<td valign="top" width="197">2</td>
</tr>
<tr>
<td valign="top" width="197">8</td>
<td valign="top" width="197">800</td>
<td valign="top" width="197">3</td>
</tr>
</tbody>
</table>
<p>ID：编号<br />
DATA：数据<br />
ROLE：可查看角色编码</p>
<p>表：roles</p>
<table border="1" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top" width="197">ID</td>
<td valign="top" width="197">ROLENANME</td>
<td valign="top" width="197">ROLE</td>
</tr>
<tr>
<td valign="top" width="197">1</td>
<td valign="top" width="197">总裁</td>
<td valign="top" width="197">0</td>
</tr>
<tr>
<td valign="top" width="197">2</td>
<td valign="top" width="197">总经理</td>
<td valign="top" width="197">1</td>
</tr>
<tr>
<td valign="top" width="197">3</td>
<td valign="top" width="197">部门经理</td>
<td valign="top" width="197">2</td>
</tr>
<tr>
<td valign="top" width="197">4</td>
<td valign="top" width="197">销售人员</td>
<td valign="top" width="197">3</td>
</tr>
</tbody>
</table>
<p><strong>第二步：制作模板</strong><br />
2.1 新建一张模板，<a title="报表" href="http://www.finereport.com">报表</a>数据集中新建一个“数据库查询数据集”，名称为：datas，SQL语句写成“select * from datas where ROLE&gt;=[?ROLE?]”<br />
2.2 拖拽新建的<a title="报表" href="http://www.finereport.com/">报表</a>数据集datas的数据列至<a title="报表" href="http://www.finereport.com/">报表</a>中，如下图所示：<br />
<a title="http://www.finereport.com/forumimages/tgqxkzsjfw1.jpg" href="http://www.finereport.com/forumimages/tgqxkzsjfw1.jpg"><img class="alignnone" src="http://www.finereport.com/forumimages/tgqxkzsjfw1.jpg" alt="" width="693" height="212" /></a><br />
2.3 新建一个服务器数据字典，用于进行角色名称与角色编码的转换，因为这里是演示用，就直接将数据写死了，使用自定义的服务器数据字典，用户可以根据具体的情况使用数据库查询数据字典来定义，关键点是要将“角色名”设置为key，“角色编码”设置为value。因为在应用的过程中，一个用户的角色是通过角色名来定义的，而对数据的访问控制是通过角色编码来控制的，这里需要一个值转换的过程。如果角色名与角色编码一致则可以不经过下列步骤的设置。<br />
数据字典的名称为:roles_map</p>
<p><a title="http://www.finereport.com/forumimages/tgqxkzsjfw2.jpg" href="http://www.finereport.com/forumimages/tgqxkzsjfw2.jpg"><img class="alignnone" src="http://www.finereport.com/forumimages/tgqxkzsjfw2.jpg" alt="" width="780" height="220" /></a></p>
<p>2.4 设置参数处理器，选择菜单中的“<a title="报表" href="http://www.finereport.com/">报表</a>”-“参数处理器”，定义先前SQL语句中定义的参数“ROLE”的参数处理器，这里采用公式类型，用于将角色名处理为角色编码，公式为：“MAP($ROLE,”roles_map”)”如下图所示：</p>
<p><a title="http://www.finereport.com/forumimages/tgqxkzsjfw3.jpg" href="http://www.finereport.com/forumimages/tgqxkzsjfw3.jpg"><img class="alignnone" src="http://www.finereport.com/forumimages/tgqxkzsjfw3.jpg" alt="" width="400" height="360" /></a><br />
2.5 保存模板文件即可。<br />
2.6 用户在集成应用的时候，需要在系统登录后设置当前登录的用户的角色，或者使用FineReport自带的权限管理系统。如果采用FineReport自带的权限管理系统，上述SQL语句中的ROLE参数可使用FR_ROLE_NAME来替代，该参数是FineReport权限系统中的默认登录角色参数名。具体登录角色设置方式请参见FineReport权限集成帮助文档或咨询FineReport服务人员。</p>

<p><strong>Web报表主题相关文章：</strong></p>
<ul>
<li><a href="http://reportblog.cn/archives/1700">IIS集成配置</a></li>
<li><a href="http://reportblog.cn/archives/1697">Jboss 服务器 JNDI 配置数据源连接数据库</a></li>
<li><a href="http://reportblog.cn/archives/1694">Oracle 数据库实现自增长列</a></li>
<li><a href="http://reportblog.cn/archives/1689">Weblogic 10.1 配置JNDI 数据源</a></li>
<li><a href="http://reportblog.cn/archives/1685">Sql server 2000 连接测试</a></li>
</ul><br />
]]></content:encoded>
			<wfw:commentRss>http://reportblog.cn/archives/1472/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

