01. september 2009 - 13:39Der er
4 kommentarer og 1 løsning
Samlign af to datoer/måneder
Jeg har brug for en måde at skulle udføre nogle rutiner når der gået 1 måneder og når der gået 2 måneder.
Har rodet med MonthsBetween, men jeg synes ikke at den gør det jeg troede den skulle. Jeg havde opfattelsen at hvis det var sådanne her:
case monthsbetween(Date,query1.FieldByName('DateOfRetire').AsDateTime) of 0 : begin ShowMessage('0 måneder er gået'); end; 1 : begin ShowMessage('1 måned er gået'); end; 2 : begin ShowMessage('2 måneder er gået'); end; end;
Men sådan er det ikke lige. Den beregner at 1 måned = 30.4375. Men de rutiner jeg skal udføre kan ikke gøres før det er den 31 og 62 dag.
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
Jeg tror at jeg kan løse det ved en CASE OF løsning og så have intervallet [1..31] og [32..] for hvis DateOfRetire er den 31-08-2009 og date er idag så vil forskellen være 1, hvilket er godt nok, for så er jeg heller ikke heelt så afhængig af at det liige skal ske præcis 1-2 måneder efter.
Du kan ligge et svar, for det du skrev sætte nogle andre tanker igang.
ok, og hvis du ikke allerede ved det så tænk på at Date og f.eks. .AsDateTime jo blot er double tal som man kan trække fra og ligge til. Dvs. hvis du skal ligge 10 dage til i dag så er det: x:=Date+10;
hvor x er defineret: var x : double;
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.