Erik,

Few things to try:

1) instead of typing the ' character, try using the @SQ tag

2) the @VAR in 6.2 now has a new array attributes csep= and rsep=. These allow 
for placement of separators in the direct string conversion of an array 
variable.

In other words, this should work: <@VAR positionList aprefix='(' asuffix=')' 
rprefix= rsuffix= cprefix=<@SQ> csuffix=<@SQ> rsep=','> - this will have the 
benefit of only executing one tag.

3) I'm assuming that you are doing this in a CustomSQL action - if not, the 
other actions automatically convert arrays to IN lists.

4) if you are in a CustomSQL action, try toggling the Automatic SQL encoding 
checkbox at the bottom of the query window, and then apply your own encoding 
(encoding=sql) where needed.

If none of these ideas help, please email me the TAF at [email protected] 
I have a FMP 11 server that I can test with.

Robert

-----Original Message-----
From: Erik Gorka [mailto:[email protected]]
Sent: Thursday, February 07, 2013 6:46 PM
To: [email protected]
Subject: TeraScript-Talk: noSQLEncoding config ignored

We're running Terascribe Server 6.2 and are in the process of upgrading our 
FileMaker 10 server which we've been accessing via JDBC to FileMaker 11. Seems 
FileMaker 11 is very picky about data typing, which has revealed a problem 
where, in some cases, part of the SQL is having its single quotes doubled, 
breaking the query.

As mentioned it is not doing this in all cases, but refuses to let go of this 
one. I've tried turning the "noSQLEncoding" configuration to "true", but the 
setting is being ignored. In this case, we're creating a list of items for an 
"IN" statement based on an array, like this:

and position in (<@rows array="request$postionList"><@if expr="<@currow> != 
1">, </@if>'<@col 1>'</@rows>)

This list of positions are numbers, the the field in FileMaker is a text field. 
So if I remove the quotes it breaks because the items are not of the correct 
type (worked fine for FM 10 but not for 11), but add the quotes and the 
resulting sql in the logs looks like this:

and position in (''05040'', ''24762'', ''24763'', ''72010'')

There are other quoted parts of the statement above this one, but only this 
part is getting the doubled single quote treatment. Is this a bug or am I doing 
something wrong?

Erik Gorka
Reed College



----------------------------------------

To unsubscribe from this list, please send an email to [email protected] 
with "unsubscribe terascript-talk" in the body.




----------------------------------------

To unsubscribe from this list, please send an email to [email protected] 
with "unsubscribe terascript-talk" in the body.

Reply via email to