Hi,
Maybe I overlook something but I can't get past this one
If I do this
cfset local.query = "SELECT CMS.text.text, CMS.group.title">
<cfset local.query &= " FROM CMS.text">
<cfset local.query &= " JOIN CMS.group">
<cfset local.query &= " JOIN Language.language">
<cfset local.query &= " JOIN CMS.status">
<cfif arguments.multiple eq "True">
<cfset local.query &= " WHERE CMS.group.title IN(:testA)">
<cfelse>
<cfset local.query &= " WHERE CMS.group.title=:group">
</cfif>
[.. more TQL...]
I get 1 record
If I do this
cfset local.query = "SELECT CMS.text.text, CMS.group.title">
<cfset local.query &= " FROM CMS.text">
<cfset local.query &= " JOIN CMS.group">
<cfset local.query &= " JOIN Language.language">
<cfset local.query &= " JOIN CMS.status">
<cfif arguments.multiple eq "True">
<cfset local.query &= " WHERE CMS.group.title IN(:testB)">
<cfelse>
<cfset local.query &= " WHERE CMS.group.title=:group">
</cfif>
[.. more TQL...]
I get another record
If I do this
cfset local.query = "SELECT CMS.text.text, CMS.group.title">
<cfset local.query &= " FROM CMS.text">
<cfset local.query &= " JOIN CMS.group">
<cfset local.query &= " JOIN Language.language">
<cfset local.query &= " JOIN CMS.status">
<cfif arguments.multiple eq "True">
<cfset local.query &= " WHERE CMS.group.title IN(:testAB)">
<cfelse>
<cfset local.query &= " WHERE CMS.group.title=:group">
</cfif>
[.. more TQL...]
I get NO records
testA,testB,testAB:
<cfset local.qTransferObject.setParam("testAB","'A','B'","List")>
<cfset local.qTransferObject.setParam("testA","A","String")>
<cfset local.qTransferObject.setParam("testB","B","String")>
I tried this:
<cfset local.qTransferObject.setParam("testAB","'A','B'","String")>
<cfset local.qTransferObject.setParam("testAB","A,B","List")>
<cfset local.qTransferObject.setParam("testAB","A B","List")>
<cfset local.qTransferObject.setParam("testAB","'A' 'B'","List")>
<cfset local.qTransferObject.setParam("testAB","'A''B'","List")>
makes no difference
Executing a <cfquery> where I substitute values for testAB as in
SELECT texts.text
FROM texts
inner join groups ON texts.FK_group =
groups.id
inner join languages ON texts.FK_language =
languages.id
inner join status ON texts.FK_status =
status.id
WHERE groups.title IN ( 'A','B' ) AND
gives me 2 records, so the problem must be with the use of the IN
operator
The Transfer docs say:
"For example, if your using a mappedParameter statement within your
TQL script, it could look something like: select from post.Post where
post.Post.IDPost IN ( :idpostList ). From there you would be setting
the mappedParameter via the query object, most likely with the 'list'
argument set to true. "
What am I doing wrong?
Thanks,
Marc