I drank deeply from the “dynamic variables” Koolaid well with the release
of V12. As soon as I started working with Form.foo, I ran headlong into the
issue described above.

The email thread "One Set of Code for Form Object Populated Forms as well
as Field-Based Detail View Forms” may shed some light on the topic.

--
Douglas von Roeder
949-910-4084


On Wed, Apr 29, 2020 at 10:15 AM lists via 4D_Tech <4d_tech@lists.4d.com>
wrote:

> OK, so can we get a real example of how to replace the *old* way with the
> new?  In a case where there are several entry objects:
>
> Form.Name
> Form.Address
> Form.Note
>
> I want to enforce a proper uppercase/lowercase on all three, so in the old
> days I created an object, set the method to "UpperLower(self)", duplicated
> it three times, change the object name and I'm done.  For simplicity sake,
> lets say that UpperLower simply do $1->:=Uppercase($1->).
>
> How would you do the same while using object notation instead of a
> variable, dynamic or not?
>
> Thanks,
>
> Lahav
>
>
> -----Original Message-----
> From: 4D_Tech <4d_tech-boun...@lists.4d.com> On Behalf Of Keisuke Miyako
> via 4D_Tech
> Sent: Wednesday, April 29, 2020 10:14 AM
> To: 4D iNug Technical <4d_tech@lists.4d.com>
> Cc: Keisuke Miyako <keisuke.miy...@4d.com>
> Subject: Re: Object notation replacement for use of Self in a script — v18
>
> my feeling is that generic coding is very much possible in object
> notation, but we need to accept that the approach is different.
>
> if you prefer to use pointers such as "Self", I think it's best to avoid
> object notation, at least if your goal is to make the code generic.
>
> it's not a defect of object notation,
> but the way to write generic code is different.
>
> if you want to make your code generic in object notation, I think you need
> to fully commit.
>
> what I mean by that, is that you need to think of objects and classes,
> properties and methods.
>
> basically, instead of
>
> doIt(Self)
>
> you would write
>
> $obj.doIt()
>
> where the doIt() formula works on "This".
>
> in my opinion, to take full advantage of object notation, it is pretty
> much mandatory to use
>
> This
> Signal
> Formula
> Form
>
> extensively, as well as
>
> Storage
> New shared object
> New shared collection
>
> strategically.
>
> simply replacing interprocess/process variables with object notation, may
> semantically look like object based coding, but at that level you may be
> losing major advantages of classic code, while not gaining much from what
> the new way of coding has to offer.
>
> > On Apr 29, 2020, at 14:55, Chris Belanger via 4D_Tech <
> 4d_tech@lists.4d.com> wrote:
> > And v18r3 does not even have a solution to this in its documentation.
>
> **********************************************************************
> 4D Internet Users Group (4D iNUG)
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **********************************************************************
> **********************************************************************
> 4D Internet Users Group (4D iNUG)
> Archive:  http://lists.4d.com/archives.html
> Options: https://lists.4d.com/mailman/options/4d_tech
> Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
> **********************************************************************
**********************************************************************
4D Internet Users Group (4D iNUG)
Archive:  http://lists.4d.com/archives.html
Options: https://lists.4d.com/mailman/options/4d_tech
Unsub:  mailto:4d_tech-unsubscr...@lists.4d.com
**********************************************************************

Reply via email to