Skip to main content
Participant
October 8, 2014
Question

function calls in cfscript

  • October 8, 2014
  • 1 reply
  • 281 views

i am looking for an example of using cfscript to pass varibles into a query  and NOT HARDCODED into the addParam value attribute.

Sugesstions ?

This topic has been closed for replies.

1 reply

BKBK
Community Expert
Community Expert
October 8, 2014

You could just create your own custom function. To illustrate, take the following example from the documentation:

<cfscript>

    queryService = new query();

    queryService.setDatasource("cfdocexamples");

    queryService.setName("getParks");

    queryService.addParam(name="state",value="MD",cfsqltype="cf_sql_varchar");

    queryService.addParam(value="National Capital Region",cfsqltype="cf_sql_varchar");

    result = queryService.execute(sql="SELECT PARKNAME, REGION, STATE FROM Parks WHERE STATE = :state and REGION = ? ORDER BY ParkName, State ");

    getParks = result.getResult();

</cfscript>

<cfdump var="#getParks#">

You could customize it as follows:

<cfscript>

    queryService = new query();

    queryService.setDatasource("cfdocexamples");

    queryService.setName("getParks");

    qParams = getQueryParams();

    result = queryService.execute(sql="SELECT PARKNAME, REGION, STATE FROM Parks WHERE STATE LIKE '#qParams.stateFirstLetter#%' and REGION LIKE '#qParams.regionFirstLetter#%' ORDER BY State, ParkName");

    getParks = result.getResult();

    function getQueryParams() {

        var myParams=structnew();

        myParams.stateFirstLetter = "M";

        myParams.regionFirstLetter = "N";

        return myParams;

    }

</cfscript>

<cfdump var="#getParks#">