<BLOCKQUOTE><font size="1" face="Arial, Verdana">code:</font><HR><pre>def var Vdate as date FORMAT "99/99/9999" no-undo.
def var Vlast as date FORMAT "99/99/9999" no-undo.
REPEAT:
update vdate.
run get_last_day (INPUT Vdate, OUTPUT Vlast).
disp Vdate Vlast.
END. /* repeat */
PROCEDURE get_last_day :
DEFINE INPUT PARAMETER Vdate AS DATE NO-UNDO.
DEFINE OUTPUT PARAMETER Vlast AS DATE NO-UNDO.
IF MONTH(VDate) NE 12 THEN
Vlast = DATE( MONTH(Vdate) + 1 , 1, YEAR(Vdate)) - 1.
ELSE
Vlast = DATE( 1 , 1, YEAR(Vdate) + 1) - 1.
END.
/* end of sample.p */[/code]
def var Vlast as date FORMAT "99/99/9999" no-undo.
REPEAT:
update vdate.
run get_last_day (INPUT Vdate, OUTPUT Vlast).
disp Vdate Vlast.
END. /* repeat */
PROCEDURE get_last_day :
DEFINE INPUT PARAMETER Vdate AS DATE NO-UNDO.
DEFINE OUTPUT PARAMETER Vlast AS DATE NO-UNDO.
IF MONTH(VDate) NE 12 THEN
Vlast = DATE( MONTH(Vdate) + 1 , 1, YEAR(Vdate)) - 1.
ELSE
Vlast = DATE( 1 , 1, YEAR(Vdate) + 1) - 1.
END.
/* end of sample.p */[/code]