[JPR]
Hi Guys,

Recently I've received a lot of mails, from USA, Germany, France, etc. asking 
almost the same questions, so I've decided to do a global answer. Basically, 
the question looks like "I'm very busy, and I just would like to know if it's 
it worth it, to spend one day dedicated to this new version. You see, I'm on 4D 
for a zillion years, and I don't really see what you can say that I do not know 
yet, or that I can't learn by reading the documentation."

My answer to this question is "Yes!"

HTH,

My very best,

What do you say? I should develop the answer a little bit?

OK, but I will not detail the training content, for I'm not good at 
advertising. Nevertheless, just some hints: 

- We will talk about Objects, and don't think that what you know from the V16R5 
is enough, there is much more.
- We will talk about Collections. Yes, I know, you use it, and you already know 
everything about it. At least this is what you believe. Developer of little 
faith, just wait until you will see Collections in the new version...
- We will talk about Records, and don't think that the fact you use Records 
since the beginning will actually help you to go from 'Classic' to the New way.
- We will talk about Selections, specially to explain how you can get rid of 
most of the limitations you had to bear for years.
- We will talk about Relations, which become much more important, and I will 
tell you that what I told you in previous trainings is obsolete.
- We will explain the Language. OK, OK, you already use the dot notation, and 
you think you have got everything, but frankly, read my lips, you didn't get 
everything...

And much more, and the philosophy behind,  and the very new way of thinking 4D, 
and multiconnection, and Optimistic Locking, and Listboxes, etc.

For instance, let me give you a little example: Suppose you have Sales & 
Production Management System, with a structure like: [Products] related to 
[Groups] and [Countries], [Parts] related to [Products] recursively, simple but 
practical example, I let you guess the complete structure. 
You want to count every Products:
                ((whose [Groups]Description contains Internet) or (whose 
[Products]Country_Code is JAP))
                and whose number of Parts Records is > 0

This is the QUERY in 'Classic' mode:

QUERY([Groups];[Groups]Description="@Internet@")
RELATE MANY([Groups]ID)
CREATE SET([Products];"Set_1")
QUERY([Products];[Products]Country_Code="JAP")
CREATE SET([Products];"Set_2")
UNION("Set_1";"Set_2";"Set_1")
USE SET("Set_1")
FIRST RECORD([Products])
CREATE EMPTY SET([Products];"Set_1")
While (Not(End selection([Products])))
        QUERY([Parts];[Parts]Product_ID=[Products]ID)
        If (Records in selection([Parts])>0)
                ADD TO SET([Products];"Set_1")
        End if 
        NEXT RECORD([Products])
End while 
USE SET("Set_1")
CLEAR SET("Set_1")
CLEAR SET("Set_2")
$n:=Records in selection([Products])

The same Query in the New way is ONE line, not even a long one. The only thing 
I can tell you is: This line begins with $n:=...

I already told you it's the biggest improvement in 4D since Client-Server and 
Multi Process, and, sure things, I mean it. As I already told some of you, if 
you come, you may risk to lose a day and a few bucks, but if you don't come, 
I'm ready to bet that you will lose a whole lot of days, meaning a bunch of 
money! And I'm sure that it is true if you are an ol' timer in 4D as well as if 
you are just coming from the OO World...

You know me for many years, and you know I always say only what I think, either 
good or bad. And I think this version is just above the "Insanely Great" mark 
in my own appreciation scale, and the only drawback is the extreme difficult 
and painful way I have to endure when I need to go back to older versions...

Let's meet in Paris, Washington, Munich, or Tokyo.

My very best,

JPR

Dans la vie, rien n'est à craindre, tout est à comprendre. -Marie Curie-
(In life, nothing is to be feared, everything is to be understood.)


**********************************************************************
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]
**********************************************************************

Reply via email to