Thanks Armin. I decided that I was a bit reluctant to run code across the whole database to replace the obsolete commands (even with structure backups in place!).
I much prefer to inspect each change visually to asses for any potential implications. As there are actually not that many instances in my client’s system to be updated I can fortunately justify doing it this way. _o_C_STRING now done, just the /_o_ARRAY STRING to be replaced this afternoon. Thanks to everybody who provided input on this question. Regards, Narinder Chandi, ToolBox Systems Ltd. -- From: 4D_Tech <4d_tech-boun...@lists.4d.com> on behalf of ADeeg via 4D_Tech <4d_tech@lists.4d.com> Reply-To: 4D iNug Technical <4d_tech@lists.4d.com> Date: Sunday, 9 June 2019 at 20:47 To: <4d_tech@lists.4d.com> Cc: ADeeg <d...@node.de> Subject: Re: v15 to v17 Conversion of Obsolete _o_C_STRING/_o_ARRAY STRING Commands Narinder, there is a working method from Bertrand. http://forums.4d.com/Post/DE/17445198/1/17445199 Open the struct, copy the method and enjoy Regards Armin 4D Tech mailing list wrote Hi all. I am migrating a v15 database to v17, 4D Server running on Mac. I need some opinions as to what to do with regards to converting commands marked as obsolete as per this article: https://doc.4d.com/4Dv15/4D/15/Deprecated-or-removed-features-in-v15-product-range.200-2063067.en.html I have been addressing them by theme, and in some cases the conversion is straight forward, e.g. _o_ENABLE BUTTON/_o_DISABLE BUTTON is replaced by OBJECT SET ENABLED whilst some others can be removed completely, e.g. _o_REDRAW LIST. I am now looking at how to deal with the obsolete Compiler theme commands _o_C_INTEGER, _o_C_STRING and _o_ARRAY STRING. _o_C_INTEGER I have simply replaced with C_LONGINT as the docs state that "...4D and the compiler retype Integers into Longints internally." However, I am conflicted as to how best to deal with _o_C_STRING and _o_ARRAY STRING which are replaced by C_TEXT and ARRAY TEXT respectively. The docs state "The operation of the [_o_C_STRING/_o_ARRAY STRING] command is strictly identical to that of the [C_TEXT/ARRAY TEXT]". Of course the string length parameter in the obsoleted commands makes the conversion non-trivial and code will need to reviewed for any functional regressions, e.g. in relation to database fields of type String where the length can still be defined (auto-truncation may not be the desired/intended behaviour!). I have searched the archives on this topic but opinions seem to be divided on whether or not to do this conversion? Perhaps I am mistaken, but I am of the opinion that it will have to be done sooner or later as 4D reserves the right to remove obsoleted commands and will eventually do so? TL;DR the options are: 1. Replace 2. Do nothing for v17 Thoughts? I will deal with my questions and options regarding Subrecords in a separate email! Regards, Narinder Chandi, -- Sent from: http://4d.1045681.n5.nabble.com/4D-Tech-f1376241.html ********************************************************************** 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 **********************************************************************