boolean veld en checkbox

Status
Niet open voor verdere reacties.

djemmers

Gebruiker
Lid geworden
7 jul 2006
Berichten
129
Ik haal uit een acces db de waarden om een checkbox aan en uit te vinken.
Maar dat wil niet werken...
Hieronder hoe ik het doe:

ik maak een datastring met heel wat gegevens in strData genaamd
op volgende manier:
Code:
rst.Open "SELECT * FROM tblOnverwerkteInschrijvingen WHERE inscr_ID = " & intCurInscr, cnn, adOpenStatic, adLockOptimistic
    'verwerk ind veld
    intTeller = 0
    Do While intTeller <= 37
        Debug.Print intTeller
        strData(intTeller) = rst.Fields(intTeller) & ""
    
        intTeller = intTeller + 1
    Loop
rst.Close
later wil ik dat als op plaats 34 waar staat (is een ja/nee gegevenstype in accesdatabank) een checkbox (chkCorr(1)) aangevinkt wordt
Code:
If (strData(34) = True) Then
        frmMedewerker.chkCorr(1).Value = vbChecked
    Else
        frmMedewerker.chkCorr(1).Value = vbUnchecked
    End If
End if

maar chkCorr wil dus nooit aangevinkt worden

als ik een textvlak maak (frmmedewerker.Text1)
en hetvolgende doe

frmmedewerker.Text1.Text = strData(34)

zie ik dat dat de waarde "Waar" gekregen heeft.

Kan iemand me zeggen wat ik verkeerd doe?

Ik wil dus als strData(34) true is chkCorr(1) aanvinken en anders niet
 
Zo te lezen gebruik je twee datatypes door elkaar. Eerst vul je een String array (je pakt de waarde uit de resultset en voegt er een lege string aan toe) en vervolgens lees je die uit alsof het een boolean is.

Ik vind het sowieso vreemd dat er geen error op gegeven wordt. Ik heb het namelijk even getest en als er "True" of "False" in de string staat, dan lijkt je opzet goed te gaan, maar zodra ik "Waar" in de string zet, dan krijg ik een error. En aangezien er in de string blijkbaar "Waar" staat (dat komt immers in je textfield te staan), zou er volgens mij een error moeten komen.

Wat ik me afvraag is waarom je eerst alle waardes uit de resultset in een string array zet en waarom je niet gewoon in zo'n vergelijking direct de resultset gebruikt? Dat zou namelijk mijn oplossing zijn in dit geval.
 
je hebt volledig gelijjk

maar ik moet een applicatie aanpassen (nt zelf geschreven) en als ik zonder die strData zou werken moet ik alles aanpassen (pagina's en pagina's code) waardoor ik eigenlijk beter een volledig nieuwe app maak maar daar is er geen tijd voor.

Ondertussen wel de oplossing gevonden:
waar het om een boolean veld gaat
gewoon Lcase(strdata(34)) gebruiken en alles werkt pico bello

bedankt voor je reactie
 
Altijd lastig om in andersmans software aanpassingen te moeten maken. Met andere woorden: ik ken het probleem. Maar ik ben blij dat het werkt. Enne, niks te danken.
 
ik doe niets anders :-(
en telkens in talen die ik niet echt ken
(maar daardoor leer ik wel bij)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan