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



Sorry folks. This whole thread has got weird. We start off talking about the
importance of database independence and suddenly we are talking about
designing the perfect application that never needs the database to be
changed. I am sorry. That is not the real world. Even if you could design
the perfect application you have new applications and those applications are
going to require that existing tables be changed. The bottom line is that
databases change and all the time. The question is not whether you can
design the perfect applilcation no matter whether procedural or OO. The
question is how to allow the database to be changed with minimal impact on
existing applications which is the whole concept of SQL. A logical view of
data that is different than the physical view of the data. Every time you
hard wire the database into the application you have a problem and the cost
of that is going to increase and increase. There are solutions like
externalizing the I/O or uses field select logicals but my point is why when
you have SQL which was purpose designed for doing just that. The excuses I
hear is a hundred millionth of second slower or I just don't want to learn
anything new. I believe that our number one obligation beyond making sure
application is correct is being an application that is maintainable which is
why I use SQL.

I have said many times that the number one thing that AS/400 programmers
need to become proficient in is SQL. The rest of the world uses SQL. Not
knowing SQL is career suicide has far as I am concerned. Instead of fighting
SQL RPG programmers should be jumping in and taking every opportunity to
learn SQL.Not only are they building better applications they are gaining an
essential skills in the modern job market.

Anyone looking at the AS/400 job market should be doing anything they can to
prepare for transition to other platforms.

On Mon, Jul 11, 2011 at 8:48 AM, Jerry C. Adams <midrange@xxxxxxxx> wrote:

I'm not nearly as well versed in these things as you and Joe, but why would
one consider RPG (and here I'm assuming ILE RPG) to be an Achilles' Heel?
An Achilles' Heel is a weak point (usually a fatal one). Just because it's
tied so closely to the system (using, I think, the system's data management
routines among other things) shouldn't be cause for alarm. As Joe and
JHHL,
among others, have pointed out it always helps to be multilingual. Makes
me
wish I hadn't given up on C those many years ago.

RPG is not a fatal flaw - in my opinion - as long as Toronto keeps growing
it. Which they seem intent upon doing.

Jerry C. Adams
IBM i Programmer/Analyst
I think that the free-enterprise system is absolutely too important to be
left to the voluntary action of the market place. - Congressman Richard
Kelly (FL)
--
A&K Wholesale
Murfreesboro, TN
615-867-5070


-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx [mailto:rpg400-l-bounces@xxxxxxxxxxxx]
On Behalf Of john e
Sent: Monday, July 11, 2011 9:21 AM
To: RPG programming on the IBM i / System i
Subject: Re: RPG - I'm not dead yet!

Joe,

Ok, i didn't know that. An array defined as 3u0 is the trick. Thanks!
In my - rather limited - experience with RPG-to-Java, if a pass a character
field to Java to a byte-array it gets translated, which is not correct as
you already stated. Apparently, the compiler "sees" it's a normal field
(and
not a 3u0 field) and thus handles it as text.


Charles,
Ok, i didn't know that either, although, now you stated it, i knew or did
know (forgotten/biased?) that the JVM was implemented below SLIC, not above
which would be indeed very inefficient.


Maybe i'm a bit too harsh on OS/400, it is indeed - these days - a very
versatile platform.
Anyway, although i'm quite critical, i AM a fan of OS/400, the platform.
I'm just not a fan of RPG, and think it is the achillesheel of OS/400
development.







On Mon, Jul 11, 2011 at 3:50 PM, Joe Pluta
<joepluta@xxxxxxxxxxxxxxxxx>wrote:

On 7/11/2011 8:14 AM, john e wrote:
And... i know it will never, ever, be fixed, because nobody will
complain.
Maybe you, me, a couple others on this thread, but the "audience"is
just
tooo very small for IBM.
We just have to be thankful that there is something like RPG/Java
integration.


On Mon, Jul 11, 2011 at 3:10 PM, john e<whattssonn@xxxxxxxxx> wrote:

Joe,

I have one problem with RPG and Java integration however, a bit
off-topic,
but anyway. An alphanumeric field in RPG seems to be always translated
to a
byte-array, instead of a String. Then, RPG to Java support always
assumes
the field contains text, and thus always translates the contents to
UTF-16.
This is not correct. When just want to pass a field with bytes i can't
do
that, because it gets translated. The other way around would be
better,
never translate it automatically, and when it contains text i can
(manually
by invoking a routine) translate ebcdic to utf-16 and pass that. This
is
one
example of integration, which is ok, but still causing headaches
because
of
the "different" (i.e. ecbdic etc) nature of it. This always
translating
alpha fields to byte-arrays (not Strings but byte-arrays) is not
correct. It
seems like it wasn't well thought out.

This simply isn't true. If you want to pass untranslated data, pass it
as an array of 3u0. I do it all the time and it works perfectly. But
regardless, a character field is most definitely NOT a string! It is an
array of character data. You pass the data to Java, and then create a
string from those bytes, and that's Java's job. You can also do it in
your RPG program by calling the appropriate String method.

Personally, I think the integration of String and RPG CCSID is actually
very good.


Developing on the AS/400 and integrating with the rest of the world
always
seems problematic. With or without first-class support for JNI (which
RPG
has and is rather unique but.... doesn't work without hassles, again!)

And from my standpoint, the IBM i is the most open platform available
and talks to just about everybody. You can access it via web service or
ODBC or even direct calls to ILE through the Java toolbox. Few
platforms provide anything like the connectivity of the i.

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

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

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.