Re: HELP:Ancient version of I4GL
Posted in 2000
On Fri, 14 Jan 2000, QueriX 4GL / Mehdi wrote:
>mdchachi@my-deja.com wrote:
>> Looking for some Informix oldtimers...
>>
>> I'm enhancing an ancient informix 4gl app built in version 1.10.
>> I have to compile on SunOS but it seems to deploy okay on Solaris.
Sun is very good about having old code continue to work on new versions.
One year, Linux will handle this too.
>> Does anybody know if there is a 1.10 distribution compilable on
>> Solaris?
No. I4GL version 1.10 was released in 1986 or 1987. I'm not sure
exactly when Solaris 2.x was first released, but it was a good few years
later (4.1x/6.0x were probably the current versions of I4GL).
>> Also I guess I would like to know how difficult it would be to
>> upgrade to a modern-day version. Are there any gotchas or could I
>> immediately take this code into 7.3?
The code should compile under 7.3. The vast majority of it will work
the same. However, you'd have to worry about things like the use of
empty strings to mean NULL (discussed in another thread in c.d.i, I
think; unless it was an internal-to-Informix discussion).
Also, there are some aspects of the input statements which have changed.
If your code is pushing hard on the input statements, then you will
probably have some problems with the upgrade. If you take them at face
value, you probably won't have much difficulty.
>> What about on the database side? Currently it's accessing the
>> databases via sqlexec, direct to C-ISAM I guess. isql version is
>> 2.10. Does that mean I need only the C-ISAM component or would we
>> have to purchase Informix-SE or something?
You'd need to buy a server, either SE 7.24 or IDS 7.31 or IDS.2000 or
Foundation.2000 (both version 9.20). In the days of 1.10, there was no
separate SE product. At about the same time as I4GL 1.10.03 was
introduced, the Informix Turbo product was also released, and with
version 4.00 (the next version), SE was unbundled from ISQL and I4GL.
>> Is there a site or faq anywhere that lists all product versions
>> and release dates? The Informix web site seems to conveniently
>> forget has any old versions out there at all; I can't find
>> any relase info prior to version 7.2!
>>
>> Thanks much.
>>
>> Mike
>>
>> Sent via Deja.com http://www.deja.com/
>> Before you buy.
>
>You should move your data to a more recent engine, this should not be a
>difficult job as you can unload the data into a flat file for loading into
>the new version. The schema can similarly be moved using dbschema. Then
>try recompiling your code using a more recent 4GL compiler.
I'm not sure that DB-Export was available with I4GL 1.10. If it was,
then use it to export the old database and the new version of DB-Import
to import the data into the new database.
In principle, you might be able to get a 7.24 SE to access the 1.10
data. However, the older SunOS versions of C-ISAM (and hence SE and
I4GL) used a different file locking mechanism than the current one. So,
you'd probably have to go digging around some ancient, ancient archives
to find out what environment variable to set to upgrade the locking
mechanism. On average, I rate your chances as low -- export and import
is appropriate.
If you don't have DB-Schema, then we've got problems. Do you have ISQL?
If so, we can get around the problem by using an ACE report (I have an
old 1.10-ish version of dbschema written using ACE reports). If not,
then you'll have to take the ACE report and convert it to I4GL -- not
desparately hard. Actually unloading the data is more mechanical than
difficult; again, I4GL can do it fairly simply.
--
Yours,
Jonathan Leffler (jonathan.leffler@informix.com) #include <disclaimer.h>
Guardian of DBD::Informix v0.95 -- http://www.perl.com/CPAN
"I don't suffer from insanity; I enjoy every minute of it!"