| |
|
|
- page 1 - |
|
Sato Pinto | allô Allerseits
Weiss quelqu'un si cela DateEdit control aussi den Wochenzahl ausgibt ou bien bleibt seulement qui Possibilité cela trop berechnen?
Gruss Sato |
|
|
| |
|
|
|
| |
|
- page 1 - |
|
Sato Pinto | allô Jac
merci pour den Tip, mais je crois qui DLL hat qui Wochen numéro Funktion pas, ou bien j'ai es übersehen
Gruss Sato |
|
|
| |
|
|
|
Jörg Sellmeyer | exposition la fois, si Dir que voici weiterhilft: [...] et cela: [...] |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 26.09.2008 ▲ |
|
|
|
|
Thomas Freier | ou bien qui le calendrier aus qui MMJ-Quellcodesammlung: [...] |
|
|
| |
|
|
|
Sato Pinto | allô de den genannten Lösungen funktioniert seulement cela le calendrier avec den Wochennummern de qui MMJ-Quellcodesammlung, doch vois je aucun Möglickeit seulement qui Wochennummer daraus trop fischen. weiss quelqu'un si cela Möglich ist?
Gruss Sato |
|
|
| |
|
|
|
Sato Pinto | allô Anscheinend ist qui Wochennummer berechnung aucun so leichte l'affaire. Habe un peu gegoogelt et cette code dans PowerBasic trouvé. Ist es Möglich es pour Xprofan umzusetzen? Fals es marcher sollte wird es bestimmt irgendwann aussi pour autre User usuel son.
Gruss Sato KompilierenMarqueSéparation*******************************************************
* Function Julian - returns Julian Day Number (JDN) *
* Actually it counts days elapsed since "11/25/-4713" *
* (= Nov. 25, 4714 BCE) *
*******************************************************
FUNCTION Julian(BYVAL year AS LONG, _
BYVAL month AS LONG, _
BYVAL day AS LONG) AS LONG
LOCAL Days AS LONG, yearsBC AS LONG, yearsAD AS LONG
IF month < 3 THEN January or February?
month = month + 12 13th or 14th month ....
DECR year .... of prev. year
END IF
yearsBC = 4714 - 1 4713 BC thru 1 BC
yearsAD = year - 1 1 AD thru (year of date minus 1)
Days = INT((yearsBC + yearsAD) * 365.25) calculate days in years
Days = Days - (year 100) substract century leapdays
Days = Days + (year 400) re-add valid ones
Days = Days + INT(30.6 * (month - 1) + .2) days in months elapsed (+ adjustment)
FUNCTION = Days + day days in month of date
END FUNCTION
***********************************************
* Function DayOfWeek returns day of the week, *
* where Monday = 1 .... Sunday = 7 *
***********************************************
FUNCTION DayOfWeek(JDN AS LONG) AS BYTE
FUNCTION = JDN MOD 7 + 1
END FUNCTION
***********************************************************************
* Function WeekOne returns first day of first week for the given year *
* Note: This is only a helper function for WeekNumber *
***********************************************************************
FUNCTION WeekOne(BYVAL year AS LONG) AS LONG
LOCAL temp AS LONG, Thursday AS BYTE
Thursday = 4
temp = Julian(year, 1, 1) - 1 Dec. 31 of prev. year
DO
INCR temp
LOOP UNTIL DayOfWeek(temp) = Thursday until first Thursday of year is found
FUNCTION = temp - 3 first day of first week is a Monday
END FUNCTION
*********************************************************************
* Function WeekNumber returns ISO-proof weeknumber for a given date *
*********************************************************************
FUNCTION WeekNumber(BYVAL year AS LONG, _
BYVAL month AS LONG, _
BYVAL day AS LONG) AS BYTE
LOCAL FirstDay AS LONG, FinalDay AS LONG, ToDay AS LONG
LOCAL WkNumber AS BYTE
FirstDay = WeekOne(year)
FinalDay = WeekOne(year + 1) - 1
ToDay = Julian(year, month, day)
SELECT CASE ToDay
CASE < FirstDay it is week 52 or 53, but which one?
therefore we need week one of previous year as a starting point
FirstDay = WeekOne(year - 1)
CASE > FinalDay there is only one possibility: week nbr 1
FUNCTION = 1
EXIT FUNCTION
END SELECT
FUNCTION = ((ToDay - FirstDay) 7) + 1
END FUNCTION
FUNCTION PBMain() AS LONG
MSGBOX "Dec. 31, 1997 falls in week " & FORMAT$(WeekNumber(1997, 12, 31)) & $CRLF & _
"Jan. 1, 1999 in week " & FORMAT$(WeekNumber(1999, 1, 1))
END ef='./../../references-fonction/XProfan/function/'>FUNCTION
|
|
|
| |
|
|
|
Thomas Freier | Ist es cela, quoi du brauchen peux: infdatum.zip de [...] ? |
|
|
| |
|
|
|
Jörg Sellmeyer | je comprends Dein Problem, à vrai dire, pas. ici mais est une Funktion/Procédure "Week" drin, qui oui c'est ca cela fait, quoi tu cherches: [...] |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 27.09.2008 ▲ |
|
|
|
|
Sato Pinto | allô Thomas
Vielen Dank, c'est oui c'est ca quoi il me faut. Hatte déjà den Link besucht, habe es übersehen. Gerhard Putschalka le chasseur ist une Fundgrube. aussi un besten Dank à Ihm
Gruss Sato |
|
|
| |
|
|
|
Sato Pinto | allô Jörg
Habe es getestet, mais viens avec cela pas bien sûr So comme verstanden habe muss je pour week une date eingeben. z.b week 28092008 Habe verschiedene Formate versucht: week "28-09-2008" ou bien week 20080928 mais keinen liefert un richtiges Ergebnis. fais je quoi faux?
Gruss Sato |
|
|
| |
|
|
| |
|
- page 2 - |
|
|
Jörg Sellmeyer | qui Procédure erwartet (malheureusement) cela date im Format Date$(0): ici peux mans voyons. si %PCount=0
dat$=date$(0)
endif
avec cela erhälst Du un Ergebnis: Imprimer Semaine("01.01.2005") avec: Imprimer Semaine() wird cela heutige date verwendet. avec: Imprimer Semaine(@DToC$("20070401")) peux Du aussi cela Datenbankformat verwenden. comment ist car cela Datumsformat sur Deinem PC? si es de "01.01.2008" abweicht, devrait on qui Routine la fois paraphraser. |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... | 27.09.2008 ▲ |
|
|
|
|
Sato Pinto | allô Jörg
merci, klappt prima
Gruss Sato |
|
|
| |
|
|
|
Sato Pinto | |
|
| |
|
|