Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Finding Sundays
Message
 
To
12/04/2000 14:20:28
Cetin Basoz
Engineerica Inc.
Izmir, Turkey
General information
Forum:
Visual FoxPro
Category:
Coding, syntax & commands
Title:
Miscellaneous
Thread ID:
00358746
Message ID:
00358851
Views:
15
>Well George I won the bet you found the errors :) Here is improved tested version :)
>
lparameters tnMonth, tnYear, tnDow, tnFDow
>tnFdow = iif(type("tnFdow")#"N",1,tnFdow)
>tnDow = iif(type("tnDow")#"N",1,tnDow)
>tnYear = iif(type("tnYear")#"N",year(date()),tnYear)
>tnMonth = iif(type("tnMonth")#"N",month(date()),tnMonth)
>
>ldStart=ctod("^"+str(tnYear,4)+"/"+padl(int(tnMonth),2,"0")+"/"+"01")
>ldEnd = gomonth(ldStart,1)-day(gomonth(ldStart,1))
>
>IF dow(ldStart,tnFdow) # tnDow
>  ldStart = ldStart + (7 + tnDow - dow(ldStart,tnFdow))
>ENDIF
>for ix = 0 to day(ldEnd-1) step 7
> if month(ldStart+ix)=month(ldStart)
>    ? ldStart+ix, cdow(ldStart+ix), dow(ldStart+ix,tnFdow) = tnDow
> endif
>endfor
Cetin,

And type checking (which I never do for internal functions) to boot. Very nice, my friend.
George

Ubi caritas et amor, deus ibi est
Previous
Reply
Map
View

Click here to load this message in the networking platform