× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.




The boss's boss wants a quicker turnaround of projects, so much so that we
have been asked to look into other languages available on the AS/400 (EGL
is the first one and that might mean another thread in and of itself)
He is tired of having to wait to change/recompile ALL the applicable
programs for a change to a file, then having to push the appropriate people
off the system so that these changes can be applied to the files on the production system
----
A laudable motivation on his part for the project.

FYI and FWIW, sometimes I've considered what it would be like to have externalized data access, like this. It could be done

==>One. Define the file itself first, and/or appropriate logicals.

==>Two. Write a service program with a global externally defined data structure for reading the file into said data structure and/or writing to the file from it.

==>Three. Procedures that receive parameters representing key values to access these files using said externally described data structure(s). This can be done with either RLA using RPG I/O opcodes or with SQL statements, take your pick. %Parms can be used in this connection for partial keys... To read, say:

Data1DS = File1( Key1: Key2: Key3: ) ---]

More subprocedures that simply return the current value for a given field:

P Field1 PR
D Field1 DS n
D Value 10a /free
Value = Data1DS.Field1
Return Value
/end-free

==>Four.Use this approach --using calls to the service program subprocedures-- in the programs that use the data from that file. Every time.

==>Five. When you need to add a field to this format, the only thing you have to change is the service program and recompile to use that file. If you have library lists set up properly, I believe you can implement the changed service program into production dynamically while other programs that use it are running, as they are bound upon activation.

==>Six. This would require some consistent shop discipline and maybe change management checks before promoting programs to production, but I think it's doable. Situations like you describe are precisely why many of us have considered this approach of externalizing data access this way. I speculate that the main reason it isn't implemented more in shops is just momentum.

--aec


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.