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



Even better...

select a.key1, a.key2, a.somefield, b.otherfield
from fileA A join FileB B using (key1, key2)

Of course the JOIN USING syntax is slightly broken at v5r4.

The standards call for the result set to include only one set of the
key fields..so you aren't supposed to need the qualification..

select key1, key2, a.somefield, b.otherfield
from fileA A join FileB B using (key1, key2)

This is fixed at 6.1

It's not to big a deal unless you want to do multiple joins with the
USING syntax..

from (fileA A join FileB B using (key1, key2))
join FileC C using (key1, key2)

note: parens add for clarity

The above won't work at v5r4 but will at 6.1 as the result of the join
between FileA and FileB includes only one Key1 and key2 fields.

HTH,
Charles





On Mon, Sep 28, 2009 at 9:23 AM, <rob@xxxxxxxxx> wrote:
<snip>
If I only had to code for VRM540 and above I would probably drop the
prefix and use PREFIX to map file field names to qualified data
structures.
</snip>

Amen brother.  We had a vendor package that even many releases ago would
use the same field name in all files.  For example, if it was ITEMNBR then
it would be ITEMNBR in all files, not AAITEMNBR, BBITEMNBR, etc.  Even
though all programs had to manually use I specs to rename the columns
(think RPG/400 not RPGLE).  Now it's so easy with PREFIX and QUALIFIED
that there's no need to keep them all separate.  Even ancient tools like
Query/400 support T01.ITEMNBR, T02.ITEMNBR.

And it sure makes it easy to find a field by using
SELECT SYSTEM_COLUMN_NAME, SYSTEM_TABLE_NAME, SYSTEM_TABLE_SCHEMA
FROM syscolumns
WHERE system_column_name='ITEMNBR'

Try that on your system.

ps:  What's DDS?  :-)


Rob Berendt
--
Group Dekko Services, LLC
Dept 01.073
Dock 108
6928N 400E
Kendallville, IN 46755
http://www.dekko.com





From:
Simon Coulter <shc@xxxxxxxxxxxxxxxxx>
To:
RPG programming on the IBM i / System i <rpg400-l@xxxxxxxxxxxx>
Date:
09/28/2009 07:02 AM
Subject:
Re: Use of DDS field names in RPG
Sent by:
rpg400-l-bounces@xxxxxxxxxxxx




On 28/09/2009, at 6:18 PM, David FOXWELL wrote:


Although, I realise the limitations of this. I can't use EVAL-CORR
while I have this kind of prefix.

You can use PREFIX creatively on both the file definition and the data
structure definition to remove the first character from the field
name. Used in conjunction with QUALIFIED data structures you should be
able to use EVAL-CORR quite happily.


What kind of field naming standards are you using in DDS?


I generally use a 2-character file prefix with up to 8 characters for
the field identifier itself. I also specify a meaningful ALIAS for SQL
access. Six character field names (as in your convention) are no
longer needed with RPG IV.

The only reason for the prefix is RPG's insistence that each field
name refers to a single storage location. Languages that support
qualification (e.g., COBOL and C) don't need this sort of work around.

If I only used SQL for data access I would drop the prefix. If I only
had to code for VRM540 and above I would probably drop the prefix and
use PREFIX to map file field names to qualified data structures.

Regards,
Simon Coulter.
--------------------------------------------------------------------
   FlyByNight Software         OS/400, i5/OS Technical Specialists

   http://www.flybynight.com.au/
   Phone: +61 2 6657 8251   Mobile: +61 0411 091 400        /"\
   Fax:   +61 2 6657 8251                                   \ /
                                                             X
                 ASCII Ribbon campaign against HTML E-Mail  / \
--------------------------------------------------------------------



--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing
list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-l.



--
This is the RPG programming on the IBM i / System i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/rpg400-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.