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.