Thanks everyone!

And Ken - you've made my day by making me feel so stupid :) Seriously thanks
for the input. And in the mean time I've learned a lot about the quirks of
"convert" - tip is to ensure the time is 2am....

On 13/05/07, Ken Ray <[EMAIL PROTECTED]> wrote:

On Sun, 13 May 2007 19:18:25 +0100, David Bovill wrote:

> This command passes the test:
>
> on date_AddMonth monthsToAdd, startDate, @endMonth, @endYear
>    /*
>    Problem is if new month has less days in it than the original start
date
> days
>    then just adding a month will add 2 months on conversion as the
overlap
> pushes it over the month
>
>    -- can add extra month if next months max days are shorter
>    -- not a bug a feature? Or could trucate day to last of month?
>    */
>
>    convert startDate to dateItems
>    put startDate into someDate
>
>    put item 3 of someDate into oDay
>
>    put 1 into item 3 of someDate
>    put 2 into item 4 of someDate    # seems to be required !!!
>    add monthsToAdd to item 2 of someDate
>    convert someDate to dateItems
>
>    put item 1 of someDate into endYear
>    put item 2 of someDate into endMonth
>
>    put oDay into item 3 of someDate
>    convert someDate to internet date
>    return someDate
> end date_AddMonth

How about this:

on date_AddMonth monthsToAdd, startDate, @endMonth, @endYear
  put item 1 of startDate into tYear
  put item 2 of startDate into tMonth
  put (monthsToAdd+tMonth) mod 12 into endMonth
  if endMonth = 0 then put 12 into endMonth
  put ((monthsToAdd+tMonth) div 12) + tYear into endYear
end date_AddMonth
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to