Re: [WebDNA] How to use [function]
This WebDNA talk-list message is from 2012
It keeps the original formatting.
numero = 108659
interpreted = N
texte = LawrenceI tend to use functions where I have a complicated bit of logic (either =within or without a search context), more often when I would prefer no =white space in between linesyou can do it like this[hideif [myVar]=3D1][!] [/!][text]myNewVar=3D100[/text][!][/!][/hideif]is the same as this[function name=3DgenerateNewVar] [hideif [myVar]=3D1] [text scope=3Dglobal]myNewVar=3D100[/text] [/hideif][return][/return][/function][generateNewVar]I find the 2nd one easier to read.It is especially handy when generating XML, I find.Alternatively I would use it for text translation - [translateMyText =textToTranslate=3D[myDateVar]&language=3Dfrench] - and MySQL functions - =somehow it's easier to print out [findMyRecords myVar=3D1] than do all =the steps necessary for=20Normally a repeated bit of logic where the output is always in the same =format, but small input elements change is where I would use it most. In =the example you have given, I would almost always write this as inline =code. If, however, you wanted to have a find function that always =printed the results out in the same manner, you could do the following:[function name=3DgetResults] [search db=3D[whichDb].db&&neSKUdata=3D[blank]] [founditems] [return]
[SKU]-[name]
[/return] [/founditems] [showif [numfound]=3D0] [return]Nothing to see here[/return] [/showif] [/search][/function]and on your page
[getResults whichDb=3DmyDb]
and again somewhere else
[getResults whichDb=3DanotherDb]
Hope this helps....TC> Toby,=20> I'm trying to understand in which case I should use the [function] or =not.> Your example is clear, It looks like it would be nice to have all the =webdna code in separate files, and have only the result called in the =page, that would make page codes clear.> for the break/stop the documentation says :> "'The [return] context does NOT 'break out' of a function call, so it =is possible to use one or more [return] contexts to 'tailor' the =functions output. ">=20> Kenneth,=20> how would you use an array with this kind of search function?>=20> Thanks> Lawrence
Associated Messages, from the most recent to the oldest:
LawrenceI tend to use functions where I have a complicated bit of logic (either =within or without a search context), more often when I would prefer no =white space in between linesyou can do it like this[hideif [myVar]=3D1]
[!] [/!]
[text]myNewVar=3D100[/text]
[!][/!][/hideif]is the same as this[function name=3DgenerateNewVar] [hideif [myVar]=3D1] [text scope=3Dglobal]myNewVar=3D100[/text] [/hideif]
[return][/return][/function][generateNewVar]I find the 2nd one easier to read.It is especially handy when generating XML, I find.Alternatively I would use it for text translation - [translateMyText =textToTranslate=3D[myDateVar]&language=3Dfrench] - and MySQL functions - =somehow it's easier to print out [findMyRecords myVar=3D1] than do all =the steps necessary for=20Normally a repeated bit of logic where the output is always in the same =format, but small input elements change is where I would use it most. In =the example you have given, I would almost always write this as inline =code. If, however, you wanted to have a find function that always =printed the results out in the same manner, you could do the following:[function name=3DgetResults] [search db=3D[whichDb].db&&neSKUdata=3D[blank]]
[founditems] [return][SKU]-[name]
[/return] [/founditems] [showif [numfound]=3D0]
[return]Nothing to see here[/return] [/showif] [/search][/function]and on your page
[getResults whichDb=3DmyDb]
and again somewhere else
[getResults whichDb=3DanotherDb]
Hope this helps....TC> Toby,=20> I'm trying to understand in which case I should use the
[function] or =not.> Your example is clear, It looks like it would be nice to have all the =webdna code in separate files, and have only the result called in the =page, that would make page codes clear.> for the break/stop the documentation says :> "'The
[return] context does NOT 'break out' of a function call, so it =is possible to use one or more
[return] contexts to 'tailor' the =functions output. ">=20> Kenneth,=20> how would you use an array with this kind of search function?>=20> Thanks> Lawrence
Toby Cox
DOWNLOAD WEBDNA NOW!
Top Articles:
Talk List
The WebDNA community talk-list is the best place to get some help: several hundred extremely proficient programmers with an excellent knowledge of WebDNA and an excellent spirit will deliver all the tips and tricks you can imagine...
Related Readings:
[founditems][replacefounditems] (2003)
Emailer setup (1997)
Newspaper Portal (2005)
windows file upload = weirdness (2004)
Header Problems (1998)
OT: javascript help (2003)
no global [username] or [password] displayed ... (1997)
Ampersand (1997)
Re:no [search] with NT (1997)
[AppendFile] problem (WebCat2b13 Mac .acgi) (1997)
Google listings. (2006)
Help! WebCat2 bug (1997)
Problems with [Applescript] (1997)
Repost: [convertwords] to convert carriage return? (2000)
This is a Test, sorry (1999)
Disappearing records (2002)
Price characteristics? (1997)
3RD POST Character limit in [Search]? (1998)
Solaris (2007)
shipcost (1997)