It's a little tricker than that, because the "...custom expr..." needs to be evaluated right away, so it can't be part of the literal tag....
I could have still used the literal tag, but the following was simpler to read, and I've used the technique before....
<@assign Method$myCustomFilterMetaTag
value=<<@CHAR 64>FILTER ARRAY=Products scope=Method expr=<@DQ><@var Method$FilterExpression><@DQ>>>
The <@Char 64> trick is very handy, because it makes it easy to mix tags that you do and don't want evaluated right away.
/John
Scott Cadillac wrote:
Hi John,
Try building the whole @FILTER Metatag dynamically as one big complete string using <@LITERAL>, then call the generated string with ENCODING=METAHTML, something like:
<@ASSIGN local$myCustomFilterMetatag VALUE="<@LITERAL VALUE='<@FILTER ...custom expr...>'>">
<@VAR local$myCustomFilterMetatag ENCODING=METAHTML>
Hope this helps. Cheers....
Scott Cadillac, 403-281-6090 ~ [EMAIL PROTECTED] ------------ XML-Extranet ~ http://xmlx.ca ~ http://forums.xmlx.ca Well-formed Programming in C# .NET, Witango, MSIE and XML ------------ Witango ~ http://witango.org EasyXSLT ~ http://easyxslt.ca IIS Watcher ~ http://iiswatcher.ca ------------
-----Original Message----- From: John McGowan <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] Date: Thu, 11 Mar 2004 15:42:52 -0600 Subject: Re: Witango-Talk: @FILTER
Well, I figured out what my problem was... (this time)
From the documentation...
Note References to columns inside the EXPR attribute cannot be specified by meta tags.
Well, I was most certianly specifying my colum references by a meta tag...
I was doing the following...
<@assign
scope=Method
name=FilterExpression
value="(#11=<@var Method$DC_ProductID>) <@ifempty <@var Method$DC_minQuantity>><@else> && (#12>=<@var Method$DC_minQuantity>)</@if><@ifempty <@var Method$DC_maxQuantity>><@else> && (#12<=<@var Method$DC_maxQuantity>)</@if>">
<@assign scope=Method name=Matches value=<@filter array=Products scope=Method expr="<@var Method$FilterExpression>">>
As you'll see I only want to compare column #12 if the variables i'm comparing them to aren't empty. However this is going to be
impossible, because there would be no way to conditionally compare to a given
column with the rule quoted from the docs above.
I think the only way I'm going to be able to do this is by doing multiple filters, each one filtering the results from the previous
filter.
/John
John McGowan wrote:
I don't have to use the @filter tag very often, but when I do, it's always a pain in the rear._______________________________________________________________________
There's always seems to be something wrong with my filter expressions that I can't see.
For example, right now i'm getting the following error.
-18 Error during expression evaluation. Illegal symbol in statement [(#11=1294) && (#12>=3)]
What could possibly be wrong with that expression?
/John
_
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf_______________________________________________________________________
_
TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
________________________________________________________________________ TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
________________________________________________________________________ TO UNSUBSCRIBE: Go to http://www.witango.com/developer/maillist.taf
