× 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.



Jerry,

What I've done is create a new physical with a different name,
normally using SQL DDL, then create a logical/SQL index with the
original name.

Rob touched upon this idea.

It helps if the original name is an RPGII / RPGIII 8 character name.
The new one can use all 10. :)



Charles

On Tue, Mar 23, 2010 at 12:45 PM, Jerry Adams <Jerry@xxxxxxxxxxxxxxx> wrote:
Charles,

True, and I've used that approach to "hide" fields from users.  For our system, though, there would be hundreds to changes, as you might imagine, for our Item Master. .-)  For future, new development (which doesn't happen often) I'll try to keep that option in mind.  One would still have to maintain the process(es) that keep the file up-to-date whether a master table or data file, but that should be only one or two programs.

Another alternative would, of course, be to use SQL.

Jerry C. Adams
IBM System i Programmer/Analyst
--
B&W Wholesale
office: 615-995-7024
email:  jerry@xxxxxxxxxxxxxxx


-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Charles Wilt
Sent: Tuesday, March 23, 2010 11:11 AM
To: Midrange Systems Technical Discussion
Subject: Re: when to use a function or file for information

An alternative is to never have an RPG program doing RLA to the
physical.  Instead always go through a logical that specifies the
fields included.

Then, you can add columns to the physical without needing to recompile anything.

The program(s) needing the new field(s) would use a new logical that
includes it.

yes, you end up with duplicate logicals, but the access paths end up
shared so you're not really paying a price for the extra logicals.

Charles

On Tue, Mar 23, 2010 at 11:39 AM, Jerry Adams <Jerry@xxxxxxxxxxxxxxx> wrote:
I'm lucky in that I am the only IBM i programmer here so keeping track of changes is relatively easy (except when the senility slips in).  In the case of a multi-programmer shop it can be difficult, even with programmer work libraries, to keep things in sync without some kind of CMS (even a homegrown one) where the objects are checked out.  Otherwise, you can spend a lot of time manually coordinating changes ("Hey, I need to add a field to the Customer Master.  Anybody else working on that one?").

I like Loyd's approach of adding fields to a secondary file.  In fact, I'm in the process of adding two fields to our sales history.  Rather than change a ton of queries and programs, I created an adjunct file with the same keys as the primary.  With a join of the two files (using DDS since SQL creates views which are non-keyed) I can access everything with one CHAIN, or I can access just the file that I need.  I've used the approach in the past for our Item Master and Customer Master tables, and it made life a lot easier.  Usually the adjunct tables and joins are used in fewer processes so adding a field to one of them is less of a maintenance pain.

Jerry C. Adams
IBM System i Programmer/Analyst
--
B&W Wholesale
office: 615-995-7024
email:  jerry@xxxxxxxxxxxxxxx


-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Chris Bipes
Sent: Tuesday, March 23, 2010 10:23 AM
To: Midrange Systems Technical Discussion
Subject: RE: when to use a function or file for information

We have this issue all the time.  What I am working towards is a single development file lib that is identical to production.  Now programmer put changed files into their own work library and all the objects they are changing.  Their development library is ahead of the general development library until they are ready to install.  Then they install to the general Development library and test.  From there they promote to production or QA depending on the scope of the project.

Chris Bipes
Director of Information Services
CrossCheck, Inc.

-----Original Message-----
From: midrange-l-bounces@xxxxxxxxxxxx [mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf Of Jonathan Mason
Sent: Tuesday, March 23, 2010 8:01 AM
To: Midrange Systems Technical Discussion
Subject: Re: when to use a function or file for information

Hi David

Surely if the value could be identified by referring to the CustomerType
then you wouldn't need the extra field anyway.

Really what it comes down to is basic change control for your system.
Anybody making a modification to a file should be running some kind of
impact analysis to identify which other objects (programs, queries, etc
) make use of the file so any changes or recompilations could be
actioned.

There are many change management tools out there and I'm sure if you
asked our host, Mr Gibbs, he could recommend a very good one that we
also use.

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.

--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

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.