01. december 2011 - 15:03Der er
9 kommentarer og 1 løsning
Bergne uge i en måned
Hej,
Jeg har udfra en given dato brug for at beregne om dagen i datoen er den første, anden, trejde, fjerde (og af og til) femte uge i en måned.
Altså hvis vi tager den 15/12-2012 - så vil det give mig uge nr. 3 og den 29/12-2012 skal give mig 5 retur. Det med den sidste uge, har jeg ikke lige helt styr på - for den skal sættes til sidste uge og ikke uge 5.....
Men lige nu har jeg brug for at kunne beregne den og aner ikke hvordan - så langt jeg er kommet i min metode er følgende:
private int CalculateWeekNoInMonth(DateTime date) { int count = 0;
int month = date.Month; int year = date.Year;
return count; }
Håber nogen kan hjælpe mig - for jeg er lidt lost her....Jeg kan forestille mig, jeg (derfor min count) at jeg skal loope mig igennem hele måneden og så tælle antal den støder på dagen.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Sorry - læste det ups som at du fortrød dit forslag og ville have en uddybning fra mig. Den virker - tak.
Kan du også hjælpe mig med mit problem med at finde ud af om datoen er sidste uge i en måned.
Altså brugeren har en option hvor de kan vælge sidste fredag i en måned f.eks. (de giver en dato ind og nu skal jeg så finde frem til om jeg skal hente en bestemt linje ud) - den skal kun hentes ud, hvis datoen er den sidste i en måned....
Det er nok nemmere at se, hvad jeg vil, hvis du ser min kode;
if (sch.Month != null) { for (int j = 0; j != sch.Month.Length; j++) { //er ordren aktuel i date måned if (date.Month == sch.Month[j]) { //er day of month lig day of month i date if (sch.DayOfMonth.Length != 0) { for (int k = 0; k != sch.DayOfMonth.Length; k++) { if (sch.DayOfMonth[k] == date.Day) { ToBeExecutedByDate(sch.Id, date, costLocationId); // m_scheduleId.Add(sch.Id); breaked = true; break; } } } else if (sch.DayOfWeek.Length != 0) { //Test af om dayofweek sat for (int l = 0; l != sch.DayOfWeek.Length; l++) { //Test om ugen er lig med denne uge for (int m = 0; m != sch.WeekOfMonth.Length; m++) { string test = sch.WeekOfMonth[m].ToString();
//ugenr. i måned int weekNo = CalculateWeekNoInMonth(date);
if (sch.WeekOfMonth[m] != 5) { if (sch.WeekOfMonth[m] == weekNo) { //er denne valgfri, eller lig dag i date så tilføj til m_schedule if (sch.DayOfWeek[l] == 0) { ToBeExecutedByOptionelDay(sch.Id, date, costLocationId); //m_scheduleId.Add(sch.Id); breaked = true; break; } dayOfWeek = sch.DayOfWeek[l]; if (dayOfWeek == 7) { dayOfWeek = 0; } if (dayOfWeek == (int)date.DayOfWeek) { ToBeExecutedByDate(sch.Id, date, costLocationId); //m_scheduleId.Add(sch.Id);
breaked = true; break; } } } else { //Her skal jeg nu teste om date er sidste uge i en måned - altså om dagen er den sidste dag i en måned }
} } } if (breaked) break; } }
Det er sidste del, jeg nu har problemer med at finde ud af om datoen er sidste uge i en måned
Ja, men her er der jo snak om at dele en måned op i uger(teknisk set) og ikke så meget hvad uger nummer vi har i nuværende år.
mvh
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.