Dave, Along those lines, objects have made passing long parameter lists to methods a joy. 8 parameters => 1 object with 8 attributes, optional parameters don't have to be at the end, etc.
Another trick: create constants for object attributes of commonly used objects, to wit: Constants Theme: Users Constant: USR User name attribute (notice the unique constant group name USR, for typeahead) Value: user_name Constant: USR user ID attribute Value: user_id Constant: USR user alias attribute Value: user_alias This allows typeahead, eliminates typo & case bugs in object attributes (object attributes are case sensitive). Creates lots of constants but, hey: who's counting? On Sat, May 27, 2017 at 6:29 PM, David Adams via 4D_Tech < [email protected]> wrote: > Cannon, > > Nice one on the hidden object array, really smart. > > > > P.S. Having such an array is a bit like what is requested here, but on a > listbox row level: > > > <http://forums.4d.fr/Post/FR/19051683/2/19476923#19476923> > > Okay people, if you haven't given this request of Cannon's a 4 star vote > already, please do so now. Cannon's idea is so good that my brain is > *continuously* trying to rewrite my memories to convince me that it was my > idea. It wasn't. But it's just so good I badly want to steal it. > > If you understand what the feature request would give us, then you'll have > no problem giving it 4 stars. If it's not immediately clear to you what > it's about, trust us - you'll love it. > > Right now if you want to make a really efficient, reliable and > easy-to-extend form code manager, there's quite a bit of infrastructure to > put in place. That means you need to understand what you need to build in > advance and then have to put the time into doing so. With Cannon's feature > in place, the price of admission to really excellent form code in 4D drops > by, I don't know, a factor of 10. Or, to make it look more impressive, it > makes coding forms take 9.0374% of the effort that it does today. (You > *know* it must be true when a number goes out to four decimal places.) > > Cannon's idea is super simple: Have 4D maintain a little C_OBJECT to the > form itself and every object on the form. Use the object name as the way to > get at the C_OBJECT. Use it when you want, ignore it when you don't. > [Important: 4D should allow these dictionaries to be addressed before > objects have run their On Load scripts.] > > I was so proud when I thought this up ;-) I'm doing it again! > > https://www.urbandictionary.com/define.php?term=kleptonesia > > As my ancestors said, "vote early, vote often." > > Seriously, it's the best feature request of the year. Better than the 31 > character limit one, as important a that is. > > On Sun, May 28, 2017 at 11:08 AM, Cannon Smith via 4D_Tech < > [email protected]> wrote: > > > One of my favorite new techniques is to use an object array as a hidden > > column in a listbox array. In the old days (before v15 r something or the > > other) I often had array based list boxes which had a bunch of hidden > > columns to store data that I wanted to do something with when the row was > > selected. Now I only need a single hidden column. Each element of the > > object array can store a wealth of additional information about the row. > > And it is really easy to extend what is stored in the object in the > future. > > No more adding additional columns and making sure they are updated in all > > the right places. So nice! > > > > P.S. Having such an array is a bit like what is requested here, but on a > > listbox row level: > > > > <http://forums.4d.fr/Post/FR/19051683/2/19476923#19476923> > > > > -- > > Cannon.Smith > > Synergy Farm Solutions Inc. > > Hill Spring, AB Canada > > 403-626-3236 > > <[email protected]> > > <www.synergyfarmsolutions.com> > > > > > > > On May 26, 2017, at 6:33 PM, David Adams via 4D_Tech < > > [email protected]> wrote: > > > > > > In honor of National Take-a-Penny/Leave-a-Penny Day, I thought it would > > be > > > nice to start a thread to collect people's favorite 4D tricks and > > keystroke > > > combos. > > > > ********************************************************************** > > 4D Internet Users Group (4D iNUG) > > FAQ: http://lists.4d.com/faqnug.html > > Archive: http://lists.4d.com/archives.html > > Options: http://lists.4d.com/mailman/options/4d_tech > > Unsub: mailto:[email protected] > > ********************************************************************** > > > ********************************************************************** > 4D Internet Users Group (4D iNUG) > FAQ: http://lists.4d.com/faqnug.html > Archive: http://lists.4d.com/archives.html > Options: http://lists.4d.com/mailman/options/4d_tech > Unsub: mailto:[email protected] > ********************************************************************** > -- Bob Finnerty Exodus Software ********************************************************************** 4D Internet Users Group (4D iNUG) FAQ: http://lists.4d.com/faqnug.html Archive: http://lists.4d.com/archives.html Options: http://lists.4d.com/mailman/options/4d_tech Unsub: mailto:[email protected] **********************************************************************

