Automatically Query To CFM
QUERYRENDER CUSTOM TAG
QUERYRENDER.CFM
<cfparam name="Attributes.QueryName"
default="Query">
<cfparam name="Attributes.DataSource"
default="">
<cfparam name="Attributes.ColumnList"
default="*">
<cfparam name="Attributes.TableList"
default="">
<cfparam name="Attributes.Constraints"
default="">
<cfparam name="Attributes.GroupBy"
Default="">
<cfparam name="Attributes.OrderBy"
Default="#Attributes.ColumnList#">
<pre>
<!---------------------------------------------------------------------------------------->
<font color="red">GENERATE QUERY FROM CUSTOM TAG ATTRIBUTES</font>
<!---------------------------------------------------------------------------------------->
SELECT #Attributes.ColumnList#
FROM #Attributes.TableList#
<cfif Attributes.Constraints neq
"">WHERE
#PreserveSingleQuotes(Attributes.Constraints)#</cfif>
<cfif Attributes.GroupBy neq
"">GROUP BY
#Attributes.GroupBy#</cfif>
<cfif Attributes.OrderBy neq
"">ORDER BY
#Attributes.OrderBy#</cfif>
</pre>
<!--- Generate the following query syntax --->
<cfquery name="#Attributes.QueryName#"
datasource="#Attributes.DataSource#">
SELECT #Attributes.ColumnList#
FROM #Attributes.TableList#
<cfif Attributes.Constraints neq
"">
WHERE #PreserveSingleQuotes(Attributes.Constraints)#
</cfif>
<cfif Attributes.GroupBy neq
"">
GROUP BY #Attributes.GroupBy#
</cfif>
<cfif Attributes.OrderBy neq
"">
ORDER BY #Attributes.OrderBy#
</cfif>
</cfquery>
<pre>
<!---------------------------------------------------------------------------------------->
<font
color="red">RENDER THIS QUERY</font>
<!---------------------------------------------------------------------------------------->
</pre>
<!--- Create a list of columns to loop through --->
<cfset LoopList = "#Attributes.QueryName#.ColumnList">
<table Border="1">
<tr>
<cfloop
index="ColumnHeadings" list="#Evaluate(LoopList)#">
<th>
<cfoutput>#ColumnHeadings#</cfoutput>
</th>
</cfloop>
</tr>
<cfoutput query="#Attributes.QueryName#">
<tr bgcolor="#iif(CurrentRow mod 2, DE('efefef'),
DE('White'))#">
<cfloop
index="lstLp"
list="#Evaluate(LoopList)#">
<td>#Evaluate(LstLp)#</td>
</cfloop>
</tr>
</cfoutput>
</table>
<cfdump var="#Variables#">
Save the custom tag above in the Custom Tag directory as QUERYRENDER.CFM
TEST.CFM
I created a page called TEST.CFM to test this custom tab
On the Page where you want to run a query and display result in a table just use the code ?.
<cf_QueryRender
QueryName="NW"
DataSource="NorthWind"
ColumnList="FirstName,
LastName"
TableList="Northwind.dbo.Employees"
Constraints=""
GroupBy=""
OrderBy="">
That's it !!!

Of course there are a few rules that you should follow. In the columnlist part of the tag you can use aliases if you want. For example
FirstName as FName, LastName as Last_Name
Notice no quotes around the aliases and no spaces either.
You can also write JOIN Statements in the Table list like;
The dump will show with spaces but the table will not be rendered as the loop will not know what to do when is comes across a space.
TABLELIST="Product P Left Join ProductOrder PO on Po.ProductId =
P.ProductId"
This tag of course does not give you you an easier way of writing queries. It just renders the rest of the page for you.
If you do not want to display the dump simply take out the <cfdump
var="#variables#"> line out of the custom page.

