Avatar billede schwaner Nybegynder
30. januar 2004 - 10:56 Der er 10 kommentarer og
1 løsning

If-sætning med datoer

Hej med jer.

Er der en der kan svare på hvad jeg gør galt her:

if todate(SD_Res("udlobsdato")) >= GETDATE() AND todate(SD_Res("opretdato")) =< GETDATE() Then
  tjek = "yes"
  id = SD_Res("id")
else
  tjek = "dato"
end if
Avatar billede eagleeye Praktikant
30. januar 2004 - 11:08 #1
Der er ikke en GETDATE den hedder bare Date, også sæt Cdate omkring så det formateres ens:

if CDate(todate(SD_Res("udlobsdato"))) >= DATE() AND CDate(todate(SD_Res("opretdato"))) =< DATE() Then
Avatar billede schwaner Nybegynder
30. januar 2004 - 11:13 #2
Jeg har lige forsøgt den sætning du kom med men har fået følgende fejl på den:
Fejltype:
Der opstod en Microsoft VBScript-kørselsfejl (0x800A000D)
Typerne passer ikke sammen: 'todate'
/tekstlink/tjek.asp, line 16

Jeg har disse to værdier i udlobsdat og opretdato:
udlobsdato = 01-04-2005
opretdato = 01-01-2005

Nogen forslag?
Avatar billede erikjacobsen Ekspert
30. januar 2004 - 11:13 #3
Det hedder vel GETDATE() på en MS-SQL-server, og DATE() i Access. Hvilket databasesystem bruger du?
Avatar billede erikjacobsen Ekspert
30. januar 2004 - 11:14 #4
Og ok, det er så ikke en SQL-sætning ;)  Min tankegang kortsluttede vist på grund
af GETDATE og på grund af at jeg synes at dette er fornuftigst at gøre i SQL.
Avatar billede schwaner Nybegynder
30. januar 2004 - 11:15 #5
erikjacobsen - jeg bruger MS-SQL, men er det ikke et spørgsmål om hvad der skal benyttes i ASP'en? Jeg bruger ikke IF-sætningen i DB'en men i ASP koden. Har det så nogen betydning hvad jeg bruger af DB?
Avatar billede eagleeye Praktikant
30. januar 2004 - 11:15 #6
Antager naturligvis det vister ikke er en macro i databasen men noget ASP kode på en ASP side :)
Avatar billede eagleeye Praktikant
30. januar 2004 - 11:19 #7
giver det dette 01-04-2005 når du udskriver en af kolonnerne på siden?
Avatar billede schwaner Nybegynder
30. januar 2004 - 11:19 #8
Okay. For at slå en hver tvivl i jorden så ligger det i ASP'en. Jeg kan desværre ikke bruge den på DB niveua da jeg skal bruge IF-sætningen til at sætte en sessions variabel lidt længere ned i programmet.

Har I nogle forslag til hvorfor den ikke kan få todate og 01-01-2005 til at passe sammen?
Avatar billede schwaner Nybegynder
30. januar 2004 - 11:19 #9
Eagleeye - ja det er resultatet fra en Response.write().
Avatar billede eagleeye Praktikant
30. januar 2004 - 11:21 #10
Prøv lige uden todate , eller er det en function du slev har lavet?:

if CDate(SD_Res("udlobsdato")) >= DATE() AND CDate(SD_Res("opretdato")) =< DATE() Then
Avatar billede schwaner Nybegynder
30. januar 2004 - 11:25 #11
Der var den!!!! Tak for hjælpen, nu er weekenden kommet et skridt nærmere :-)
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester