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:

Grouping fields problem (1998) [WebDNA] WebDNA Hosts (2009) Removing Returns (2001) taxTotal, grandTotal (1997) possible, WebCat2.0 and checkboxes-restated (1997) [HIDEIF] inside [FOUNDITEM] (1997) [OT] - CSS Based Layout and Design (2004) Download URL & access on the fly ? (1997) pictures / referrer etc. (1998) Add to a field (1998) NT version and O'reily's WebSite (1997) php vs WebCatalog (2000) Mozilla/4. and Browser Info.txt (1997) webcatalog [date] bug...not (1999) Database Strategy - more... (1998) back button problem (1999) WebDNA Solutions ... sorry! (1997) List Address Changed! (1998) WebCatalog 2.1b4/Mac available (1997) [WebDNA] o search engines index .db files? (2009)