I found this is really a whole lot easier instead of having to write query tags and then query render blocks over and over again. Let me know if you think of improvements !!!
-
A DataSet just like VB.Net
This tutorial shows you how to create a "dataset" just like the one in VB.Net
In VB.Net you would create a dataset with "edit" button in an extra column.
Once you click "edit", you get an option to "update", "delete" or "cancel edit mode"
This is just like a cfgrid tag. Although a cfgrid tag lets you bulk insert, bulk update or bulk delete, the dataset object does it one by one. But cfgrid is slower, and may give users Java errors, depending on their browser settings.
Author: Anang A Phatak
Views: 16,579
Posted Date: Wednesday, November 17, 2004
-
A Mp3 Streaming Server
This is a small application that shows you how to create an MP3 streaming server.
Author: Anang A Phatak
Views: 13,625
Posted Date: Monday, November 8, 2004
-
A plot to plot a line
I had no work one day due to a worm attack on our servers, thus a plot to plot a line on a graph was hatched in my empty mind. These files show you,
how to plot a line using no database, no java, no long wait times for aplet loading, just 3 tools, Loop, table and text.
Author: Anang A Phatak
Views: 9,205
Posted Date: Thursday, May 6, 2004
-
A random password generator
RANDOM PASSWORD GENERATOR SCRIPT !
I know there is a random password tutorial here already. This is just another way to do the same. I think this is a little easier to understand.
Refresh it to generate a new password string everytime !
Author: Anang A Phatak
Views: 10,892
Posted Date: Monday, May 24, 2004
-
Advanced Calculator
I have posted a "Basic Calculator" tutorial here. That was more like a representation of how you would calculate with a paper and a pencil. You provide INPUT A then a MATHEMATICAL OPERATION like a "+" or a "-" and then an INPUT B. This is more a represntation of how you would use a regular hand-held calculator complete with buttons for NUMBERS, OPERATIONS and CLEAR TEXT.
Author: Anang A Phatak
Views: 9,742
Posted Date: Friday, June 18, 2004
-
Automatic Form Generator
This is not a tutorial as such, more like an application that you can put in a directory.
It could boring if you use the CF editor, to pick "cfform" fill its attributes, then pick "cfinputs" one by one. fill out those attributes... one by one, then change tabs and pick the "submit" button... so on and so forth. Even if you code in a note pad, it might get lengthy to code individual element.
Wouldn't it be nicer to code all these elements at once, then just copy the code and paste it in your editor?
Author: Anang A Phatak
Views: 10,380
Posted Date: Thursday, May 20, 2004
-
Automatically Query To CFM
This is a custom tag application. The cf_QueryRender custom tag takes your query arguments and gives you a final page table and all...
Author: Anang A Phatak
Views: 12,305
Posted Date: Friday, October 29, 2004
-
Breaking down your query results into pages (Paging Tutorial)
I havent come across a "paging" tutorial on this site. I know there are JavaScripts available that help you achieve this, and the DataSet object in VB.Net comes with paging. All you do is "enable paging". But how do you do it in ColdFusion ?
Author: Anang A Phatak
Views: 16,451
Posted Date: Tuesday, November 16, 2004
-
Breaking down your query results into pages (Paging Tutorial) Part-II
This is an extension to my last tutorial "Breaking down your query results into pages (Paging Tutorial)" which is posted here on www.easycfm.com
In the last tutorial, you could retrieve a dataset with a , then use a technique to seperate the results over several pages. It simply ;
- took the total "recordCount"
- divided that with the "number of records per page"
- then displayed the number of pages at the bottom of the table.
This is a little more sophisticated than that. Read on...
Author: Anang A Phatak
Views: 8,769
Posted Date: Wednesday, January 11, 2006
-
ColdFusion MX 6.1 Installation on Linux (Ubuntu -- Hoary Hedgehog)
I have tried hoards of websites on how to install coldfusion on Fedora Core 3 with apache webserver. For some reason the connectors always failed.
I had "Ubuntu" on my laptop, basically because "acpi" suspend/hibernate actually works. I decided I might try to install CF there to find out what was going wrong.
Surprisingly everything worked like a charm.
Make sure you use "apt-get install apache2" before you try this.
BEST OF LUCK ....
Author: Anang A Phatak
Views: 11,276
Posted Date: Tuesday, May 10, 2005
-
Dynamic textbox and progress bar for your pages
The principle of this tutorial is similar to "Dynamic time and date for your pages" tutorial.
Except that this one generates messages, and that one updated time.
Read on, you will get the hang of it....
Author: Anang A Phatak
Views: 13,101
Posted Date: Thursday, May 19, 2005
-
Dynamic time and date for your pages
Have you seen the "www.EasyCFM" page closely? On the main page, top right, there is a place for time, and top left a place for day-date.
Ever wonder how Pablo does it ?
This is not a ColdFusion tutorial. Its JavaScript.
Author: Anang A Phatak
Views: 10,646
Posted Date: Wednesday, January 5, 2005
-
Getting ColdFusion Studio for Linux
I like using HomeSite+ for windows, and I am getting used to Dreamweaver Mx. But I still need something just as good for Linux. For some reason, I couldnt get "wine and Dreamweaver Mx" to work. So I "Googled" a bit and stumbled upon Eclipse and cfEclipse. Here is how to set it up.
Author: Anang A Phatak
Views: 11,720
Posted Date: Wednesday, May 25, 2005