/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
IF sætning
Fra : Ukendt


Dato : 20-09-07 09:02


Hej NG

Jeg er ved at lave en IF sætning...

Linie 108 ----> <td width="7%" align="center"><%IF
DateSerial(Year(RS1("Dato"))),DateSerial(Month(RS1("Dato"))),DateSerial(Day(RS1("Dato"))))=DateSerial(Year(datDato)),DateSerial(Month(datDato)),DateSerial(Day(datDato)))
AND RS1("Godkendt") = "True" THEN <----Linie 108 slut
Response.Write "<input type=" & "checkbox"
& " name=" & "C" & Tael & " value=" & "selected"
Exit Do
ELSE
Response.Write "<input type=" & "checkbox"
& " name=" & "C" & Tael & " value=" & "ON" & "_" & datDato & "%" &
RS("FraktionNummer") & ">"
Exit Do
END IF%></td>

Jeg får denne fejl:

Fejltype:
Der opstod en Microsoft VBScript-kompileringsfejl (0x800A03F9)
'Then' var ventet
/snapind/dag_ugerapport.asp, line 108, column 32
IF
DateSerial(Year(RS1("Dato"))),DateSerial(Month(RS1("Dato"))),DateSerial(Day(RS1("Dato"))))=DateSerial(Year(datDato)),DateSerial(Month(datDato)),DateSerial(Day(datDato)))
AND RS1("Godkendt") = "True" THEN


Jeg har nok stirret mig blind...
Kan i hjælpe...

Hilsen
Bjarne
"Every day new surprises"



 
 
Michael Zedeler (20-09-2007)
Kommentar
Fra : Michael Zedeler


Dato : 20-09-07 10:14

bsn wrote:
> Jeg er ved at lave en IF sætning...
>
> Linie 108 ----> <td width="7%" align="center"><%IF
> DateSerial(Year(RS1("Dato"))),DateSerial(Month(RS1("Dato"))),DateSerial(Day(RS1("Dato"))))=DateSerial(Year(datDato)),DateSerial(Month(datDato)),DateSerial(Day(datDato)))
> AND RS1("Godkendt") = "True" THEN <----Linie 108 slut
> Response.Write "<input type=" & "checkbox"
> & " name=" & "C" & Tael & " value=" & "selected"
> Exit Do
> ELSE
> Response.Write "<input type=" & "checkbox"
> & " name=" & "C" & Tael & " value=" & "ON" & "_" & datDato & "%" &
> RS("FraktionNummer") & ">"
> Exit Do
> END IF%></td>
>
> Jeg får denne fejl:
>
> Fejltype:
> Der opstod en Microsoft VBScript-kompileringsfejl (0x800A03F9)
> 'Then' var ventet
> /snapind/dag_ugerapport.asp, line 108, column 32
> IF
> DateSerial(Year(RS1("Dato"))),DateSerial(Month(RS1("Dato"))),DateSerial(Day(RS1("Dato"))))=DateSerial(Year(datDato)),DateSerial(Month(datDato)),DateSerial(Day(datDato)))
> AND RS1("Godkendt") = "True" THEN
>
> Jeg har nok stirret mig blind...

Det er meget nemmere hvis du skriver din kode anderledes op, så den er
nemmere at overskue.

lad være med at skrive html og vbscript på samme linie.
Lav ekstra linieskift så du kan se hvad der foregår.
Indentér din kode.

Kode som
DateSerial(Year(RS1("Dato"))),DateSerial(Month(RS1("Dato"))),DateSerial(Day(RS1("Dato"))))=DateSerial(Year(datDato)),DateSerial(Month(datDato)),DateSerial(Day(datDato)))

er fuldstændig vanvittigt at have på en linie. Bryd det op i flere
linier hvor du hælder delresultater i midlertidige variable.

Når du har gjort det, er dit problem løst. Som bonus læser du også en
masse fremtidige problemer, hvis du blot tillægger dig disse vaner.

Mvh. Michael.

