Re: [WebDNA] How to use [function]

This WebDNA talk-list message is from

2012


It keeps the original formatting.
numero = 108659
interpreted = N
texte = Lawrence I 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 lines you 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=20 Normally 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:

    
  1. Re: [WebDNA] How to use [function] (Govinda 2012)
  2. Re: [WebDNA] How to use [function] (Donovan Brooke 2012)
  3. Re: [WebDNA] How to use [function] (Banahan 2012)
  4. Re: [WebDNA] How to use [function] (Toby Cox 2012)
  5. Re: [WebDNA] How to use [function] (WebDNA Solutions 2012)
  6. Re: [WebDNA] How to use [function] (Toby Cox 2012)
  7. Re: [WebDNA] How to use [function] (WebDNA Solutions 2012)
  8. Re: [WebDNA] How to use [function] (Banahan 2012)
  9. Re: [WebDNA] How to use [function] (Toby Cox 2012)
  10. Re: [WebDNA] How to use [function] (WebDNA Solutions 2012)
  11. Re: [WebDNA] How to use [function] (Banahan 2012)
  12. Re: [WebDNA] How to use [function] (WebDNA Solutions 2012)
  13. [WebDNA] How to use [function] (Banahan 2012)
Lawrence I 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 lines you 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=20 Normally 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:

Test (2004) PIXO support (1997) Storebuilder Problems...Looking for last minute heroic (2004) WebCat2b15MacPlugin - [protect] (1997) [OT] IRC (2003) Listserver problem (1997) Re:Can someone remove this guy with the 186k emails!? (Thanksfor the email!) (1998) Merging databases (1997) Training Tapes Improved (1998) [WebDNA] File permissions on Windows? (2010) WebCat2 as a chat server? (1997) [WebDNA] Access to WDNA_OFS.db (2013) [numfound] for [listfiles] (1998) Orders coming up blank (2004) Logging purchases (1997) Has anyone integrated ZipBurst with WebCat? (2000) FORMS: Returning a specific page (1997) Multiple hideif's or if (2007) Webcat causing crashes left and right! (1997) PDF, images, and text oh my (2001)