Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: Pudotusvalikon sisällön jatkuva päivittäminen

JOUGA [30.07.2005 16:52:35]

#

Hau,

Törmäsin tuossa pulmaan johon en (vaihteeksi) löydä omaa ratkaisua. Kokeilin tässä koodailemaani Access-tietokantaa ja pelittää aikaslailla niin kuin oli tarkoituskin mutta huomasin pikku fibauksen. Formissa on Pudotusvalikko KOULUTUSALA, johon tiedot tulevat SQL-kyselyllä sekä pudotusvalikko NIMI, johon tiedot tulevat myös SQL-kyselyllä KOULUTUSALA-valikossa tehdyn valinnan mukaan. Nämä toimivat heti sovelluksen avaamisen jälkeen mutta mikäli KOULUTUSALA:sta valitaan arvo uudestaan niin NIMI-valikko ei enää päivitykkään tämän uuden arvon mukaisesti. Epäilenpä että ei saa toimimaan SQL:llä, joten täytynee tehdä VB:llä(6.0).

Pulmana on siis jotta mitenkäs tälläinen päivittäminen saadaan aikaan ? Onkos VB:ssä esim. jotain sen tapaista käskyä kuin WhenFocused tms. jonka arvoksi voisi antaa tuon SQL-kyselyn ? Tai jotain muuta vaihtoehtoa ?

neau33 [30.07.2005 17:05:48]

#

No sä yksinkertaisesti pistät sen NIMI valikon päivittymään aivan samalla tavalla kun se päivittyy ohjelman avaamisen yhteydessä elikä...laita se toiminto nyt sinne aliohjelmaan ja kutsu sitä uudestaan silloin kun sä valitset uuden KOULUTUSALAN niin päivittyy...

'esim.
If kolutusala = x Then ali_ohjelma
'tai
Select Case koulutusala
 Case 1: ali_ohjelma
 'jne.
 End Select

Antti Laaksonen [31.07.2005 22:57:33]

#

Kirjoita päivityskoodi pudotusvalikon Click-tapahtumaan, niin koodi suoritetaan aina, kun valikosta valitaan toinen kohta hiirellä tai näppäimistöllä.

JOUGA [01.08.2005 18:37:19]

#

Heipsan Antti,

Tuota mielestäni kokeilin ensimmäisenä ja nyt juuri kokeilin uudestaan mutta ei pelitä. En tiedä sitten mistä kiikastaa.
Yhd.Ruutu:Haku_NIMI sisältää:
Rivilähteen tyyppi = Taulukko/kysely
Rivilähde = Haku_Nimet_AlanMukaan

jossa Haku_Nimet_AlanMukaan on SQL-kysely:
SELECT [NIMI]FROM OPETTAJAT WHERE (KOULUTUSALA=[Haku_KOULUTUSALA]) ORDER BY [NIMI].

Yhd.Ruutu:Haku_KOULUTUSALA sisältää:
Rivilähteen tyyppi = Taulukko/kysely
Rivilähde = Haku_Koulutusalat

tiedot taas haetaan tällä SQL-kyselyllä:
SELECT DISTINCT ([KOULUTUSALA) AS [Haku_Koulutusala] FROM OPETTAJAT.

Toimivat niin kuin pitääkin sen yhden kerran kun pudotusvalikoista valitaan arvot mutta uudelleen valittaessa KOULUTUSALAsta jokin toinen arvo, ei NIMI-valikko enää päivitykkään. Varmaan aikas simppeli ratkasu löytynee vaan itse en kyllä tiedä miten edetä.

neau33 [01.08.2005 20:17:08]

#

Hello JOUGA!

Oletetaan, että sä olet nyt hakenut sen tietokantas suoraan klikkaamalla sieltä properties valikosta.
No sinne tulee sit automaattisesti polku ja tietokannan nimi (DatabaseName). DataSource:lla sä osotat siihen Data-ohjaimeen esim. Data1, RecodSource:lla sä ilmoitat Mistä taulusta tai millä SQL-ilmauksella sä haet tietuetta/tietueita (recordset) ja datafield'llä kenttää... Sit kokeile jos siitä datohjaimesta löytyy semmonen toiminto, kun .refersh jos se auttais, kun sä vaihtelet niitä tauluja, tietueita ja kenttiä...

Toivottavasti aukenee...

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta