惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - Franky
Microsoft Azure Blog
Microsoft Azure Blog
阮一峰的网络日志
阮一峰的网络日志
宝玉的分享
宝玉的分享
量子位
N
Netflix TechBlog - Medium
M
MIT News - Artificial intelligence
GbyAI
GbyAI
Apple Machine Learning Research
Apple Machine Learning Research
博客园_首页
博客园 - 叶小钗
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
酷 壳 – CoolShell
酷 壳 – CoolShell
T
Tailwind CSS Blog
Y
Y Combinator Blog
L
LangChain Blog
The Cloudflare Blog
T
The Blog of Author Tim Ferriss
U
Unit 42
Martin Fowler
Martin Fowler
aimingoo的专栏
aimingoo的专栏
G
Google Developers Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
月光博客
月光博客

博客园 - spoony

Flex4 Skinning 4: 留言板示例 Flex4 Skinning 2: 皮肤协议 Flex4 Skinning 1: 自定义一个简单按钮的皮肤 Air应用程序访问本地数据库 [通篇转载]调程序的小女孩 Adobe ColdFusion Reports(4) Adobe ColdFusion Reports(3) Adobe ColdFusion Reports(2) Adobe ColdFusion Reports(1) Adobe ColdFusion Charts(3) Adobe ColdFusion Charts(2) Adobe ColdFusion Charts(1) Adobe ColdFusion读写Microsoft Office Excel数据(3) Adobe ColdFusion读写Microsoft Office Excel数据(2) Adobe ColdFusion读写Microsoft Office Excel数据(1) Flex与DotNET WebService交互(2) Flex与DotNET WebService交互(1) Ext JS Designer 1.0.5 发布 设置Flex Builder中FlashPlayer调试版本 - spoony - 博客园
Adobe ColdFusion Reports(5)
spoony · 2010-03-03 · via 博客园 - spoony

  作为应用程序的一个很大组成部分,报表其实很少以单独形式存在,因此我们需要将报表作为模板应用到程序中。前面的几篇随笔简单介绍了报表的基本制作和样式控制等。其中的查询内容信息直接放在报表中。通过Query Builder生成的query可以通过Query Builder的Advanced模式进行查看。如图1. 

图 1

  下面笔者通过一个示例,更改报表中的查询数据来动态显示不同的结果。使用者可以通过不同的用户名登录信息,查看当前登录的艺术家的作品信息。

  首先新建一个简单的登录窗体,代码如下。

<h3>Artist Login Form</h3>
<p>Please enter your last name and password.</p>
<cfform name="loginform" action="artSalesReport.cfm" method="post">
	<table>
		<tr>
			<td>Last Name: </td>
			<td>
				<cfinput type="text" name="username" 
					required="true" message="A username is required. ">
			</td>
		</tr>
		<tr>
			<td>Password: </td>
			<td>
				<cfinput type="password" name="password" 
					required="true" message="A password is required. ">
			</td>
		</tr>
	</table>
	<br/>
	<cfinput type="submit" name="submit" value="Submit">
</cfform>

  然后新建一个应用页面,注意这里主要新建了一个查询变量,并将这个变量赋给cfreport标签的query属性,而将原来的报表文件赋给template属性,查看格式为HTML, 代码如下。

<cfquery name="artsales" datasource="cfartgallery">
	SELECT 
		*
	FROM
		APP.ART,
		APP.ARTISTS
	WHERE
		APP.ART.ARTISTID = APP.ARTISTS.ARTISTID
		AND
		APP.ARTISTS.LASTNAME = <cfqueryparam value="#FORM.username#">
	ORDER BY
		APP.ARTISTS.LASTNAME
</cfquery>

<cfreport query="artsales" template="ArtSalesReport1.cfr" format="HTML">

  在浏览器中运行程序,效果如图2, 图3. 

图 2

图 3

  这里值得注意的是新建的查询中必须全部包括报表中的字段,当然可以增加新的字段。