G’day Tim, Thanks for your comprehensive answer.
> On 19 Feb 2018, at 03:29 AEDT, Tim Nevels via 4D_Tech <[email protected]> > wrote: > > With what Jörg experienced, I think my suspicions have been confirmed. 4D has > been doing some “sneaky” things regarding the compiler, and that has changed > with v16. ... > > This would explain what I have been seeing randomly and what Jörg saw on a > massive scale. His Compiler Methods were incomplete and he didn’t realize it. > The variable typing cache objects were being used. Or could be 4D decided his > cache was bad and needed to be dumped and recreated. > So for v16 the secret variable typing cache is no longer being used like it > was before. Something has changed. I’m guessing it is still there and being > used for local variables. But for parameters it is ignored now and Compiler > Methods are the exclusive place for parameter typing. What ever they did it is f***** bad because they again didn’t let us know what to look for and what to change/expect ( I don’t want to bring up that “Primary-Key”-bullshit again) As a fact: From v16 onwards ALL variables, even the ones created with those 4D-predesigned forms (eg. Splitters), have to be declared in “compiler_$$$” methods. Praise the gods, a(nother) new 4D-era has arrived By the way, every variable I myself ever used in my structures I declared in my “Compiler_$$$” methods. I’m in the phase of calming down/recovering after my main (core) structure was nuked by this new Typing-crap. In the hope to not be bothered again by this new 4D “feature” here is my workaround: - add a prefix to the name of all “compiler_******” methods - compiler settings: “Compiler Methods for…” Variables: Compiler_Process Interprocess Variables: Compiler_Interprocess Arrays: Compiler_Process Interprocess Arrays: Compiler_Interprocess Methods: Compiler_Methods - Run “Compiler_Process” and "Compiler_Interprocess“ at application Startup time - Run “Compiler_Process” in every new process *you* start - After changes and before compiling delete the content of the “Compiler_xyz” methods and let 4D retype - and as always for a while now: Take cover before you confirm/save a change in your 4D-Development… > Another great 4D implementation question for the 4D engineers at 4D Summit. Ohh, you want to ask questions. Hmmm, you must be the diplomatic type. ;-) Cheers Jörg Regards Jörg Knebel, M.Eng. - 4D Developer since 1991 TTT Data Systems Pty Ltd Phone: +61 (0)2 6601 7453 www.tttdatasystems.com.au <http://www.tttdatasystems.com.au/> ********************************************************************** 4D Internet Users Group (4D iNUG) FAQ: http://lists.4d.com/faqnug.html Archive: http://lists.4d.com/archives.html Options: https://lists.4d.com/mailman/options/4d_tech Unsub: mailto:[email protected] **********************************************************************

