YT-JÄRJESTELMÄ TEKNINEN KUVAUS



Samankaltaiset tiedostot
Pilotointi raportti: Yhdyskuntasuunnittelun tukijärjestelmän pilotointi Kymppi-Moni hankkeessa

Yhdyskuntasuunnittelun tukijärjestelmä YT:n käyttö tonttituotanto ja palveluverkkoprosessien yhteensovittamisessa

YT-järjestelmän pilotointi (Yhdyskunta suunnitelun tukijärjestelmä)

Maankäytön toteuttamisen ajoitus ja kunnallisteknisten investointien ennakointi Jyväskylässä

SQL-perusteet, SELECT-, INSERT-, CREATE-lauseet

Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset

TIEDONHALLINTA - SYKSY Luento 11. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

SQL - STRUCTURED QUERY LANGUAGE

KAAVAVARANTO. Tiedon saatavuus kaavatasoittain 10/2012

Hakukyselyt: SELECT * FROM taulu WHERE sarake1 = Malli Nimi [WHERE sarake1 LIKE M% ] [WHERE BETWEEN ehto1 AND ehto2] [WHERE sarake1 IN/= (alikysely)]

Tällä viikolla. Kotitehtävien läpikäynti Aloitetaan Pelifirman tietovaraston suunnittelu Jatketaan SQL-harjoituksia

SELECT-lauseen perusmuoto

Excel-taulukkoon X- ja Y-sarakkeisiin tallennettujen koordinaattien muuntaminen paikkatietokohteiksi

Tietokannat II -kurssin harjoitustyö

Kirjasto Relaatiotietokannat Kevät Auvinen Annemari Niemi Anu Passoja Jonna Pulli Jari Tersa Tiina

Mainosankkuri.fi-palvelun käyttöohjeita

Kaavavarannon hallinta ja maapolitiikka Jyväskylässä

Opettajana Mika Sorsa, HAMK:n ammatillisen opettajakoulutuksen opetusharjoittelija

Osallistavan suunnittelun kyselytyökalu

Klaukkalan asemakaavoitettujen asuinalueiden täydennysrakentamismahdollisuudet

Helsingin yliopisto, Tietojenkäsittelytieteen laitos Tietokantojen perusteet, , H.Laine

Insert lauseella on kaksi muotoa: insert into taulu [(sarakenimet)] values (arvot)

HELIA TIKO-05 1 (17) ICT03D Tieto ja tiedon varastointi Räty, Virkki

Written by Administrator Monday, 05 September :14 - Last Updated Thursday, 23 February :36

Tik Tietojenkäsittelyopin ohjelmatyö Tietotekniikan osasto Teknillinen korkeakoulu KÄYTTÖOHJE. LiKe Liiketoiminnan kehityksen tukiprojekti

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

HELIA 1 (14) Outi Virkki Tiedonhallinta

TIETOKANNAT: MYSQL & POSTGRESQL Seminaarityö

TIETOKANTOJEN PERUSTEET MARKKU SUNI

Uusi raporttityökalu emolehmätarkkailuun Petri Saarinen

TimeEdit opiskelijan ohje TimeEdit-instructions for students from this link

DOORSin Spreadsheet export/import

eshop lisenssiopas Ohjelmistolisenssiopas 2013

CISS Base Excel raporttien määritys Käyttäjän käsikirja. CISS Base Käyttäjän Käsikirja Econocap Engineering Oy 1

Tiedonsiirto helposti navetta-automaation ja tuotosseurannan välillä

Webforum. Version 15.1 uudet ominaisuudet. Päivitetty:

TIEDONHALLINTA - SYKSY Luento 10. Hannu Markkanen /10/12 Helsinki Metropolia University of Applied Sciences

Kirjoita jokaiseen erilliseen vastauspaperiin kurssin nimi, tenttipäivä, oma nimesi (selkeästi), opiskelijanumerosi ja nimikirjoituksesi

17 BUDJETOINTI. Asiakaskohtainen Budjetti Ylläpito-ohjelma. Dafo Versio 10 BUDJETOINTI. Käyttöohje. BudgCust Yleistä

Action Request System

Visma Business AddOn Tositteiden tuonti. Käsikirja

Climecon MagiCADliitosohjelma

HELIA TIKO-05 1 (22) ICT03D Tieto ja tiedon varastointi E.Räty, O.Virkki

Projektinhallintaa paikkatiedon avulla

Pikaohje formaatin valmistamiseen

Pikaopas. Ohjeiden etsiminen Hae ohjesisältöä napsauttamalla kysymysmerkkiä.

DOORS Word DOORS SoftQA Pekka Mäkinen

Arkkitehtuurikuvaus. Ratkaisu ohjelmistotuotelinjan monikielisyyden hallintaan Innofactor Oy. Ryhmä 14

SQL Buddy JAMK Labranet Wiki

Sonera Viestintäpalvelu VIP VIP Laajennettu raportointi Ohje

Tietojen haku tuotannonohjausjärjestelmästä ja lähettäminen Minun Maatilani -ohjelmistolle MMAmmuLinkillä

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.3.0

Harjoitustyö. CSE-A1200 Tietokannat! Jasse Lahdenperä! ! Henri Nurmi! !

VIS Online 2.0 version uudistukset

HRTM58. Windows 10 Resurssienhallinta

OpenOffice.org Base 3.1.0

Visma Business AddOn Tilauksen synkronointi. Käsikirja

POMPIDOU 10 ASENNUSOHJEET

Ryhmäkirjeen hyödyntäminen

SOLIDPDM 6 Plus uudet ominaisuudet osa 2

select tulostietomäärittely from taulukkeet [where valintaehdot] [group by ryhmitystekijät] [having ryhmärajoitteet] [order by järjestysperusta]

NOVAPOINT Soundings Editor 3.3

HELIA 1 (11) Outi Virkki Tiedonhallinta

MultiSave - käyttö ja käyttöönotto

FROM-lausekkeessa voidaan määritellä useampi kuin yksi taulu, josta tietoja haetaan: Tuloksena on taululistassa lueteltujen taulujen rivien

Poikkeusinfo XML-rajapinnan kuvaus, rajapinnan versio 2 Seasam Group

Lipas 2.0 käyttöohjeet ( )

Maapolitiikan pääperiaatteet ja -linjat sekä kaavavarantotietojen ylläpito

Harjoituksen aiheena on tietokantapalvelimen asentaminen ja testaaminen. Asennetaan MySQL-tietokanta. Hieman linkkejä:

Ponnahdusikkunoiden ja karttatekstien hallitseminen ArcGIS Online kartoissa

2. Haet työntekijöiden tiedot etunimen mukaan nousevasti järjestettyinä. (ORDER BY) SELECT * FROM employees ORDER BY firstname ASC;

Opiskeluoikeuksien maaran tiedonkeruu

Päivitys Navigo Portalin versioon 5.1

Oppilaan pikaopas. Project 2013 käyttöliittymä ja näkymät

Virta_Latausraportti - Tarkistukset

Tikon Ostolaskujenkäsittely/Web-myyntilaskutus versio 6.4.0

Visma Avendon asennusohje

Osallistavan suunnittelun kyselytyökalu

Tulorekisteri: Vakuuttamisen poikkeustilanteet Visma Fivaldi

Väestöarvion laadinta ja väestötietojen hyödyntäminen Jyväskylässä

Maanmittauslaitoksen nimistö Spatialite-tietokantana. - kuvitettu ohje Quantum GIS ohjelmaa varten

CSE-A1200 Tietokannat

Treenitietokannan suunnitteludokumentti

Visma Business AddOn Konsernikäsittely. Käsikirja

RATKI 1.0 Käyttäjän ohje

Maankäytön ja palveluverkon suunnittelun yhteensovitus toteutettua ja tulevaa. Marja Uusivuori

Larppa-laskutusohjelma v1.1 Ohje

ELMAS 4 Laitteiden kriittisyysluokittelu /10. Ramentor Oy ELMAS 4. Laitteiden kriittisyysluokittelu. Versio 1.0

TIETOKONEYLIASENTAJAN ERIKOISAMMATTITUTKINTO

Ylläpitodokumentti. Ohjelmistotuotantoprojektin tietojärjestelmä OhtuTie

Windows Vistan varmuuskopiointi

Käyttöohje. Versiohistoria: versio Mari Kommenttien perusteella korjattu versio

Tietokantojen perusteet, syksy 1999 SQL- osa Harri Laine 1. SQL-yhteenvetofunktiot. SQL-yhteenvetofunktiot

Visma Business AddOn Tuotetarrat. Käsikirja

Älä vielä sulje vanhoja

Jahtipaikat.fi Käyttöohje

Informaatiotekniikan kehitysyksikkö

Transkriptio:

YT-JÄRJESTELMÄ TEKNINEN KUVAUS Rakennustekniikan laitos Rakentamisen tietotekniikka Tero Karlakari Mauri Laasonen Hannu Kupila

30.4.2013 Versio 2013.2 VERSIOHISTORIA Versio Päiväys Tekijä Muutokset 0.1 17.4.2013 Tero Karlakari Ensimmäinen versio. 0.7 25.4.2013 Tero Karlakari Lisätty toimintojen kuvauksia. 0.8 29.4.2013 Hannu Kupila Lisätty MapInfo-tiedonsiirron kuvaukset. 1.0 30.4.2013 Tero Karlakari Lopullinen versio.

30.4.2013 Versio 2013.2 SISÄLLYSLUETTELO 1 JOHDANTO...1 1.1 Tarkoitus...1 1.2 Tuote...1 1.3 Dokumentin kattavuus...1 2 YLEISKUVAUS...2 2.1 Sovellusalueen kuvaus...2 2.2 Järjestelmän liittyminen ympäristöönsä...2 2.3 Laitteistoympäristö...2 2.4 Ohjelmistoympäristö...2 3 ARKKITEHTUURIN KUVAUS...3 3.1 Järjestelmän toteutusperiaatteet...3 3.2 Tietokanta-arkkitehtuuri...4 3.2.1 Tietokannan rakenne...4 3.2.2 Tietokannan taulut...5 3.2.3 Tietokannan näkymät...10 3.2.4 Tiedostot...11 4 SELAINSOVELLUKSEN TOIMINTOKUVAUKSET...12 4.1 Yleistä...12 4.2 Näytä suunnittelualueet...14 4.2.1 Yleiskuvaus...14 4.2.2 Toteutus...14 4.2.3 Virhetilanteet...15 4.3 Avaa (Suunnittelualueet)...16 4.3.1 Yleiskuvaus...16 4.3.2 Toteutus...16 4.3.3 Virhetilanteet...16 4.4 Tallenna (Suunnittelualue)...16 4.4.1 Yleiskuvaus...16 4.4.2 Toteutus...16 4.4.3 Virhetilanteet...17 4.5 Luo suunnitelma (Suunnittelualue)...17 4.5.1 Yleiskuvaus...17 4.5.2 Toteutus...17 4.6 Tallenna (Luo suunnitelma)...17 4.6.1 Yleiskuvaus...17 4.6.2 Toteutus...17 4.6.3 Virhetilanteet...17 4.7 Avaa (Suunnitelmat)...17 4.7.1 Yleiskuvaus...17 4.7.2 Toteutus...17 4.7.3 Virhetilanteet...20 4.8 Tallenna (Suunnitelma)...20 4.8.1 Yleiskuvaus...20 4.8.2 Toteutus...20 4.8.3 Virhetilanteet...20 4.9 Listausjärjestyksen muuttaminen (Yksiköt)...21 4.9.1 Yleiskuvaus...21 4.9.2 Toteutus...21 4.9.3 Virhetilanteet...21 4.10 Avaa (Yksiköt)...21 4.10.1 Yleiskuvaus...21 4.10.2 Toteutus...21 4.10.3 Virhetilanteet...22 4.11 Tallenna (Kapasiteettiyksikkö)...22

30.4.2013 Versio 2013.2 4.11.1 Yleiskuvaus...22 4.11.2 Toteutus...22 4.11.3 Virhetilanteet...22 4.12 Poista (Kapasiteettiyksikkö)...22 4.12.1 Yleiskuvaus...22 4.12.2 Toteutus...22 4.12.3 Virhetilanteet...23 4.13 Lisää (T- V- ja R hankkeet)...23 4.13.1 Yleiskuvaus...23 4.13.2 Toteutus...23 4.13.3 Virhetilanteet...23 4.14 Poista valitut (T- V- ja R hankkeet)...23 4.14.1 Yleiskuvaus...23 4.14.2 Toteutus...23 4.14.3 Virhetilanteet...23 4.15 Muokkaa valittuja yksiköitä (Yksiköt)...24 4.15.1 Yleiskuvaus...24 4.15.2 Toteutus...24 4.16 Tallenna ja sulje (Muokkaa valittuja yksiköitä)...24 4.16.1 Yleiskuvaus...24 4.16.2 Toteutus...24 4.16.3 Virhetilanteet...24 4.17 Aktiivinen Ei aktiivinen (Suunnitelmat)...24 4.17.1 Yleiskuvaus...24 4.17.2 Toteutus...24 4.17.3 Virhetilanteet...25 4.18 Monista valitut (Suunnitelmat)...25 4.18.1 Yleiskuvaus...25 4.18.2 Toteutus...25 4.18.3 Virhetilanteet...26 4.19 Poista valitut (Suunnitelmat)...26 4.19.1 Yleiskuvaus...26 4.19.2 Toteutus...26 4.19.3 Virhetilanteet...26 4.20 Siirrä suunnittelualueelle (Suunnitelmat)...26 4.20.1 Yleiskuvaus...26 4.20.2 Toteutus...26 4.20.3 Virhetilanteet...26 4.21 Luo alue (Suunnittelualueet)...27 4.21.1 Yleiskuvaus...27 4.21.2 Toteutus...27 4.22 Tallenna (Luo alue)...27 4.22.1 Yleiskuvaus...27 4.22.2 Toteutus...27 4.22.3 Virhetilanteet...27 4.23 Poista valitut (Suunnittelualueet)...27 4.23.1 Yleiskuvaus...27 4.23.2 Toteutus...27 4.23.3 Virhetilanteet...28 4.24 Näytä ajoitusvaihtoehdot...28 4.25 Teemakartat...28 4.25.1 Yleiskuvaus...28 4.25.2 Toteutus...28 4.25.3 Virhetilanteet...29 4.26 Pientaloajoitus...29 4.27 Lähtötiedot MapInfoon...29 4.27.1 Yleiskuvaus...29

30.4.2013 Versio 2013.2 4.27.2 Toteutus...30 4.27.3 Virhetilanteet...32 4.28 Aluerajat MapInfoon...32 4.28.1 Yleiskuvaus...32 4.28.2 Toteutus...32 4.28.3 Virhetilanteet...34 4.29 Palvelutoimipisteet...34 4.30 Raportit...34 4.31 Selainsovelluksen toistuvat toiminnot...35 4.31.1 Sulje...35 4.31.2 Takaisin edelliseen karttanäkymään...35 5 KARTTASOVELLUKSEN TOIMINTOKUVAUKSET...36 5.1 Yleistä...36 5.2 Karttanäyttö Näytä WMS-kartat...37 5.3 Karttanäyttö Näytä Linja-autoreitit...37 5.4 Peruskartta Näytä Peruskartta...37 5.5 Peruskartta Näytä suunnittelualueet...37 5.6 Peruskartta Suunnitelmat Avaa...37 5.7 Peruskartta Yksikkö Avaa...37 5.8 Peruskartta Piirrä...38 5.8.1 Yleiskuvaus...38 5.8.2 Toteutus...38 5.9 Peruskartta Poista...38 5.10 Peruskartta Näytä teemakartta...38 5.11 Väestöarvio Näytä Väestöarvio...38 5.12 Väestöarvio Valitse pienalue kartalta...38 5.13 Väestöarvio Lisää palvelutoimipiste...39 5.14 Väestöarvio Muokkaa palvelutoimipistettä...39 5.15 Väestöarvio Poista palvelutoimipiste...39 6 SUUNNITELLUT MUUTOKSET JÄRJESTELMÄÄN...40

30.4.2013 Versio 2013.2 Sivu 1 / 40 1 JOHDANTO 1.1 Tarkoitus Tämä dokumentti sisältää YT-järjestelmän toimintojen teknisen kuvauksen. Dokumentti kuvaa järjestelmän toimintojen kannalta määrittelyä teknisemmällä tavalla. Kuvaustavassa on yhdistetty tietojärjestelmien määrittely- ja suunnitteludokumentoinnin piirteitä. 1.2 Tuote Tuote on Tampereen teknillisen yliopiston kehittämä yhdyskuntasuunnittelun järjestelmä. Tuotteen nimi on YT. Järjestelmän avulla hallitaan kaavavarantojen lähtötietoja ja rakentamisen ajoitusta. Järjestelmällä hallitaan suunnitteilla ja vireillä olevien rakentamisen kaavahankkeiden tietoja ja ajoitusta. 1.3 Dokumentin kattavuus Tässä dokumentissa kuvataan järjestelmän arkkitehtuuri ja toimintojen tekniset kuvaukset. Järjestelmästä kuvataan tietokannan rakenne ja liittymät. Toimintojen kuvaukset sisältävät toimintalogiikan pääperiaatteet ja liittymän tietokannan rakenteisiin. Tässä dokumentissa ei selvitetä yksityiskohtaisesti rakentamisen ajoituksen laskentaan liittyviä teknisiä yksityiskohtia.

30.4.2013 Versio 2013.2 Sivu 2 / 40 2 YLEISKUVAUS 2.1 Sovellusalueen kuvaus YT-järjestelmä on yhdyskuntasuunnittelun ohjelmisto, jolla hallinnoidaan kaavavarannon lähtötietoja ja rakentamisen ajoitusta. Järjestelmä tuottaa reaaliaikaista tietoa käyttöön tulevasta kaavakapasiteetista. Järjestelmä on tärkeä osa Jyväskylän kaupungin kehittämää Kymppi maankäytön suunnittelumenetelmää. 2.2 Järjestelmän liittyminen ympäristöönsä Järjestelmän kaavavarannon lähtötiedot siirretään eräajoina Tekla Gis-järjestelmästä. Väestöarvion lähtötiedot tulevat järjestelmään Microsoft Excel tiedostomuotona. Järjestelmästä voidaan tulostaa MapInfo- paikkatieto-ohjelmiston tiedostomuotoa olevia kaavavarantoa ja ajoitusta kuvaavia aineistoja. Lisäksi järjestelmän ajoitus- ja raportointitoiminnot käyttävät Microsoft Excel ohjelmistoa tulostus- ja päivitystoimintoihin. 2.3 Laitteistoympäristö Järjestelmän www-palvelin ja karttaosion palvelinsovellus on asennettu palvelintietokoneelle. Työasemalle on asennettu karttasovellus ja selain- ja karttaohjelmiston kommunikoinnin mahdollistava Java-sovellus. Työasemassa on oltava asennettuna selainohjelmisto. 2.4 Ohjelmistoympäristö Ohjelman palvelintoiminnot toimivat Microsoft Windows Server 2003 (2008) käyttöjärjestelmässä. Työasemaohjelmistot toimivat Microsoft Windows 7 käyttöjärjestelmässä. Työasemaohjelmistot vaativat toimiakseen selainohjelmiston. Järjestelmän tietokantaohjelmistona on Microsoft SQL Server 2005 (2008). Tietokantojen varmuuskopiointi hoidetaan tietokantaohjelmiston työkaluilla.

30.4.2013 Versio 2013.2 Sivu 3 / 40 3 ARKKITEHTUURIN KUVAUS 3.1 Järjestelmän toteutusperiaatteet YT-järjestelmä on toteutettu selain- ja työpöytäsovelluksen yhdistelmänä. Selainsovellus on toteutettu perl -ohjelmointikielellä ja käyttäen olio-ohjelmoinnin lähestymistapaa. Karttasovellus on toteutettu C ohjelmointikielellä. Selain- ja karttasovelluksen väliseen kommunikointiin käytetään Java ohjelmointikielellä tehtyä työasemasovellusta. Selainsovelluksen käyttöliittymä on perinteinen tekstiä ja linkkejä yhdistävä sivusto. Karttasovelluksen käyttöliittymän hallitsevin elementti on karttapohja, joka mahdollistaa mm. piirtotoiminnot ja elementtien valinnan suoraan kartalta. Selainsovellus käyttää http-protokollaa työaseman ja palvelimen väliseen tiedonsiirtoon. Karttasovelluksen osalta toteutus noudattelee asiakas-palvelin arkkitehtuuria. Osa karttasovelluksen näyttämästä grafiikasta on tallennettu työasemalle (ks. kohta 3.2.4). Järjestelmän käyttämä tietokanta on toteutettu relaatiotietokantaa käyttäen. Tietokantayhteyksissä käytetään Microsoftin ADO-rajapintaa sekä ODBC-rajapintaa. Tietokannan rakenne ja sisältö on esitetty kohdassa 3.2. Järjestelmän toiminnot on selvitetty yksityiskohtaisesti tämän dokumentin luvussa 4 ja 5. Toimintojen liittymät tietokantarakenteisiin on selvitetty kunkin toiminnon selityksen yhteydessä.

30.4.2013 Versio 2013.2 Sivu 4 / 40 3.2 Tietokanta-arkkitehtuuri 3.2.1 Tietokannan rakenne Tietokanta on relaatiotietokanta. Kannan rakenne on esitetty kuvassa 1. yt_suun yt_alue yt_alue_hanke PK id PK id PK,FK1 id FK1,I1 alue_id numero huom c_time m_time numero kartta nimi huom suun_id matala_tiivis maanhankinta uusi_alue c_time m_time idea FK2 alue_id yks_tyyppi hanke_tyyppi kaup_luov vuosi kem_as c_time m_time yt_yks yt_hanke yt_ajoitus yt_aktiivinen_ajoitus PK id PK id PK,FK1 id FK2,I2,I1 suun_id numero kiin_tun FK1,I2 osa_alue_id kap kap_as kayttark talotyyppi kaup_luov nukkuva kaavamuoto kaava_tun korvattu omistaja vuokraaja varaaja var_aika huom c_time m_time paivitys_tila kun_tekn pinta_ala yt_max_id max_id id FK2,I1 yks_id FK1 ajoitus_id tyyppi vuosi kem kem_as kayttark rak_tunnus c_time m_time paivitystila yt_osa_alue PK id nimi yt_polygon PK id ext_id ext_type closed locked tstamp c_time m_time Kuva 1 Tietokannan rakenne PK id PK nimi kuvaus c_time m_time yt_tavoite id FK1,I1 ajoitus_id vuosi tyyppi kaup_luov kap c_time m_time yt_vertex ext_id ext_type parent_id polygon_order x y locked tstamp c_time m_time PK id yt_serviceoffice x y office grand_area small_area service_content state control notes c_time m_time daycarespotsnow daycarespotsin5y daycarespotsin10y daycarespotsin15y daycarespotsin20y daycaregroupsnow daycaregroupsin5y daycaregroupsin10y daycaregroupsin15y daycaregroupsin20y lowerschoolspotsnow lowerschoolspotsin5y lowerschoolspotsin10y lowerschoolspotsin15y lowerschoolspotsin20y basicteachinggroupsnow basicteachinggroupsin5y basicteachinggroupsin10y basicteachinggroupsin15y basicteachinggroupsin20y upperschoolspotsnow upperschoolspotsin5y upperschoolspotsin10y upperschoolspotsin15y upperschoolspotsin20y sizingpercentage

30.4.2013 Versio 2013.2 Sivu 5 / 40 3.2.2 Tietokannan taulut Seuraavassa on kuvattu tietokannan taulujen tietosisältö selitteineen. yt_alue Taulu sisältää suunnittelualueiden ominaisuustiedot. Sarake Kuvaus Tietotyyppi Arvojoukko Oletus id Alueen yksilöivä tunniste varchar(20) numero Kaava- tai tilastoaluetunnus varchar(255) Kartta Alueen kartan indeksi varchar(20) 1=Jyväskylä 2=Säynätsalo nimi Alueen nimi varchar(255) huom Huomautusteksti varchar(255) suun_id Aktiivisen suunnitelman varchar(255) yksilöivä tunniste matala_tiivis Matala tiivis rakennustapa bit 0, 1 0 maanhankinta Maanhankintatarve bit 0, 1 0 uusi_alue Yhdyskuntatekniikan piirissä bit 0, 1 0 c_time Luontiaika datetime m_time Muokkausaika datetime idea Ideatasoinen suunnitelma bit 0, 1 0 yt_suun Taulu sisältää alueisiin liittyvien suunnitelmien ominaisuustiedot. Sarake Kuvaus Tietotyyppi Arvojoukko Oletus id Suunnitelman yksilöivä varchar(20) tunniste alue_id Alueen yksilöivä tunniste varchar(20) numero Suunnitelman numero varchar(255) 1 n huom Huomautusteksti varchar(255) c_time Luontiaika datetime m_time Muokkausaika datetime yt_yks Taulu sisältää suunnitelmiin liittyvien kapasiteettiyksiköiden ominaisuustiedot. Sarake Kuvaus Tietotyyppi Arvojoukko Oletus id Yksikön yksilöivä tunniste varchar(20) suun_id Suunnitelman yksilöivä varchar(20) tunniste numero Yksikön numero (ei käytössä) varchar(255) kiin_tun Kiinteistötunnus varchar(255) osa_alue_id Osa-alueen yksilöivä tunniste varchar(20) kap Rakennusoikeus yhteensä float kap_as Asuntorakentamisen float rakennusoikeus kayttark Käyttötarkoitus varchar(255) talotyyppi Talotyyppiarvio varchar(255) AO, AR, AK, T, Y, K, MUU kaup_luov Kaupungin luovuttama bit 0, 1 rakennuspaikka nukkuva Arvio toteutumisesta varchar(255) kaavamuoto Kaavamuoto varchar(255) 1-7 kaava_tun Kaavatunnus varchar(255)

30.4.2013 Versio 2013.2 Sivu 6 / 40 korvattu varchar(255) omistaja Omistajan nimi varchar(255) vuokraaja Vuokraajan nimi varchar(255) varaaja Varaajan nimi varchar(255) var_aika Varauksen päättymispäivä datetime huom Huomautusteksti varchar(255) c_time Luontiaika datetime m_time Muokkausaika datetime paivitys_tila smallint kun_tekn Kunnallistekniikan tarve bit 0, 1 0 pinta_ala Pinta-ala int 0 yt_osa_alue Taulu sisältää suuralueiden, tilastoalueiden ja pienalueiden ominaisuustiedot. Sarake Kuvaus Tietotyyppi Arvojoukko Oletus id Osa-alueen yksilöivä tunniste varchar(20) nimi Osa-alueen nimi varchar(255) yt_hanke Taulu sisältää kapasiteettiyksiköiden hankkeiden ominaisuustiedot. Sarake Kuvaus Tietotyyppi Arvojoukko Oletus id Hankkeen yksilöivä tunniste varchar(20) yks_id Yksikön yksilöivä tunniste varchar(20) ajoitus_id Ajoituksen yksilöivä tunniste varchar(20) 0=Kaikki tyyppi Hankkeen tyyppi varchar(255) T, R, V vuosi Toteutusvuosi varchar(255) kem Kerrosala yhteensä float kem_as Asuinrakentamisen kerrosala float kayttark Käyttötarkoitus varchar(255) rak_tunnus Rakennustunnus varchar(255) c_time Luontiaika datetime m_time Muokkausaika datetime paivitystila smallint yt_ajoitus Taulu sisältää ajoitusvaihtoehtojen ominaisuustiedot. Sarake Kuvaus Tietotyyppi Arvojoukko Oletus id Ajoitusvaihtoehdon yksilöivä varchar(20) tunniste nimi Vaihtoehdon nimi varchar(255) kuvaus Vapaamuotoinen kuvaus varchar(255) c_time Luontiaika datetime m_time Muokkausaika datetime yt_aktiivinen_ajoitus Taulu sisältää tällä hetkellä aktiivisen ajoituksen tunnisteen. Sarake Kuvaus Tietotyyppi Arvojoukko Oletus id Ajoituksen yksilöivä tunniste varchar(20)

30.4.2013 Versio 2013.2 Sivu 7 / 40 yt_alue_hanke Taulu sisältää alueittaisten suunniteltujen hankkeiden ajoitustiedot talotyypeittäin eri vuosille jaettuina. Sarake Kuvaus Tietotyyppi Arvojoukko Oletus id Hankkeen yksilöivä tunniste varchar(20) alue_id Alueen yksilöivä tunniste varchar(20) ajoitus_id Ajoituksen yksilöivä tunniste varchar(20) yks_tyyppi Talotyyppi varchar(32) AO, AR, AK hanke_tyyppi Hankkeen tyyppi varchar(32) S, T, V+R kaup_luov Kaupungin luovuttama bit 0, 1 rakennuspaikka vuosi Vuosiluku varchar(32) kem_as Asuinrakentamisen kerrosala float c_time Luontiaika datetime m_time Muokkausaika datetime yt_tavoite Taulu sisältää käyttäjän arvion suunniteltujen hankkeiden ajoitustiedoista talotyypeittäin eri vuosille jaettuina. Sarake Kuvaus Tietotyyppi Arvojoukko Oletus id Tavoitteen yksilöivä tunniste varchar(20) ajoitus_id Ajoituksen yksilöivä tunniste varchar(20) vuosi Vuosiluku varchar(255) tyyppi Talotyyppi varchar(255) AO, AR, AK kaup_luov Kaupungin luovuttama bit 0, 1 rakennuspaikka kap Rakennusoikeus yhteensä float c_time Luontiaika datetime m_time Muokkausaika datetime yt_serviceoffice Taulu sisältää palvelutoimipisteiden sijainti ja ominaisuustiedot. Sarake Kuvaus Tietotyyppi Arvojoukko Oletus id Toimipisteen varchar(20) yksilöivä tunniste x Sijainti kartalla, x- float koordinaatti y Sijainti kartalla, y- float koordinaatti office Toimipisteen nimi varchar(50) grand_area Suuralueen varchar(50) numero small_area Pienalueen varchar(50) numero service_content Palvelusisältö int 0=Päiväkoti 1=Alakoulu 2=Päiväkotikoulu 3=Yläkoulu 4=Yhtenäiskoulu

30.4.2013 Versio 2013.2 Sivu 8 / 40 state Tila int 0=Nykyinen 1=Poistuva 2=Laajennus 3=Uudishanke 4=Peruskorjaus control Hallinta int 0=Kaupungin 1=Yksityisen notes Huomautusteksti varchar(max) c_time Luontiaika datetime m_time Muokkausaika datetime daycarespotsnow Päivähoitopaikat int tällä hetkellä daycarespotsin5y Päivähoitopaikat int 5v päästä daycarespotsin10y Päivähoitopaikat int 10v päästä daycarespotsin15y Päivähoitopaikat int 15v päästä daycarespotsin20y Päivähoitopaikat int 20v päästä daycaregroupsnow Päivähoitoryhmät int tällä hetkellä daycaregroupsin5y Päivähoitoryhmät int 5v päästä daycaregroupsin10y Päivähoitoryhmät int 10v päästä daycaregroupsin15y Päivähoitoryhmät int 15v päästä daycaregroupsin20y Päivähoitoryhmät int 20v päästä lowerschoolspotsnow Koulupaikat tällä int hetkellä lowerschoolspotsin5y Koulupaikat 5v int päästä lowerschoolspotsin10y Koulupaikat 10v int päästä lowerschoolspotsin15y Koulupaikat 15v int päästä lowerschoolspotsin20y Koulupaikat 20v int päästä basicteachinggroupsnow Perusopetusryhmät int tällä hetkellä basicteachinggroupsin5y Perusopetusryhmät int 5v päästä basicteachinggroupsin10y Perusopetusryhmät int 10v päästä basicteachinggroupsin15y Perusopetusryhmät int 15v päästä basicteachinggroupsin20y Perusopetusryhmät int 20v päästä upperschoolspotsnow Yläkoulupaikat int tällä hetkellä upperschoolspotsin5y Yläkoulupaikat 5v päästä int

30.4.2013 Versio 2013.2 Sivu 9 / 40 upperschoolspotsin10y Yläkoulupaikat int 10v päästä upperschoolspotsin15y Yläkoulupaikat int 15v päästä upperschoolspotsin20y Yläkoulupaikat int 20v päästä sizingpercentage Mitoitusprosentti int 0-100 yt_polygon Taulu sisältää kapasiteettiyksiköitä kartalla kuvaavien monikulmioiden ominaisuustiedot. Sarake Kuvaus Tietotyyppi Arvojoukko Oletus id Monikulmion yksilöivä varchar(20) tunniste ext_id Monikulmiolla kuvattavan varchar(20) käsitteen yksilöivä tunniste (vain yksikköjen kuvaus käytössä) ext_type Monikulmiolla kuvattavan varchar(50) yt_yks käsitteen tyyppi closed Monikulmion sulkeutuvuus bit 0, 1 locked bit 0, 1 tstamp Aikaleima timestamp c_time Luontiaika datetime m_time Muokkausaika datetime yt_vertex Taulu sisältää monikulmioiden kulmapisteiden ominaisuustiedot. Sarake Kuvaus Tietotyyppi Arvojoukko Oletus id Pisteen yksilöivä tunniste varchar(20) ext_id Ei käytössä varchar(20) ext_type Ei käytössä varchar(50) parent_id Monikulmion yksilöivä varchar(20) tunniste polygon_order Pisteiden piirtojärjestys int 0 n x Sijainti, x-koordinaatti float y Sijainti, y-koordinaatti float locked bit 0, 1 tstamp Aikaleima timestamp c_time Luontiaika datetime m_time Muokkausaika datetime yt_max_id Taulu sisältää seuraavan käytettävän yksilöivän tunnisteen. Tunnisteita käytetään edellä kuvattujen taulujen yksilöivinä tunnisteina. Sarake Kuvaus Tietotyyppi Arvojoukko Oletus max_id Seuraava käytettävä yksilöivä varchar(20) tunniste

30.4.2013 Versio 2013.2 Sivu 10 / 40 3.2.3 Tietokannan näkymät Seuraavassa on kuvattu tietokannan näkymien tietosisältö selitteineen. marginaaliset Näkymä sisältää kapasiteettiyksiköiden yksilöivät tunnisteet. Rajausehtoina ovat yksikön talotyyppi (yt_yks -> talotyyppi), yksikköön liittyvän hankkeen tyyppi (yt_hanke -> tyyppi = R) ja jäljellä oleva rakennusoikeus (yt_yks -> kap SUM(yt_hanke -> kem_as). Jos talotyyppi on AO, tulee jäljellä oleva rakennusoikeus olla < 100 kem2. Vastaavasti talotyypille AR < 200 kem2 ja talotyypille AK < 500 kem2. Näkymän määrittelylause (marginaaliset) SELECT yt_yks.id FROM yt_yks INNER JOIN yt_hanke ON yt_yks.id = yt_hanke.yks_id WHERE (yt_yks.talotyyppi = 'AO') AND (yt_hanke.ajoitus_id = '0') AND (yt_hanke.tyyppi = 'R') GROUP BY yt_yks.id, yt_yks.kap HAVING (yt_yks.kap - SUM(yt_hanke.kem_as) < 100) UNION SELECT yt_yks_2.id AS yks_id FROM yt_yks AS yt_yks_2 INNER JOIN yt_hanke AS yt_hanke_2 ON yt_yks_2.id = yt_hanke_2.yks_id WHERE (yt_yks_2.talotyyppi = 'AR') AND (yt_hanke_2.ajoitus_id = '0') AND (yt_hanke_2.tyyppi = 'R') GROUP BY yt_yks_2.id, yt_yks_2.kap HAVING (yt_yks_2.kap - SUM(yt_hanke_2.kem_as) < 200) UNION SELECT yt_yks_1.id AS yks_id FROM yt_yks AS yt_yks_1 INNER JOIN yt_hanke AS yt_hanke_1 ON yt_yks_1.id = yt_hanke_1.yks_id WHERE (yt_yks_1.talotyyppi = 'AK') AND (yt_hanke_1.ajoitus_id = '0') AND (yt_hanke_1.tyyppi = 'R') GROUP BY yt_yks_1.id, yt_yks_1.kap HAVING (yt_yks_1.kap - SUM(yt_hanke_1.kem_as) < 500) marginaaliset_listaus Näkymä sisältää kapasiteettiyksiköiden yksilöivät tunnisteet. Rajausehdot ovat samat kuin yllä olevan marginaaliset-näkymän. Näkymä poikkeaa em. hankkeiden tyyppien osalta. Tässä näkymässä otetaan huomioon kaikki hanketyypit. Näkymän määrittelylause (marginaaliset_listaus) SELECT yt_yks.id FROM yt_yks INNER JOIN yt_hanke ON yt_yks.id = yt_hanke.yks_id WHERE (yt_yks.talotyyppi = 'AO') AND (yt_hanke.ajoitus_id = '0') AND yt_hanke.tyyppi = 'R' OR yt_hanke.tyyppi = 'V' OR yt_hanke.tyyppi = 'T') GROUP BY yt_yks.id, yt_yks.kap HAVING (yt_yks.kap - SUM(yt_hanke.kem) < 100) UNION SELECT yt_yks_2.id AS yks_id FROM yt_yks AS yt_yks_2 INNER JOIN yt_hanke AS yt_hanke_2 ON yt_yks_2.id = yt_hanke_2.yks_id WHERE yt_yks_2.talotyyppi = 'AR') AND (yt_hanke_2.ajoitus_id = '0') AND (yt_hanke_2.tyyppi = 'R') OR (yt_yks_2.talotyyppi = 'AR') AND (yt_hanke_2.ajoitus_id = '0') AND (yt_hanke_2.tyyppi = 'V') OR (yt_yks_2.talotyyppi = 'AR') AND (yt_hanke_2.ajoitus_id = '0') AND (yt_hanke_2.tyyppi = 'T')GROUP BY yt_yks_2.id, yt_yks_2.kap HAVING (yt_yks_2.kap - SUM(yt_hanke_2.kem) < 200) UNION SELECT yt_yks_1.id AS yks_id FROM yt_yks AS yt_yks_1 INNER JOIN yt_hanke AS yt_hanke_1 ON yt_yks_1.id = yt_hanke_1.yks_id WHERE (yt_yks_1.talotyyppi = 'AK') AND (yt_hanke_1.ajoitus_id = '0') AND (yt_hanke_1.tyyppi = 'R') OR (yt_yks_1.talotyyppi = 'AK') AND (yt_hanke_1.ajoitus_id = '0') AND (yt_hanke_1.tyyppi = 'V') OR (yt_yks_1.talotyyppi = 'AK') AND (yt_hanke_1.ajoitus_id = '0') AND (yt_hanke_1.tyyppi = 'T')GROUP BY yt_yks_1.id, yt_yks_1.kap HAVING (yt_yks_1.kap - SUM(yt_hanke_1.kem) < 500) reaaliset Näkymä sisältää kapasiteettiyksiköiden yksilöivät tunnisteet. Rajausehtoina ovat talotyyppi (yt_yks -> talotyyppi) ja nukkuva-ominaisuus (yt_yks -> nukkuva = 0). Lisäksi yksikkö ei saa sisältyä yllä kuvatun marginaaliset_listaus-näkymän yksiköihin. Näkymän määrittelylause (reaaliset) SELECT id FROM yt_yks WHERE (talotyyppi = 'AO' OR talotyyppi = 'AR' OR talotyyppi = 'AK') AND (id NOT IN (SELECT id FROM dbo.marginaaliset_listaus)) AND (nukkuva = 0) AND (korvattu = 0)

30.4.2013 Versio 2013.2 Sivu 11 / 40 3.2.4 Tiedostot Järjestelmän karttaohjelmisto käyttää työasemalle asennuksen yhteydessä tallennettuja tiedostoja mm. grafiikan esittämiseen. Seuraavassa on kuvattu tiedostojen käyttötarkoitus ja sisältö. Pa_ta_sa_vaestoarvio_2012.xls Tiedosto sisältää alueittaiset väestöarviotiedot. Tiedostoa käytetään karttasovelluksen Väestöarvio-toiminnossa. pienalueet_a.dxf Tiedosto sisältää Peruskartta-toiminnon Näytä Pienalueet (ks. kohta 5.4) esittämän grafiikan. tilastoalueet_a.dxf Tiedosto sisältää Väestöarvio-toiminnon Näytä Aluerajat Tilastoalueet (ks. kohta 5.11) esittämän grafiikan. suuralueet_a.dxf Tiedosto sisältää Väestöarvio-toiminnon Näytä Aluerajat Suuralueet (ks. kohta 5.11) esittämän grafiikan. linjareitit_uusi.dxf Tiedosto sisältää Lähiliikenne-toiminnon (ks. kohta 5.3) esittämän linja-autoreittien grafiikan. seutureitit.dxf Tiedosto sisältää Seutuliikenne-toiminnon (ks. kohta 5.3) esittämän linja-autoreittien grafiikan.

30.4.2013 Versio 2013.2 Sivu 12 / 40 4 SELAINSOVELLUKSEN TOIMINTOKUVAUKSET 4.1 Yleistä Kuvassa 2 on esitetty järjestelmän selainsovelluksen näyttökartta. Näyttökartassa näkyvät kaikkien näyttöjen tärkeimmät toiminnot. Kuva 2 Selainsovelluksen näyttökartta Seuraavassa listassa on esitetty selainsovelluksen toiminnot ja niiden hierarkia. Toiminnoista ei ole esitetty useassa näytössä olevia toistuvia toimintoja (Sulje ja Takaisin edelliseen karttanäkymään). Kuvatuissa toiminnoissa viitataan kohdan 3.2.2 mukaisten tietokannan taulujen sisältöön. Näytä suunnittelualueet Näytä kaikki (aktiiviset ja ei-aktiiviset) Uudet asunto- ja työpaikka-alueet (aktiiviset) Kaikki asunto- ja työpaikka-alueet (aktiiviset) Uudet työpaikka-alueet (aktiiviset) Kaikki työpaikka-alueet (aktiiviset) Ei-aktiiviset alueet (voi olla ideakin) Avaa Tallenna Luo suunnitelma Tallenna

30.4.2013 Versio 2013.2 Sivu 13 / 40 Suunnitelmat Avaa Tallenna Yksiköt Listausjärjestyksen muuttaminen Avaa Tallenna Poista T- V- ja R hankkeet Lisää Poista valitut Muokkaa valittuja yksiköitä Tallenna ja sulje Aktiivinen Ei aktiivinen Monista valitut Poista valitut Siirrä suunnittelualueelle Luo alue Tallenna Poista valitut Näytä ajoitusvaihtoehdot Avaa Avaa ajoitustaulukko Päivitä kaikki alueet Päivitä uudet alueet Muokatun ajoituksen lähetys palvelimelle Valitse tiedosto (Browse ) Lähetä Aktiivinen Vienti MapInfoon Aluerajat MapInfoon Poista valitut Luo vaihtoehto Päivitä uudet alueet Teemakartat Tyhjät tontit YT:ssä piirretyt yksiköt Nukkuvat Ei nukkuvat Pientaloajoitus Avaa pientaloajoitus Päivitä Muokatun pientaloajoituksen lähetys palvelimelle Lähtötiedot MapInfoon Aluerajat MapInfoon Palvelutoimipisteet Toimipistelista Raportit Raportointisovellus

30.4.2013 Versio 2013.2 Sivu 14 / 40 4.2 Näytä suunnittelualueet 4.2.1 Yleiskuvaus Toiminto näyttää suunnittelualueiden listauksen. Listauksen sisältöä voidaan tarkentaa valitsemalla yksi seuraavista listausvaihtoehdoista: Näytä kaikki (aktiiviset ja ei-aktiiviset) Uudet asunto- ja työpaikka-alueet (aktiiviset) Kaikki asunto- ja työpaikka-alueet (aktiiviset) Uudet työpaikka-alueet (aktiiviset) Kaikki työpaikka-alueet (aktiiviset) Ei-aktiiviset alueet (voi olla ideakin) Toiminto näyttää oletuksena Näytä kaikki (aktiiviset ja ei-aktiiviset) valinnan mukaiset suunnittelualueet nimen mukaisessa järjestyksessä. 4.2.2 Toteutus Suunnittelualuelistauksessa näkyvät seuraavassa kuvatut ominaisuudet. Ominaisuus Selite Tallennuspaikka Tunnus Alueen tunnusteksti yt_alue -> numero Nimi Alueen nimiteksti yt_alue -> nimi Aktiivinen suunnitelma Jos alueella ei ole aktiivista suunnitelmaa, näytetään seuraavat tekstit: yt_alue -> idea = 1 Ei aktiivinen Idea, muutoin Ei aktiivinen Hylätty Näytä kaikki (aktiiviset ja ei-aktiiviset) Haku näyttää kaikki alueet. yt_alue -> suun_id yt_alue -> idea Hakulause SELECT DISTINCT(A.id), A.numero, A.nimi, A.suun_id, NULL AS rowcolor, A.idea FROM yt_alue A ORDER BY A.nimi Uudet asunto- ja työpaikka-alueet (aktiiviset) Haku näyttää alueet, jotka ovat merkitty uusiksi alueiksi (yt_alue -> uusi_alue = 1) ja ovat aktiivisia (yt_alue -> suun_id = NOT NULL). Lisäksi alueiden pitää sisältää joitain seuraavista talotyypeistä: AO, AK, AR, T, K, Y. Hakulause SELECT DISTINCT(A.id), A.numero, A.nimi, A.suun_id, NULL AS rowcolor, A.idea FROM yt_alue A WHERE A.uusi_alue=1 AND A.id IN (SELECT id FROM ( SELECT ISNULL(ap.id, tp.id) AS id, ISNULL(ap.lkm,0) AS ap_lkm, ISNULL(tp.lkm, 0) AS tp_lkm FROM (SELECT A.id, count(y.id) AS lkm FROM yt_alue A,yt_yks Y,yt_suun S WHERE S.ID=A.suun_id AND Y.suun_id=S.id AND Y.nukkuva = 0 AND Y.talotyyppi IN ('AO', 'AK', 'AR') AND Y.paivitys_tila = 0 group by A.id) AS ap full join (SELECT A.id, count(y.id) AS lkm FROM yt_alue A,yt_yks Y,yt_suun S WHERE S.ID=A.suun_id AND Y.suun_id=S.id AND Y.nukkuva = 0 AND Y.talotyyppi IN ('T', 'K', 'Y') AND Y.paivitys_tila = 0 group by A.id) AS tp on tp.id = ap.id ) AS aptp) ORDER BY A.nimi

30.4.2013 Versio 2013.2 Sivu 15 / 40 Kaikki asunto- ja työpaikka-alueet (aktiiviset) Haku näyttää alueet, jotka ovat aktiivisia (yt_alue -> suun_id = NOT NULL). Lisäksi alueiden pitää sisältää joitain seuraavista talotyypeistä: AO, AK, AR, T, K, Y. Hakulause SELECT DISTINCT(A.id), A.numero, A.nimi, A.suun_id, NULL AS rowcolor, A.idea FROM yt_alue A WHERE A.id IN (SELECT id FROM ( SELECT ISNULL(ap.id, tp.id) AS id, ISNULL(ap.lkm,0) AS ap_lkm, ISNULL(tp.lkm, 0) AS tp_lkm FROM (SELECT A.id, count(y.id) AS lkm FROM yt_alue A,yt_yks Y,yt_suun S WHERE S.ID=A.suun_id AND Y.suun_id=S.id AND Y.nukkuva = 0 AND Y.talotyyppi IN ('AO', 'AK', 'AR') AND Y.paivitys_tila = 0 group by A.id) AS ap full join (SELECT A.id, count(y.id) AS lkm FROM yt_alue A,yt_yks Y,yt_suun S WHERE S.ID=A.suun_id AND Y.suun_id=S.id AND Y.nukkuva = 0 AND Y.talotyyppi IN ('T', 'K', 'Y') AND Y.paivitys_tila = 0 group by A.id) AS tp on tp.id = ap.id ) AS aptp) ORDER BY A.nimi Uudet työpaikka-alueet (aktiiviset) Haku näyttää alueet, jotka ovat merkitty uusiksi alueiksi (yt_alue -> uusi_alue = 1) ja ovat aktiivisia (yt_alue -> suun_id = NOT NULL). Lisäksi alueet sisältävät enemmän talotyyppejä T, K, Y kuin talotyyppejä AO, AK, AR. Hakulause SELECT DISTINCT(A.id), A.numero, A.nimi, A.suun_id, NULL AS rowcolor, A.idea FROM yt_alue A WHERE A.uusi_alue=1 AND A.id IN (SELECT id FROM ( SELECT ISNULL(ap.id, tp.id) AS id, ISNULL(ap.lkm,0) AS ap_lkm, ISNULL(tp.lkm, 0) AS tp_lkm FROM (SELECT A.id, count(y.id) AS lkm FROM yt_alue A,yt_yks Y,yt_suun S WHERE S.ID=A.suun_id AND Y.suun_id=S.id AND Y.nukkuva = 0 AND Y.talotyyppi IN ('AO', 'AK', 'AR') AND Y.paivitys_tila = 0 group by A.id) AS ap full join (SELECT A.id, count(y.id) AS lkm FROM yt_alue A,yt_yks Y,yt_suun S WHERE S.ID=A.suun_id AND Y.suun_id=S.id AND Y.nukkuva = 0 AND Y.talotyyppi IN ('T', 'K', 'Y') AND Y.paivitys_tila = 0 group by A.id) AS tp on tp.id = ap.id ) AS aptp where aptp.ap_lkm <= aptp.tp_lkm) ORDER BY A.nimi Kaikki työpaikka-alueet (aktiiviset) Haku näyttää alueet, jotka ovat aktiivisia (yt_alue -> suun_id = NOT NULL). Lisäksi alueet sisältävät enemmän talotyyppejä T, K, Y kuin talotyyppejä AO, AK, AR. Hakulause SELECT DISTINCT(A.id), A.numero, A.nimi, A.suun_id, NULL AS rowcolor, A.idea FROM yt_alue A WHERE A.id IN (SELECT id FROM ( SELECT ISNULL(ap.id, tp.id) AS id, ISNULL(ap.lkm,0) AS ap_lkm, ISNULL(tp.lkm, 0) AS tp_lkm FROM (SELECT A.id, count(y.id) AS lkm FROM yt_alue A,yt_yks Y,yt_suun S WHERE S.ID=A.suun_id AND Y.suun_id=S.id AND Y.nukkuva = 0 AND Y.talotyyppi IN ('AO', 'AK', 'AR') AND Y.paivitys_tila = 0 group by A.id) AS ap full join (SELECT A.id, count(y.id) AS lkm FROM yt_alue A,yt_yks Y,yt_suun S WHERE S.ID=A.suun_id AND Y.suun_id=S.id AND Y.nukkuva = 0 AND Y.talotyyppi IN ('T', 'K', 'Y') AND Y.paivitys_tila = 0 group by A.id) AS tp on tp.id = ap.id ) AS aptp where aptp.ap_lkm <= aptp.tp_lkm) ORDER BY A.nimi Ei-aktiiviset alueet (voi olla ideakin) Haku näyttää alueet, joilla ei ole aktiivista suunnitelmaa (yt_alue -> suun_id = NULL). Hakulause SELECT DISTINCT(A.id), A.numero, A.nimi, A.suun_id, NULL AS rowcolor, A.idea FROM yt_alue A WHERE A.suun_id is NULL ORDER BY A.nimi 4.2.3 Virhetilanteet Ei virhetilanteiden käsittelyä.

30.4.2013 Versio 2013.2 Sivu 16 / 40 4.3 Avaa (Suunnittelualueet) 4.3.1 Yleiskuvaus Toiminto näyttää suunnittelualueen ominaisuustiedot ja alueeseen liittyvien suunnitelmien listauksen. 4.3.2 Toteutus Suunnittelualueen ominaisuudet Toiminto hakee alueen ominaisuustiedot. Suunnittelualueen ominaisuusnäytössä näkyvät seuraavassa kuvatut ominaisuudet. Ominaisuus Selite Tallennuspaikka Nimi Alueen nimiteksti yt_alue -> nimi Tunnus Alueen tunnusteksti yt_alue -> numero Matala / tiivis Matala tiivis -rakennustapa yt_alue -> matala_tiivis Maanhankinta Maanhankintatarve yt_alue -> maanhankinta Uusi alue Yhdyskuntatekniikan piirissä yt_alue -> uusi_alue Idea Ideatasoinen suunnitelma yt_alue -> idea Kartta Alueen kartan indeksi yt_alue -> kartta Huomautettavaa Vapaamuotoinen huomautusteksti yt_alue -> huom Hakulause SELECT * FROM yt_alue WHERE id='yt_alue->id' Alueen suunnitelmat Haku näyttää alueeseen liittyvät suunnitelmat numerojärjestyksessä. Alueen suunnitelmalistauksessa näkyvät seuraavassa kuvatut ominaisuudet. Ominaisuus Selite Tallennuspaikka Numero Suunnitelman yksilöivä numero yt_suun -> numero Aktiivisuus Suunnitelman aktiivisuus yt_alue -> suun_id = yt_suun -> id Hakulause SELECT id, alue_id, numero FROM yt_suun WHERE alue_id='yt_alue->id' ORDER BY numero 4.3.3 Virhetilanteet Ei virhetilanteiden käsittelyä. 4.4 Tallenna (Suunnittelualue) 4.4.1 Yleiskuvaus Toiminto tallentaa kohdassa 4.3.2 kuvatut ominaisuustiedot. 4.4.2 Toteutus Toiminto tallentaa jokaisen ominaisuustiedon yksi kerrallaan. Päivityslause UPDATE yt_alue SET 'ominaisuus'='arvo' WHERE id='yt_alue->id'

30.4.2013 Versio 2013.2 Sivu 17 / 40 4.4.3 Virhetilanteet Ei virhetilanteiden käsittelyä. 4.5 Luo suunnitelma (Suunnittelualue) 4.5.1 Yleiskuvaus Toiminto näyttää suunnitelman ominaisuustietojen syöttönäytön uuden suunnitelman lisäystä varten. Ominaisuustiedot on kuvattu kohdassa 4.7.2. 4.5.2 Toteutus Ominaisuustietojen arvot alustetaan tyhjiksi. 4.6 Tallenna (Luo suunnitelma) 4.6.1 Yleiskuvaus Toiminto lisää uuden suunnitelman. Toiminto tallentaa kohdassa 4.7.2 kuvatut ominaisuustiedot. 4.6.2 Toteutus Toiminto lisää ensin taulun pääavaimen (yt_suun -> id) arvon uudelle riville. Sen jälkeen tallennetaan jokainen ominaisuustieto yksi kerrallaan. Lisäyslause INSERT INTO yt_suun (id) VALUES ('uusi_id') Päivityslause UPDATE yt_suun SET 'ominaisuus'='arvo' WHERE id='yt_suun->id' 4.6.3 Virhetilanteet Ei virhetilanteiden käsittelyä. 4.7 Avaa (Suunnitelmat) 4.7.1 Yleiskuvaus Toiminto näyttää suunnitelman ominaisuustiedot, suunnitelman sisältämien yksiköiden listauksen ja yhteenvedon suunnitelman varantotiedoista. 4.7.2 Toteutus Suunnitelman ominaisuudet Toiminto hakee suunnitelman ominaisuustiedot. Suunnitelman ominaisuusnäytössä näkyvät seuraavat ominaisuudet. Ominaisuus Selite Tallennuspaikka Huomautettavaa Vapaamuotoinen huomautusteksti yt_suun -> huom Hakulause SELECT * FROM yt_suun WHERE id='yt_suun->id'

30.4.2013 Versio 2013.2 Sivu 18 / 40 Suunnitelman yksiköt Haku näyttää suunnitelman yksiköiden listauksen. Listausjärjestys on oletuksena kiinteistötunnuksen mukainen. Suunnitelman yksikkölistauksessa näkyvät seuraavassa kuvatut ominaisuudet. Ominaisuus Selite Tallennuspaikka Kiinteistötunnus Yksikön kiinteistötunnus yt_yks -> kiin_tun Kunn.tek. Kunnallistekniikan tarve yt_yks -> kun_tekn Käyt.tark. Käyttötarkoitus yt_yks -> kayttark Osa-alue Yksikön alue yt_osa_alue -> nimi Kaavamuoto Kaavamuoto yt_yks -> kaavamuoto Talotyyppiarv. Talotyyppiarvio yt_yks -> talotyyppi Kaup.luov. Kaupungin luovuttama yt_yks -> kaup_luov rakennuspaikka Nuk. Toteutusmisarvio yt_yks -> nukkuva Marg. Marginaalinen rakennusoikeus marginaaliset_listaus Tyhjä Tyhjä, jos ei R- tai V-hankkeita V hanke V-hankkeiden lukumäärä T hanke T-hankkeiden lukumäärä Yht. kap. Rakennusoikeus yhteensä yt_yks -> kap Asum. kap. Asuntorakentamisen rak.oikeus yt_yks -> kap_as Rak.oik. jälj. Rakennusoikeutta jäljellä (rakennetut kerrosneliöt hankkeista) yk_yks -> kap SUM(yt_hanke -> kem) Pinta-ala Yksikön pinta-ala yt_yks -> pinta_ala Hakulause SELECT yt_yks.id, yt_yks.kap, yt_yks.talotyyppi, yt_yks.kiin_tun, (SELECT COUNT(id) FROM marginaaliset_listaus WHERE marginaaliset_listaus.id = yt_yks.id) AS marginaalinen, yt_yks.nukkuva, yt_yks.kap_as, (SELECT COUNT(id) FROM yt_hanke WHERE yt_hanke.yks_id = yt_yks.id AND yt_hanke.tyyppi='v') AS v_hanke, (SELECT COUNT(id) FROM yt_hanke WHERE yt_hanke.yks_id=yt_yks.id AND yt_hanke.tyyppi='t') AS t_hanke, (SELECT yt_yks.kap - ISNULL((SELECT SUM(yt_hanke.kem) FROM yt_hanke WHERE yt_hanke.yks_id = yt_yks.id), 0)) AS rak_oik_jaljella, yt_yks.paivitys_tila, yt_yks.kayttark, yt_yks.kaavamuoto, yt_yks.kaup_luov, yt_osa_alue.nimi AS osa_alue, pinta_ala, kun_tekn, (SELECT COUNT(id) FROM yt_hanke WHERE yt_hanke.yks_id = yt_yks.id AND yt_hanke.tyyppi IN ('R', 'V')) AS tyhja FROM yt_yks, yt_osa_alue WHERE suun_id='yt_suun->id' AND yt_osa_alue.id = yt_yks.osa_alue_id ORDER BY 'yt_yks->kiin_tun' ASC Yhteenveto suunnitelman varantotiedoista Haku näyttää yhteenvedon suunnitelman kapasiteeteista (rakennusoikeuksista) jaoteltuna eri talotyyppien ja omistussuhteen mukaan. Yhteenvedossa näkyvät seuraavassa kuvatut ominaisuudet. Kaikista ominaisuuksista on laskettu kaupungin ja yksityisten maista muodostettujen yksikköjen summatiedot sekä em. summa yhteensä. Rakennusoikeus tarkoittaa asumisen rakennusoikeutta kaikissa muissa paitsi Yhteensä kapasiteetti ja Yhteensä kapasiteetti, jäljellä sarakkeissa. Yksiköistä ei huomioida nukkuvia (yt_yks -> nukkuva = 0). Ominaisuus Selite Tallennuspaikka Asumisen kapasiteetti Asuntorakentamisen rak.oikeus yhteensä Hakulause 1 (+ rajauslause 1 tai 2) Yhteensä kapasiteetti Rakennusoikeus yhteensä Hakulause 2 (+ rajauslause 1 tai 2) AO-Tontit Omakotitonttien lukumäärä Hakulause 3 (+ rajauslause 1 tai 2)

30.4.2013 Versio 2013.2 Sivu 19 / 40 AR-Kapasiteetti Rivitalotonttien rakennusoikeus Hakulause 4 (+ rajauslause 1 tai 2) AK-Kapasiteetti Asuinkerrostalotonttien rakennusoikeus Hakulause 5 (+ rajauslause 1 tai 2) AR+AK-Kapasiteetti Asuinkerrostalo- ja rivitalotonttien rakennusoikeus yhteensä Hakulause 6 (+ rajauslause 1 tai 2) K-Kapasiteetti Liike- ja toimistorakennusten asumisen rakennusoikeus Hakulause 7 (+ rajauslause 1 tai 2) Y-Kapasiteetti Yleisten rakennusten asumisen rakennusoikeus Hakulause 8 (+ rajauslause 1 tai 2) T-Kapasiteetti Teollisuus- ja varastorakennusten asumisen rakennusoikeus Hakulause 9 (+ rajauslause 1 tai 2) Asumisen kapasiteetti, jäljellä Asumisen jäljellä oleva rakennusoikeus Hakulause 1 (+ rajauslause 1 tai 2) + rajauslause 3 Yhteensä kapasiteetti, jäljellä Jäljellä oleva rakennusoikeus yhteensä Hakulause 2 (+ rajauslause 1 tai 2) + rajauslause 3 AO-Tontit, jäljellä Jäljellä olevat omakotitontit Hakulause 3 (+ rajauslause 1 tai 2) + rajauslause 3 AR-Kapasiteetti, jäljellä Rivitalotonttien jäljellä oleva rakennusoikeus Hakulause 4 (+ rajauslause 1 tai 2) + rajauslause 3 AK-Kapasiteetti, jäljellä Asuinkerrostalotonttien jäljellä oleva rakennusoikeus Hakulause 5 (+ rajauslause 1 tai 2) + rajauslause 3 AR+AK-Kapasiteetti, jäljellä Asuinkerrostalo- ja rivitalotonttien jäljellä oleva rakennusoikeus yhteensä Hakulause 6 (+ rajauslause 1 tai 2) + rajauslause 3 K-Kapasiteetti, jäljellä Y-Kapasiteetti, jäljellä T-Kapasiteetti, jäljellä Liike- ja toimistorakennusten asumisen jäljellä oleva rakennusoikeus Yleisten rakennusten asumisen jäljellä oleva rakennusoikeus Teollisuus- ja varastorakennusten asumisen jäljellä oleva rakennusoikeus Hakulause 7 (+ rajauslause 1 tai 2) + rajauslause 3 Hakulause 8 (+ rajauslause 1 tai 2) + rajauslause 3 Hakulause 9 (+ rajauslause 1 tai 2) + rajauslause 3 Hakulause (Asumisen kapasiteetti) (1) SELECT SUM(kap_as) FROM yt_yks WHERE suun_id='yt_suun->id' AND nukkuva=0 Hakulause (Yhteensä kapasiteetti) (2) SELECT SUM(kap) FROM yt_yks WHERE suun_id='yt_suun->id' AND nukkuva=0 Hakulause (AO-Tontit) (3) SELECT FLOOR((SUM(kap_as) / 180)) FROM yt_yks WHERE suun_id='yt_suun->id' AND nukkuva=0 AND talotyyppi='ao' Hakulause (AR-Kapasiteetti) (4) SELECT SUM(kap_as) FROM yt_yks WHERE suun_id='yt_suun->id' AND nukkuva=0 AND talotyyppi='ar' Hakulause (AK-Kapasiteetti) (5) SELECT SUM(kap_as) FROM yt_yks WHERE suun_id='yt_suun->id' AND nukkuva=0 AND talotyyppi='ak' Hakulause (AR+AK-Kapasiteetti) (6) SELECT SUM(kap_as) FROM yt_yks WHERE suun_id='yt_suun->id' AND nukkuva=0 AND (talotyyppi='ak' OR talotyyppi='ar')

30.4.2013 Versio 2013.2 Sivu 20 / 40 Hakulause (K-Kapasiteetti) (7) SELECT SUM(kap_as) FROM yt_yks WHERE suun_id='yt_suun->id' AND nukkuva=0 AND talotyyppi='k' Hakulause (Y-Kapasiteetti) (8) SELECT SUM(kap_as) FROM yt_yks WHERE suun_id='yt_suun->id' AND nukkuva=0 AND talotyyppi='y' Hakulause (T-Kapasiteetti) (9) SELECT SUM(kap_as) FROM yt_yks WHERE suun_id='yt_suun->id' AND nukkuva=0 AND talotyyppi='t' Seuraavassa esitetyt rajauslauseet yhdistetään em. hakulauseisiin, jotta tulokseksi saadaan rajausehdon mukaiset kapasiteetit. Ilman rajauslauseita hakulauseiden tuloksena saadaan kapasiteetit yhteensä. Kaupungin luovuttamat yksiköt rajataan kapasiteettiyksikön ominaisuudella Kaupungin luovutus (yt_yks -> kaup_luov = 1) ja omistajan nimellä (yt_yks -> omistaja). Rajauslause (kaupungin luovuttamat) (1)... AND (kaup_luov=1 OR omistaja='jyväskylän kaupunki') Yksityisten luovuttamat yksiköt rajataan kuten kaupungin luovuttamat, mutta käänteisesti (NOT) ja lisäksi rajataan pois seurakuntien luovuttamat yksiköt. Rajauslause (yksityisten luovuttamat) (2)... AND NOT (kaup_luov=1 OR (omistaja IS NOT NULL AND omistaja LIKE 'jyväskylän kaupunki%' AND omistaja NOT LIKE 'jyväskylän kaupunki%seurakunta')) Jäljellä olevat kapasiteetit saadaan rajaamalla pois yksiköt, jotka tulkitaan tyhjiksi. Tyhjiksi yksiköiksi lasketaan sellaiset, joihin ei liity yhtään R- tai V-hanketta. Rajauslause (tyhjät yksiköt) (3) AND (SELECT COUNT(id) FROM yt_hanke WHERE yt_hanke.yks_id=yt_yks.id AND yt_hanke.tyyppi IN ('R', 'V'))=0 4.7.3 Virhetilanteet Ei virhetilanteiden käsittelyä. 4.8 Tallenna (Suunnitelma) 4.8.1 Yleiskuvaus Toiminto tallentaa kohdassa 4.7.2 kuvatut ominaisuustiedot. 4.8.2 Toteutus Toiminto tallentaa jokaisen ominaisuustiedon yksi kerrallaan. Päivityslause UPDATE yt_suun SET 'ominaisuus'='arvo' WHERE id='yt_suun->id' 4.8.3 Virhetilanteet Ei virhetilanteiden käsittelyä.

30.4.2013 Versio 2013.2 Sivu 21 / 40 4.9 Listausjärjestyksen muuttaminen (Yksiköt) 4.9.1 Yleiskuvaus Toiminto muuttaa suunnitelman kapasiteettiyksiköiden listausjärjestystä halutun ominaisuuden mukaan. Listausjärjestys on oletuksena kiinteistötunnuksen mukainen. 4.9.2 Toteutus Listausjärjestystä voidaan muuttaa valitsemalla yksikkölistauksen otsikkoriviltä haluttu ominaisuus. Listauksen voi muuttaa ominaisuuden mukaan nousevaksi tai laskevaksi. Yksikkölistauksessa näkyvät ominaisuudet ja hakulause on kuvattu kohdassa 4.7.2. Listausjärjestyksen valinta muuttaa vain hakulauseen viimeisen järjestyksen määräävän komponentin. Hakulause (listausjärjestys)... ORDER BY 'yt_yks->ominaisuus' ASC DESC 4.9.3 Virhetilanteet Ei virhetilanteiden käsittelyä. 4.10 Avaa (Yksiköt) 4.10.1 Yleiskuvaus Toiminto näyttää yksikön ominaisuustiedot ja yksiköihin liittyvien hankkeiden listauksen. 4.10.2 Toteutus Kapasiteettiyksikön ominaisuudet Toiminto hakee yksikön ominaisuustiedot. Kapasiteettiyksikön ominaisuusnäytössä näkyvät seuraavassa kuvatut ominaisuudet. Ominaisuus Selite Tallennuspaikka Kiinteistötunnus Yksikön kiinteistötunnus yt_yks -> kiin_tun Käyttötarkoitus Käyttötarkoitus yt_yks -> kayttark Osa-alue Yksikön alue yt_osa_alue -> nimi Kaavamuoto Kaavamuoto yt_yks -> kaavamuoto Talotyyppiarvio Talotyyppiarvio yt_yks -> talotyyppi Kaupungin Kaupungin luovuttama yt_yks -> kaup_luov luovutus rakennuspaikka Asuminen kap. Asuntorakentamisen rak.oikeus yt_yks -> kap_as Yhteensä kap. Rakennusoikeus yhteensä yt_yks -> kap Pinta-ala Yksikön pinta-ala yt_yks -> pinta_ala Nukkuva Toteutumisarvio yt_yks -> nukkuva Vaatii uutta kunnallistekniikkaa Kunnallistekniikan tarve yt_yks -> kun_tekn Huomautettavaa Vapaamuotoinen huomautusteksti yt_yks -> huom Luontipäivä Lisäysaika järjestelmään yt_yks -> c_time Kaavatunnus Kaavatunnus yt_yks -> kaava_tun Omistaja Omistajan nimi yt_yks -> omistaja Tontin vuokraaja Vuokraajan nimi yt_yks -> vuokraaja Tontin varaaja Varaajan nimi yt_yks -> varaaja Varausaika päättyy Varauksen päättymispäivä yt_yks -> var_aika

30.4.2013 Versio 2013.2 Sivu 22 / 40 Hakulause SELECT * FROM yt_yks WHERE id='yt_yks->id' Kapasiteettiyksikön hankkeet Haku näyttää yksikköön liittyvät hankkeet (T, V, R) aikajärjestyksessä. Yksikön hankelistauksessa näkyvät seuraavassa kuvatut ominaisuudet. Ominaisuus Selite Tallennuspaikka Vuosi Hankkeen toteutusvuosi yt_hanke -> vuosi Tyyppi Hankkeen tyyppi yt_hanke -> tyyppi Kem. as. Asuinrakentamisen kerrosala yt_hanke -> kem_as Kem. yht. Kerrosala yhteensä yt_hanke -> kem Hakulause SELECT id, vuosi, tyyppi, kem_as, kem FROM yt_hanke WHERE (tyyppi='v' OR tyyppi='t' OR tyyppi='r') AND yks_id='yt_yks->id' ORDER BY vuosi 4.10.3 Virhetilanteet Ei virhetilanteiden käsittelyä. 4.11 Tallenna (Kapasiteettiyksikkö) 4.11.1 Yleiskuvaus Toiminto tallentaa kohdassa 4.10.2 kuvatut ominaisuustiedot. 4.11.2 Toteutus Toiminto tallentaa jokaisen ominaisuustiedon yksi kerrallaan. Päivityslause UPDATE yt_yks SET 'ominaisuus'='arvo' WHERE id='yt_yks->id' 4.11.3 Virhetilanteet Ei virhetilanteiden käsittelyä. 4.12 Poista (Kapasiteettiyksikkö) 4.12.1 Yleiskuvaus Toiminnolla poistetaan yksikön, siihen liittyvien hankkeiden ja yksikköä kuvaavien monikulmioiden tiedot. 4.12.2 Toteutus Toiminnon aluksi etsitään yksikköön viittaavan monikulmion tunniste. Hakulause SELECT id FROM yt_polygon WHERE ext_id='yt_yks->id' Ensin poistetaan kaikki monikulmioon liittyvät kulmapisteet hakulauseesta saadun monikulmion tunnisteen perusteella. Sitten poistetaan monikulmion tiedot. Tämän jälkeen poistetaan yksikköön liittyvien hankkeiden tiedot. Lopuksi poistetaan yksikön ominaisuustiedot.

30.4.2013 Versio 2013.2 Sivu 23 / 40 Poistolause (monikulmion kulmapisteet) DELETE FROM yt_vertex WHERE parent_id='yt_polygon->id' Poistolause (monikulmio) DELETE FROM yt_polygon WHERE ext_id='yt_yks->id' Poistolause (yksikkö) DELETE FROM yt_yks WHERE id='yt_yks->id' 4.12.3 Virhetilanteet Ei virhetilanteiden käsittelyä. 4.13 Lisää (T- V- ja R hankkeet) 4.13.1 Yleiskuvaus Toiminto lisää kapasiteettiyksikölle uuden hankkeen. Toiminto tallentaa kohdassa 4.10.2 kuvatut ominaisuustiedot. 4.13.2 Toteutus Toiminto lisää ensin taulun pääavaimen (yt_hanke->id) arvon uudelle riville. Sen jälkeen tallennetaan jokainen ominaisuustieto yksi kerrallaan. Lisäyslause INSERT INTO yt_hanke (id) VALUES ('uusi_id') Päivityslause UPDATE yt_hanke SET 'ominaisuus'='arvo' WHERE id='yt_hanke->id' 4.13.3 Virhetilanteet Ei virhetilanteiden käsittelyä. 4.14 Poista valitut (T- V- ja R hankkeet) 4.14.1 Yleiskuvaus Toiminnolla poistetaan kapasiteettiyksikköön liittyvien hankkeiden tiedot. 4.14.2 Toteutus Toiminnossa käydään läpi kaikki poistettaviksi valitut hankkeet ja kerätään muistiin hankkeiden yksilöivät tunnisteet. Tämän jälkeen valitut hankkeet poistetaan kerralla. Poistolause DELETE FROM yt_hanke WHERE id IN ('yt_hanke->id1',..., 'yt_hanke->idn') 4.14.3 Virhetilanteet Ei virhetilanteiden käsittelyä.

30.4.2013 Versio 2013.2 Sivu 24 / 40 4.15 Muokkaa valittuja yksiköitä (Yksiköt) 4.15.1 Yleiskuvaus Toiminnolla voidaan päivittää yhtäaikaisesti usean kapasiteettiyksikön ominaisuuksia. Toiminto näyttää ne yksiköiden ominaisuustiedot, joita voidaan muokata usean yksikön osalta. 4.15.2 Toteutus Ominaisuustietojen arvot alustetaan tyhjiksi. Yksikön ominaisuusnäytössä näkyvät seuraavassa kuvatut ominaisuudet. Ominaisuus Selite Tallennuspaikka Kaavamuoto Kaavamuoto yt_yks -> kaavamuoto Kaupungin Kaupungin luovuttama yt_yks -> kaup_luov luovutus rakennuspaikka Nukkuva Toteutumisarvio yt_yks -> nukkuva Vaatii uutta kunnallistekniikkaa Kunnallistekniikan tarve yt_yks -> kun_tekn 4.16 Tallenna ja sulje (Muokkaa valittuja yksiköitä) 4.16.1 Yleiskuvaus Toiminto tallentaa kohdassa 4.15.2 kuvatut ominaisuustiedot valituille yksiköille. 4.16.2 Toteutus Kaikki valitut yksiköt käydään läpi silmukassa ja yksikölle tallennetaan ominaisuustiedot. Päivityslause UPDATE yt_yks SET kaavamuoto='kaavamuoto', kaup_luov='kaupungin luovutus', nukkuva='nukkuva', kun_tekn='vaatii uutta kunnallistekniikkaa' WHERE yt_yks.id='yt_yks->id' 4.16.3 Virhetilanteet Ei virhetilanteiden käsittelyä. 4.17 Aktiivinen Ei aktiivinen (Suunnitelmat) 4.17.1 Yleiskuvaus Toiminto vaihtaa alueen suunnitelman aktiivisuus-ominaisuutta. 4.17.2 Toteutus Aktiivisuus-ominaisuutta voidaan vaihtaa linkeillä Aktiivinen tai Ei aktiivinen. Vain yksi suunnitelma kerrallaan voi olla aktiivinen. Aktiivinen-linkki päivittää ko. suunnitelman aktiiviseksi. Ei aktiivinen-linkki päivittää ko. suunnitelman aktiivisuusominaisuuden pois päältä, jolloin alueen yksikään suunnitelma ei ole aktiivinen. Päivityslause (Aktiivinen) UPDATE yt_alue SET suun_id='yt_suun->id' WHERE id='yt_alue->id'

30.4.2013 Versio 2013.2 Sivu 25 / 40 Päivityslause (Ei aktiivinen) UPDATE yt_alue SET suun_id=null WHERE id='yt_alue->id' 4.17.3 Virhetilanteet Ei virhetilanteiden käsittelyä. 4.18 Monista valitut (Suunnitelmat) 4.18.1 Yleiskuvaus Toiminto kopioi valittujen suunnitelmien ominaisuustiedot, suunnitelmaan liittyvien yksiköiden ja hankkeiden tiedot. Lisäksi kopioidaan yksiköitä kuvaavien monikulmioiden tiedot. 4.18.2 Toteutus Kaikki valitut suunnitelmat käydään läpi silmukassa ja haetaan suunnitelman ominaisuustiedot. Hakulause (suunnitelma) SELECT * from yt_suun WHERE id='yt_suun->id' Suunnitelman tietoihin päivitetään uusi yksilöivä tunniste (yt_suun -> id) sekä uusi numero (yt_suun -> numero) ja tiedot tallennetaan kohdassa 4.6 kuvatun mukaisesti. Tämän jälkeen haetaan suunnitelmaan liittyvien yksiköiden tiedot. Hakulause (yksiköt) SELECT * from yt_yks WHERE suun_id='yt_suun->id' Suunnitelman yksiköt käydään läpi silmukassa. Yksikön tietoihin päivitetään uusi yksilöivä tunniste (yt_yks -> id) sekä uuden suunnitelman yksilöivä tunniste (yt_yks -> suun_id) ja tiedot tallennetaan. Tämän jälkeen haetaan yksiköihin liittyvät hankkeet ja yksiköitä kuvaavat monikulmiot. Hakulause (hankkeet) SELECT * FROM yt_hanke WHERE yks_id='yt_yks->id' Hakulause (monikulmiot) SELECT id FROM yt_polygon WHERE ext_type='yt_yks' AND ext_id='yt_yks->id' Yksikön hankkeet käydään läpi silmukassa. Hankkeen tietoihin päivitetään uusi yksilöivä tunniste (yt_hanke -> id) sekä uuden yksikön yksilöivä tunniste (yt_hanke -> yks_id) ja tiedot tallennetaan kohdassa 4.13 kuvatun mukaisesti. Yksiköitä kuvaavat monikulmiot käydään läpi silmukassa. Monikulmion tietoihin päivitetään uusi yksilöivä tunniste (yt_polygon -> id) sekä uuden yksikön yksilöivä tunniste (yt_polygon -> ext_id) ja tiedot tallennetaan. Tämän jälkeen haetaan monikulmion kulmapisteiden tiedot. Hakulause (monikulmion kulmapisteet) SELECT id from yt_vertex WHERE parent_id='yt_polygon->id' Monikulmion kulmapisteet käydään läpi silmukassa. Kulmapisteen tietoihin päivitetään uusi yksilöivä tunniste (yt_vertex -> id) sekä uuden monikulmion yksilöivä tunniste (yt_vertex -> parent_id) ja tiedot tallennetaan.

30.4.2013 Versio 2013.2 Sivu 26 / 40 4.18.3 Virhetilanteet Ei virhetilanteiden käsittelyä. 4.19 Poista valitut (Suunnitelmat) 4.19.1 Yleiskuvaus Toiminnolla poistetaan valittujen suunnitelmien ja siihen liittyvien yksiköiden tiedot. Toiminnolla voi poistaa monta suunnitelmaa kerralla. 4.19.2 Toteutus Kaikki valitut suunnitelmat käydään läpi silmukassa ja haetaan siihen liittyvien yksiköiden yksilöivät tunnisteet. Hakulause (yksiköiden tunnisteet) SELECT id FROM yt_yks WHERE suun_id='yt_suun->id' Suunnitelmaan liittyvät yksiköt poistetaan yksi kerrallaan kohdan 4.12 mukaisesti. Lopuksi poistetaan suunnitelman ominaisuustiedot. Poistolause (suunnitelma) DELETE FROM yt_suun WHERE id='yt_suun->id' 4.19.3 Virhetilanteet Ei virhetilanteiden käsittelyä. 4.20 Siirrä suunnittelualueelle (Suunnitelmat) 4.20.1 Yleiskuvaus Toiminnolla siirretään valitut suunnitelmat halutulle suunnittelualueelle. Toiminnolla voi siirtää monta suunnitelmaa kerralla. 4.20.2 Toteutus Kaikki valitut suunnitelmat käydään läpi silmukassa ja otetaan talteen suunnitelmien yksilöivät tunnisteet (idlist). Tämän jälkeen etsitään siirron kohteena olevan suunnittelualueen suurin suunnitelman numero (MAX(yt_suun -> numero)). Sitten päivitetään suunnitelmien alueen yksilöivä tunniste (yt_suun -> alue_id). Päivityslause (suunnitelmien alueet) UPDATE yt_suun SET alue_id='yt_alue->id' WHERE id IN (idlist) Sitten käydään kaikki valitut suunnitelmat läpi ja päivitetään uusi suunnitelman numero (yt_suun -> numero). Päivityslause (suunnitelmien numerot) UPDATE yt_suun SET numero='uusi_numero' WHERE id='yt_suun->id' 4.20.3 Virhetilanteet Ei virhetilanteiden käsittelyä.