Wochen pro Monat ? [erledigt]

Alle Fragen um die Programmierung, die sich sonst nicht kategorisieren lassen. Von Makro bis Codeblock, von IF bis ENDIF

Moderator: Moderatoren

Antworten
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12906
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 45 Mal

Wochen pro Monat ? [erledigt]

Beitrag von AUGE_OHR »

hi,

ich habe meine Monatsansicht im Kalender auf 6x7 ausgelegt.

nun gibt es aber Monate wo ich mit 5x7 aus käme und dann mehr "Platz" für die einzelnen "Cells" hätte.
Ich müsste es aber "vor" dem "malen" wissen ... z.Z. bearbeite ich alle Tage des Monats nacheinander.

gibt es dafür eine "Formel" ?

Nachtrag ... ich "denke" ich habe es :

Code: Alles auswählen

METHOD OWcal:WeekOfMonth(dDate)
LOCAL nYear
LOCAL nMonth
LOCAL dFirst
LOCAL dLast
LOCAL nDiff := 0
LOCAL nRet  := 5 // wir gehen von 5 aus

   nYear    := YEAR( dDate )
   nMonth   := MONTH( dDate )
// jeweils den 1st des Monats
   dFirst   := STOD(STRZERO(nYear,4)+STRZERO(nMonth  ,2)+ "01")
   dLast    := STOD(STRZERO(nYear,4)+STRZERO(nMonth+1,2)+ "01")
// Anzahl Tage
   nDiff    := dLast-dFirst
//
// Fr., Sa. und So. + 4 Wochen
// 
   IF (DOW(dFirst) > 6 .OR.  DOW(dFirst) = 1  ) .AND. nDiff > 28
      nRet  := 6
   ENDIF

RETURN nRet
gruss by OHR
Jimmy
Antworten