Jørn Andersen (21-09-2007)
Kommentar
Fra : Jørn Andersen


Dato : 21-09-07 02:01

On Thu, 20 Sep 2007 10:01:57 +0200, "bsn" <bsnSNABELAoncableDOTdk>
wrote:

>
> Linie 108 ----> <td width="7%" align="center"><%IF
>DateSerial(Year(RS1("Dato"))),DateSerial(Month(RS1("Dato"))),DateSerial(Day(RS1("Dato"))))=DateSerial(Year(datDato)),DateSerial(Month(datDato)),DateSerial(Day(datDato)))
>AND RS1("Godkendt") = "True" THEN <----Linie 108 slut
<snip>

>Fejltype:
>Der opstod en Microsoft VBScript-kompileringsfejl (0x800A03F9)
>'Then' var ventet
>/snapind/dag_ugerapport.asp, line 108, column 32

Så vidt jeg kan se, er column 32 *senest* ved starten af din: <% IF
Med andre ord brokker den sig over, at en IF-linie *før* linie 108 ikke
er afsluttet med et Then.

Derudover kan jeg helt tilslutte mig Michaels bemærkninger
Især kan det være problematisk at tilgå den samme rs("xxx") flere gange.
Gem den i en variabel - det gør også din kode simplere.


Good luck!

--
Jørn Andersen,
Brønshøj

Jørn Andersen (21-09-2007)
Kommentar
Fra : Jørn Andersen


Dato : 21-09-07 02:54

On Thu, 20 Sep 2007 10:01:57 +0200, "bsn" <bsnSNABELAoncableDOTdk>
wrote:

> Linie 108 ----> <td width="7%" align="center"><%IF
>DateSerial(Year(RS1("Dato"))),DateSerial(Month(RS1("Dato"))),DateSerial(Day(RS1("Dato"))))=DateSerial(Year(datDato)),DateSerial(Month(datDato)),DateSerial(Day(datDato)))
>AND RS1("Godkendt") = "True" THEN <----Linie 108 slut

Et andet tip:
Hvis du vil sammenlige to dato/tid-værdier uden at tage hensyn til tiden
(men kun dato), så prøv med:

If DateValue(rs1("Dato")) = DateValue(datDato) Then

Det er lidt mere overskueligt

Good luck!

--
Jørn Andersen,
Brønshøj

Ukendt (22-09-2007)
Kommentar
Fra : Ukendt


Dato : 22-09-07 08:54


"Jørn Andersen" <jorn@jorna.dk> skrev
>
>> Linie 108 ----> <td width="7%" align="center"><%IF
>>DateSerial(Year(RS1("Dato"))),DateSerial(Month(RS1("Dato"))),DateSerial(Day(RS1("Dato"))))=DateSerial(Year(datDato)),DateSerial(Month(datDato)),DateSerial(Day(datDato)))
>>AND RS1("Godkendt") = "True" THEN <----Linie 108 slut
>
> Et andet tip:
> Hvis du vil sammenlige to dato/tid-værdier uden at tage hensyn til tiden
> (men kun dato), så prøv med:
>
> If DateValue(rs1("Dato")) = DateValue(datDato) Then
>
Tak for rådene begge to...
Fejlen lå i DateSerial func, som i kan se (har DateSerial foran både
year,month,date...dooohhhh)
Det må have været sent på natten....
Bjarne



Jørn Andersen (22-09-2007)
Kommentar
Fra : Jørn Andersen


Dato : 22-09-07 14:38

On Sat, 22 Sep 2007 09:53:45 +0200, "bsn" <bsnSNABELAoncableDOTdk>
wrote:

>Fejlen lå i DateSerial func, som i kan se (har DateSerial foran både
>year,month,date...dooohhhh)

Den havde jeg også overset

>Det må have været sent på natten....

Ja, eller også understrger det, at det kan betale sig at lave så
oveskuelig kode som muligt ...


Mvh. Jørn

--
Jørn Andersen,
Brønshøj

Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409080
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste