Moi
- Miten alla oleva UNION-kysely saadaan toimimaan Stored Proseduurissa?
- Miten saadaan WHERE:n lisättyä tai jätettyä pois Stored Proseduurista?
- Pitääkö WHERE-lause muodostaa Stored Proseduurissa tuomalla ko. muuttujat sinne?
Tässä viat ja vastaukset ovat eri tauluissa jotka pitäisi saada yhdistettyä
päivämäärän mukaan lajiteltuna,lisäksi auton tyyppi,malli ja rekisteritunnukset
ovat omissa taulukoissa sekä järjestelmä-taulukko (tblSysteemi) joka
kertoo mihin järjestelmään vika kuuluu, on tallennettu omaan taulukkoon.
Rekisteritunnusta ja järjestelmää yhdistää tblSysRek-taulukko (monta-Moneen yhteys)
eli yhdellä järjestelmällä voi olla monta rekisteritunnusta ja yksi rekisteritunnus
voi olla useammassa järjestelmässä.
Yhdistämisen jälkeen (Sijainti)-kentällä saadaan selville onko kysymyksessä vika
(tblVikaViesti.Sijainti) annetaan aina=1 vai vastaus (tblVastausViesti.Sijainti)=2.
- Olisiko muuta ideaa eroitella Viat ja vastaukset?
Olisihan se yksinkertaista yhdistää pelkät viat ja vastaustaulukot ja hakea eri
kyselyllä muut tiedot, mutta miten saan silloin laskettua tulostettavan tietuemäärän?
(Tietuejoukon sivuttaminen).
Toivottavasti ymmärsitte tämän sekavan sepustuksen, annan lisätietoja jos tarvitaan.
Kaikki vinkit otetaan ilomielin vastaan
KIITOS jo etukäteen sille joka vastaa tähän ongelmaan
t.jyrki
strUnion = "SELECT DISTINCT tblTyyppi.Tyyppi, tblMalli.Malli, tblRekisteri.Rekisteri, tblSysteemi.Syst_Nro, tblVikaViesti.Vika_ID, " strUnion = strUnion & "tblVikaViesti.Sijainti, tblVikaViesti.Vika_Pvm, tblVastausViesti.Vika_ID AS Vastaus_ID " strUnion = strUnion & "FROM tblTyyppi INNER JOIN " strUnion = strUnion & "tblMalli ON tblTyyppi.Tyyppi_ID = tblMalli.Tyyppi_ID INNER JOIN " strUnion = strUnion & "tblRekisteri ON tblMalli.Malli_ID = tblRekisteri.Malli_ID INNER JOIN " strUnion = strUnion & "tblSysRek ON tblRekisteri.Rekisteri_ID = tblSysRek.Rekisteri_ID INNER JOIN " strUnion = strUnion & "tblVikaViesti ON tblSysRek.SysRek_ID = tblVikaViesti.SysRek_ID INNER JOIN " strUnion = strUnion & "tblSysteemi ON tblSysRek.System_ID = tblSysteemi.System_ID LEFT OUTER JOIN "'saadaan kaikki tblTyyppi-taulukosta strUnion = strUnion & "tblVastausViesti ON tblVikaViesti.Vika_ID = tblVastausViesti.Vika_ID " If strRekisteri <> "ALL" Then strUnion = strUnion & "WHERE tblRekisteri.Rekisteri ='"& strRekisteri &"' " ElseIf strMalli <> "ALL" Then strUnion = strUnion & "WHERE tblMalli.Malli ='"& strMalli &"' " ElseIf strTyyppi <> "ALL" Then strUnion = strUnion & "WHERE tblTyyppi.Tyyppi ='"& strTyyppi &"' " End If If strSysteemi <> "ALL" Then If strRekisteri <> "ALL" Or strMalli <> "ALL" Or strTyyppi <> "ALL" Then strUnion = strUnion & " AND tblSysteemi.Syst_Nro ='"& strSysteemi &"'" Else strUnion = strUnion & " WHERE tblSysteemi.Syst_Nro ='"& strSysteemi &"'" End If End If If intAikaJakso <> 0 Then If strRekisteri <> "ALL" Or strMalli <> "ALL" Or strTyyppi <> "ALL" Or strSysteemi <> "ALL" Then strUnion = strUnion & " AND tblVikaViesti.Vika_Pvm > GetDate()-" &intAikaJakso Else strUnion = strUnion & " WHERE tblVikaViesti.Vika_Pvm > GetDate()-" &intAikaJakso End If End If strUnion = strUnion & "UNION SELECT tblTyyppi.Tyyppi, tblMalli.Malli, tblRekisteri.Rekisteri, tblSysteemi.Syst_Nro, tblVastausViesti.Vika_ID, " strUnion = strUnion & "tblVastausViesti.Sijainti, tblVastausViesti.Vastaus_Pvm, tblVastausViesti.Vastaus_ID " strUnion = strUnion & "FROM tblTyyppi INNER JOIN " strUnion = strUnion & "tblMalli ON tblTyyppi.Tyyppi_ID = tblMalli.Tyyppi_ID INNER JOIN " strUnion = strUnion & "tblRekisteri ON tblMalli.Malli_ID = tblRekisteri.Malli_ID INNER JOIN " strUnion = strUnion & "tblSysRek ON tblRekisteri.Rekisteri_ID = tblSysRek.Rekisteri_ID INNER JOIN " strUnion = strUnion & "tblVikaViesti ON tblSysRek.SysRek_ID = tblVikaViesti.SysRek_ID INNER JOIN " strUnion = strUnion & "tblVastausViesti ON tblVikaViesti.Vika_ID = tblVastausViesti.Vika_ID INNER JOIN " strUnion = strUnion & "tblSysteemi ON tblSysRek.System_ID = tblSysteemi.System_ID " If strRekisteri <> "ALL" Then strUnion = strUnion & "WHERE tblRekisteri.Rekisteri ='"& strRekisteri &"'" ElseIf strMalli <> "ALL" Then strUnion = strUnion & "WHERE tblMalli.Malli ='"& strMalli &"' " ElseIf strTyyppi <> "ALL" Then strUnion = strUnion & "WHERE tblTyyppi.Tyyppi ='"& strTyyppi &"' " End If If strSysteemi <> "ALL" Then If strRekisteri <> "ALL" Or strMalli <> "ALL" Or strTyyppi <> "ALL" Then strUnion = strUnion & " AND tblSysteemi.Syst_Nro ='"& strSysteemi &"'" Else strUnion = strUnion & " WHERE tblSysteemi.Syst_Nro ='"& strSysteemi &"'" End If End If If intAikaJakso <> 0 Then If strRekisteri <> "ALL" Or strMalli <> "ALL" Or strTyyppi <> "ALL" Or strSysteemi <> "ALL" Then strUnion = strUnion & " AND tblVastausViesti.Vastaus_Pvm > GetDate()-" &intAikaJakso Else strUnion = strUnion & " WHERE tblVastausViesti.Vastaus_Pvm > GetDate()-" &intAikaJakso End If End If strUnion = strUnion & " ORDER BY tblVikaViesti.Vika_Pvm DESC" rsUnion.Open strUnion, objConn
Aihe on jo aika vanha, joten et voi enää vastata siihen.