Avatar billede danskeb Nybegynder
14. august 2002 - 12:21 Der er 21 kommentarer og
2 løsninger

If not ?

Hvordan definerer jeg følgende:

Check "retur"
hvis "retur" = "nej"

Response.Write "Udstyret returneres til:&nbsp;&nbsp;" & rs("forhandlernavn") & "<br>"

men hvis "retur" ="ja" returneres til kunde.

Response.Write "Udstyret returneres til:&nbsp;&nbsp;" & rs("kundenavn") & "<br>"
Avatar billede Slettet bruger
14. august 2002 - 12:24 #1
If retur = "nej" Then

Response.Write "Udstyret returneres til:&nbsp;&nbsp;" & rs("forhandlernavn") & "<br>"

Else

Response.Write "Udstyret returneres til:&nbsp;&nbsp;" & rs("kundenavn") & "<br>"

End If


???
Avatar billede Slettet bruger
14. august 2002 - 12:25 #2
Hvis du får retur fra en DB er det jo blot

If rs("retur") = "nej" Then

.......
Avatar billede a1a1 Novice
14. august 2002 - 12:26 #3
? hvor kommer retur fra

(er det ikke mange point for et så nemt svar)

hvis retur er i databasen...

If rs("retur") = "nej" Then
Response.Write "Udstyret returneres til:&nbsp;&nbsp;" & rs("forhandlernavn") & "<br>"

else
Response.Write "Udstyret returneres til:&nbsp;&nbsp;" & rs("kundenavn") & "<br>"

end if
Avatar billede danskeb Nybegynder
14. august 2002 - 12:27 #4
"retur" kommer fra samme db.
Avatar billede Slettet bruger
14. august 2002 - 12:31 #5
Stik mig 15 hvis du tager mit svar ;)
Avatar billede danskeb Nybegynder
14. august 2002 - 12:31 #6
Tja det virker jo, lige et tillægsspørgsmål :
Hvis værdien af "retur" er tom (gamle poster) kan jeg så gøre så den udfører ordren som hvis der stod "nej"
Avatar billede danskeb Nybegynder
14. august 2002 - 12:32 #7
I får 100 hver lige om lidt, jeg syntes da spørgsmålet var svært :)
Avatar billede a1a1 Novice
14. august 2002 - 12:33 #8
ja

If rs("retur") = "ja" Then
Response.Write "Udstyret returneres til:&nbsp;&nbsp;" & rs("kundenavn") & "<br>"

else
Response.Write "Udstyret returneres til:&nbsp;&nbsp;" & rsv("forhandlernavn") & "<br>"

end if

hvis retur ikke er = ja så tager den den anden
Avatar billede a1a1 Novice
14. august 2002 - 12:33 #9
jeg synes også at 15 er fino
Avatar billede Slettet bruger
14. august 2002 - 12:33 #10
If rs("retur") = "nej" OR rs("retur") = "" Then

Så skulle den gerne gøre det som hvis der stod nej
Avatar billede danskeb Nybegynder
14. august 2002 - 12:39 #11
i er sgu da skrappe :)

Ok, hvis i mener det kun er 15 points værd så har jeg da lige et spørgsmål mere:

når en kunde opretter en sag, sker det på et faktura nummer (feks 1111)

når så sagen er afsluttet sættes "status" = "færdig"

ved søgning søges der så på "nummer"  MEN
hvis nu kunden opretter en ny sag på SAMME fakturanummer (1111)
(er tilladt) og der laves en søgning vil den altid finde den første sag frem.

Kan man ikke gøre så der checkes på "status" og hvis "status" = "færdig" finder den KUN den sidste sag ??
Avatar billede a1a1 Novice
14. august 2002 - 12:44 #12
jo

SELECT TOP 1 * FROM <tabel> WHERE fakturanummer = 1111 ORDER BY ID DESC

Sorterer dem så den sidste kommer øverest (og tager kun 1 (TOP 1))

du har vel et autonummer felt der hedder ID (eller såndan noget)
Avatar billede Slettet bruger
14. august 2002 - 12:46 #13
Ja.. du har sikkert en query der ligner denne:

SELECT * FROM tabelnavn WHERE nummer = 1111

Lav den om til

SELECT * FROM tabelnavn WHERE nummer = 1111 AND status = 'færdig'

Så finder den ikke poster der ikke er færdige.

Men husk at den ikke finder noget hvis ingen sager er færdige!

Du må lige uddybe hvad du præcist ønsker. Skal en ufærdig sag komme frem hvis man ingen færdige har?
Avatar billede a1a1 Novice
14. august 2002 - 12:48 #14
eller noget ala

SELECT * FROM <tabel> WHERE fakturanummer = 1111 ORDER BY ID DESC

while not rs.eof
if rs("status") = "færdig" Then
response.write "Denne sag er færdig"
Else
response.write "Denne sag er IKKE færdig"
End If
Response.Write rs("fakturanummer")
rs.movenext
wend

vil udskrive dem alle i "omvendt" rækkefølge..:)
Avatar billede danskeb Nybegynder
14. august 2002 - 12:49 #15
Huh ?  det var sgu sort tale:

