Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VB6: Recordset: n arvioiminen

Baldie [06.04.2004 14:33:11]

#

Miten pystyn arvioimaan recordsetin arvoja, tai lähinnä sitä tuleeko sieltä mitään arvoa. oRS.EOF ei toimi, eikä RecordCount. Koska recordset palauttaa kuitenkin tyhjän rivin.

Eli seuraavaan pitäisi luoda ehto, mikäli kannasta ei saada irti keskiarvo tulos: ta?

'haetaan tulos tietokannasta
sSQL = "SELECT ROUND(Avg((O.Tulos/T.Tavoite)*100),2) AS Tulos FROM ......

Set oRS = modSQL.HaeRecordSet(sSQL)

'Tähän väliin pitäisi saada ehto, mikäli ei saada järkevää numeerista keskiarvoa.

'asetetaan moduulin piirtoehdolle arvo
ka = oRS.Fields.Item("Tulos").Value

'asetetaan viivan alkupisteeksi
If ka < 2.5 Then
X1 = 500
Y1 = 1600
..........

hunajavohveli [06.04.2004 14:41:41]

#

Tarvitaanko siinä mitään erikoisia palautusarvoja? Sen kun pistät vain: arvo = Val(arvo)
Mikäli arvo ei satu jostain syystä olevaan numeerinen, niin tuo Val muuttaa sen numeeriseksi.

Baldie [06.04.2004 14:51:00]

#

Niinno, mutta jos kannassa ei ole valideja arvoja, eli keskiarvoa ei saada, tulee
oRS.Fields.Item("Tulos").Value:ksi null, kuitenkaan en saanut sitä toimimaan if oRS.Fields.Item("Tulos").Value = null- ehdolla, herjaa vaan väärästä null-arvosta..

hunajavohveli [06.04.2004 15:21:24]

#

Siis onko tuo "oRS" se minkä arvoa tässä nyt pitää tutkia?

Baldie [06.04.2004 15:50:54]

#

Kyllä, oRS on recordset, command(sSQL): n perusteella, tämän recordset: n arvoa "tulos" pitää tutkia. Mikäli tulos on tietyllä välillä, piirretään viiva annettavin koordinaatein. Mikäli recordsetistä(oRS) ei saada järkevää arvoa, ts. tulee tyhjä rivi. Ei viivaa piirretä.

Vastaus

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

Tietoa sivustosta