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



I did miss that. I'm assuming that MyDate is a real date field or, at
least, always the same type??

What about....
JoinDate( MyDate : %int(myYear) : : %int(myMonth) : %int(myDay);

I'd still do SplitDate() with integer components. If you need to change
them after the fact, just deal with that.

Two procedures....


0jsalazarm@xxxxxxxxxxxxx 01/12/2010 11:51:09 AM >>>
Roger, the problem is that our date fields are stored YY, MM DD
components with packed/zoned/integer and binary types. To modify
parameters by reference I'd need one procedure for each combination.

I doubt anyone here knows why we have that mishmash of types.

--
Saludos
Antonio Salazar

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Roger Harman
Sent: Tuesday, January 12, 2010 1:37 PM
To: rpg400-l@xxxxxxxxxxxx
Subject: RE: RPG overloading (was RPGV?)

There is no law that says a procedure can't modify parameters. You can
do PRECISELY what you want as stated.

MyDate = JoinDate(YY : MM : DD);
-or-
JoinDate(MyDate : YY : MM : DD);

SplitDate(MyDate : YY : MM : DD);


Jon and/or Susan have written articles discussing this.



0jsalazarm@xxxxxxxxxxxxx 01/12/2010 11:05:20 AM >>>
Precisely, I wanted the procedure to receive a date and three numerical
parameters and return YY, MM and DD on the numerical fields, that would
have been a very clean way to handle our mess of date fields.

It could have been done by calling three procedures with the same date,
but the solution started to look worse than the remedy. We settled for
DSs and %BIFs instead of procedures, although it would have been great
to manage the date conversions with just two procedures.

Instead of arithmetic and BIFs I wanted something like this:
MyDate = JoinDate(YY, MM, DD);
SplitDate(MyDate, YY, MM, DD);

--
Saludos
Antonio Salazar

-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of rob@xxxxxxxxx
Sent: Tuesday, January 12, 2010 12:51 PM
To: RPG programming on the IBM i / System i
Subject: RE: RPG overloading (was RPGV?)

Well, if you returned the variable in the parms and not the return field
I
can see where you'd have difficulty. But if you did
mm=%subdt(current date:*months);
yy=%subdt(current date:*Y) - (%int(%subdt(current date:*Y)/100)) * 100;
dd=%subdt(current date:*days);
wouldn't that work regardless of mm was packed, zoned, integer or
whatever?

Rob Berendt

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.