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:
Server Freeze (1998)
Semi-OT SSL IE problem (2005)
color and size options / ARCHIVES (1997)
problems with 2 tags shakur (1997)
Email...Thanks (1997)
Round UP to nearest 100 (2007)
WC2.0 Memory Requirements (1997)
Logging purchases (1997)
Permissions Ignored - PLEASE HELP (2003)
Which is Faster (1998)
system crashes, event log (1997)
Feedback on new features (2000)
Search Folder? (1998)
passing info to thankyou.tpl (1998)
no global [username] or [password] displayed ... (1997)
HMAC-MD5 hash -- what the... (2003)
Mac: [ListFiles] bug alert (1997)
WebCatalog2 Feature Feedback (1996)
Variables for chat (1997)
sandboxes with 6.0 (2004)