Calling Functions And Using Variables; Passing Arguments - MACROMEDIA COLDFUSION MX 61-DEVELOPING COLDFUSION MX Develop Manual

Developing coldfusion mx applications
Table of Contents

Advertisement

Using a CFML tag in a user-defined function
The most important advantage of using the
is that you can include CFML tags in the function. Thus, UDFs can encapsulate activities, such
as database lookups, that require ColdFusion tags. Also, you can use the
output on the calling page with minimal coding.
Tip: To improve performance, avoid using the
tag.
cfset
The following example function looks up and returns an employee's department ID. It takes one
argument, the employee ID, and looks up the corresponding department ID in the CompanyInfo
Employee table:
<cffunction name="getDeptID" >
<cfargument name="empID" required="true" type="numeric">
<cfquery dataSource="CompanyInfo" name="deptID">
SELECT Dept_ID
FROM Employee
WHERE Emp_ID = #empID#
</cfquery>
<cfreturn deptID.Dept_ID>
</cffunction>
Using the Arguments scope in cffunction definitions
When you define a function using the
directly by name if all arguments are named in the
scope identifier, follow the rules listed in

Calling functions and using variables

You can call a function anywhere that you can use an expression, including in pound signs (#) in
a
tag, in a CFScript, or in a tag attribute value. One function can call another function,
cfoutput
and you can use a function as an argument to another function.
You call user-defined functions the same way you call any built-in ColdFusion functions.

Passing arguments

ColdFusion passes the following data types to the function by value:
Integers
Real numbers
Strings (including lists)
Date-time objects
Arrays
As a result, any changes that you make in the function to these arguments do not affect the
variable that was used to call the function, even if the calling code is on the same ColdFusion page
as the function definition.
ColdFusion passes queries, structures, and external objects such as COM objects into the
function by reference. As a result, any changes to these arguments in the function also change the
value of the variable in the calling code.
For an example of the effects of passing arguments, see
202
Chapter 10: Writing and Calling User-Defined Functions
tag over defining a function in CFScript
cffunction
tag in ColdFusion functions. Instead, use the
cfparam
tag, you generally refer to the arguments
cffunction
cfargument
"About the Arguments scope" on page
"Passing complex data" on page
tag to display
cfoutput
tags. If you do use the Arguments
194.
210.

Advertisement

Table of Contents
loading
Need help?

Need help?

Do you have a question about the COLDFUSION MX 61-DEVELOPING COLDFUSION MX and is the answer not in the manual?

Questions and answers

Subscribe to Our Youtube Channel

This manual is also suitable for:

Coldfusion mx

Table of Contents