Her er starten på koden:
strSQL = "SELECT ID, nummer, forhandlernavn, forhandleradr, forhandlerpostnr, forhandlerby, forhandlertele, kundenavn, kundeadr, kundepostnr, kundeby, kundetele, kundeemail, type, kundeudstyr, dato, kundefejl, kunderep, kundepris, status, datoslut, policenr, password, retur FROM usgdatabase WHERE"
strSQL = strSQL & " (nummer LIKE '" & strKeyword & "')"
strSQL = strSQL & " OR (forhandlernavn LIKE '" & strKeyword & "')"
strSQL = strSQL & " OR (forhandleradr LIKE '" & strKeyword & "')"

osv.
Avatar billede danskeb Nybegynder
14. august 2002 - 12:51 #16
Haha, ja min forklaring var vist ikke god nok.
det skal være sådan at hvis samme "nummer" bruges igen og "status" = "færdig"
så vises den SIDSTE indtastede ved søgning.
Avatar billede Slettet bruger
14. august 2002 - 12:58 #17
Vi laver lige et scenarie:


bruger1:

nummer    status
1111          færdig
1111          ikke færdig


bruger 2:

nummer    status
1111          ikke færdig
1111          færdig


bruger 3:

nummer    status
1111          ikke færdig
1111          ikke færdig


bruger 4:

nummer    status
1111          færdig
1111          færdig


Kan du ikke lige fortælle hvilket resultat der skal komme hvis jeg søger på nummer 1111 i disse 4 brugeres poster?
Avatar billede a1a1 Novice
14. august 2002 - 13:03 #18
Her er starten på koden:
strSQL = "SELECT ID, nummer, forhandlernavn, forhandleradr, forhandlerpostnr, forhandlerby, forhandlertele, kundenavn, kundeadr, kundepostnr, kundeby, kundetele, kundeemail, type, kundeudstyr, dato, kundefejl, kunderep, kundepris, status, datoslut, policenr, password, retur FROM usgdatabase WHERE"
strSQL = strSQL & " (nummer LIKE '" & strKeyword & "')"
strSQL = strSQL & " OR (forhandlernavn LIKE '" & strKeyword & "')"
strSQL = strSQL & " OR (forhandleradr LIKE '" & strKeyword & "')"
strSQL = strSQL & " ORDER BY ID DESC"

åben db osv...

while not rs.eof
if rs("status") = "færdig" Then
response.write "Denne sag er færdig"
Else
response.write "Denne sag er IKKE færdig"
End If
Response.Write rs("fakturanummer")
rs.movenext
wend

vil udskrive dem alle i "omvendt" rækkefølge..:)

det må vel være det optimale (hvis der er 2 der ikke er lukket, ellers brug TOP 1 forrest så vil du kun få den sidste (under alle omstændigheder))
Avatar billede danskeb Nybegynder
14. august 2002 - 13:08 #19
Nahh det er forkert, jeg prøver lige igen:

lad os sige en kunde har købt en cykel på faktura nummer "1111"
cyklen gå så i stykker og han oprettet en sag med navn osv.

Fakturanummeret bliver det vi senere søger på.

Indtil nu er alt fint, når kunden går ind og søger får han oplysninger om reparationen ved at indtaste faktura nummer idette tilfælde 1111.

Når så cyklen er repareret sætter jeg status = færdig.

Alt virker stadig ok.

Nu går cyklen så istykker igen og kunden indtaster igen fakturanummer (1111) der oprettes nu en ny sag MEN når kunden går ind og søger på nummeret ser han den GAMLE sag og ikke den nye (den nye kan kun jeg se direkte i databasen)

Det skal være sådan at når der søges checkes "status" og er status =færdig søges der videre i databasen.
Avatar billede danskeb Nybegynder
14. august 2002 - 13:10 #20
Der er sikkert en enkelt løsning på problemet
Avatar billede a1a1 Novice
14. august 2002 - 13:24 #21
strSQL = "SELECT TOP 1 ID, nummer, forhandlernavn, forhandleradr, forhandlerpostnr, forhandlerby, forhandlertele, kundenavn, kundeadr, kundepostnr, kundeby, kundetele, kundeemail, type, kundeudstyr, dato, kundefejl, kunderep, kundepris, status, datoslut, policenr, password, retur FROM usgdatabase WHERE"
strSQL = strSQL & " (nummer LIKE '" & strKeyword & "')"
strSQL = strSQL & " OR (forhandlernavn LIKE '" & strKeyword & "')"
strSQL = strSQL & " OR (forhandleradr LIKE '" & strKeyword & "')"
strSQL = strSQL & " ORDER BY ID DESC"

så vil det altid være den sidste der kommer op, og kun en

(kan der være 2 der er "åbne" på en gang)
Avatar billede danskeb Nybegynder
17. august 2002 - 18:22 #22
Tak for svaret.
Avatar billede a1a1 Novice
17. august 2002 - 18:30 #23
:) selv tak
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