Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: VBA: Apua aloittelijalle päättötyön kanssa

Sivun loppuun

erepmat [21.02.2006 11:27:23]

#

Ongelmani on siis seuraavanlainen. Opiskelen laivakonetekniikan insinööriksi viimeistä vuotta, ja päättötyö painaa päälle. Suunnitteilla on yleispätevä tietokonepohjainen huoltojen seurantaohjelma laivaolosuhteisiin, joka toimisi siis kaikenlaisissa alustyypeissä. No, alunpitäen suunnitelma oli tehdä päättötyö puoliksi erään ATK-alaa opiskelevan kaverin kanssa ts. minä hoidan paperille suunnittelun, yhteistyön ohjelman tilanneen varustamon kanssa, testauksen jne, ja kaveri taas ohjelmoinnin. Kaveri lähtikin sitten kolmen vuoden pestille Australiaan...Nyt pitäisi sitten itse alkaa yrittämään tuota koodaamista, argh! Työkaluna käytössä vb 6, ja oli ennen kaverin lähtöä puhetta että Accessia sekoitetaan joukkoon. Nyt onkin kaikki sitten KAIKKI apu tarpeen; linkit, vinkit, koodit, oppaat, kirjat, niksit, tutorialit...ihan mitä vaan! Aiempi ohjelmointikokemus ylä-asteelta...ja siitä 8 vuotta aikaa!!! Kiitos jo etukäteen !

aloitteleva [21.02.2006 14:22:00]

#

Siis kerros vielä minkälaisen ohjelman teet, ei oikeen tosta tekstistä kunnolla selvää saa.

Henu [21.02.2006 15:39:53]

#

Niinkuin aloitteleva sanoi tarkenna hieman. Mitä ohjelman pitäisi tehdä ja milloin?

BadSource [21.02.2006 15:59:29]

#

Varsin laaja kysymys, sillä tuohan kattaa koko ohjelman elinkaaren, jos tyhjentävästi alkaa ongelmaa pohtia...=)

Koulun kirjastosta (todennäköisesti parempi kuin yleinen) käyt katsomassa, löytyykö sieltä kirjaa VB6:sta ja Access:sta. Jos VB6:n kirjassa on käsitelty tietokantoja, niin siellä on tavallisesti esimerkki tietokantapohjaisen video/CD/DVD-kirjaston tekemisestä, josta saat kuvaa siitä, mitä ihmettä olet tekemässä. Lukemista ei kannata suoraan aloittaa esimerkistä, vaan aloittaa kiltisti sieltä alusta, sillä apua kysyttäessä vastaus on todennäköisesti "RTFM n00b!", jos kysymyksestä jo selviää, ettei perusteet ole selvillä. Sad, but so true...

Ennen kuin edes suunnittelet VB:n käynnistämistä, niin kannattaa ohjelman tilaajan kanssa tarkasti selvittää, mitä tietoja ohjelmaasi tarvitaan ja kuka ohjelmaasi käyttää. Laivan kapteenia (mahdollisesti) kiinnostaa eri asiat, kuin korjaamon päällikköä, ja laivan messipoika tarvitsee (jos tarvitsee) eri tietoja, kuin korjaamon levyseppähitsaaja. Loppukäyttäjä määrittää sen, minkä näköinen ohjelmasi on. Esitetäänkö ohjelman pääsivulla yhden aluksen tiedot kerralla, laajempia listoja kaikista aluksista, vai yhteenvetoja eri tiedoista. Eli tilaajan kanssa piirtelet kuvia ohjelmasi käyttöliittymästä. Kynä ja paperi on paras tähän hommaan.

Mitä tarkemmin tiedot on selvitetty etukäteen, sitä helpompaa on tietokannan luonti, mikä on seuraavana ToDo-listalla. Tietokanna luontiin kannattaa panostaa, sillä mitä paremmin se on tehty, sitä helpompaa sitä on hallinoida ja sitä helpompaa sitä on käsitellä VB:s(s/t)ä. Siitä kirjastosta löytyneestä Access-oppaasta löytyy alkeet ja pidemmälle menevät kuvaukset, miten tietokanta luodaan. Joten RTFM, ;).

Kun tietokanta alkaa olla valmis, käynnistetään itse VB. Jos kirjan esimerkin pohjalta ei kaikki selvinnyt (enemmän kuin todennäköistä), niin apua löytyy täältä tai Googlella. Jos tekemisistä on jonkinlainen kuva, niin avun saaminen/löytäminen on helpompaa, kun osa tarkemmin määritellä mitä on tehnyt ja missä apua tarvitsee.

Tuossa pelkkä raapaisu asiasta, sillä kaiken kattava vastaus on lähes mahdoton tässä antaa.

Paras ohje taitaa kuitenkin olla KISS, minkä unohtamalla ampuu vain itseään jalkaan...=)

Blaze [21.02.2006 16:19:39]

#

BadSource kirjoitti:

Ennen kuin edes suunnittelet VB:n käynnistämistä, niin kannattaa ohjelman tilaajan kanssa tarkasti selvittää, mitä tietoja ohjelmaasi tarvitaan ja kuka ohjelmaasi käyttää. Laivan kapteenia (mahdollisesti) kiinnostaa eri asiat, kuin korjaamon päällikköä, ja laivan messipoika tarvitsee (jos tarvitsee) eri tietoja, kuin korjaamon levyseppähitsaaja. Loppukäyttäjä määrittää sen, minkä näköinen ohjelmasi on. Esitetäänkö ohjelman pääsivulla yhden aluksen tiedot kerralla, laajempia listoja kaikista aluksista, vai yhteenvetoja eri tiedoista. Eli tilaajan kanssa piirtelet kuvia ohjelmasi käyttöliittymästä. Kynä ja paperi on paras tähän hommaan.

Sikäli kun ymmärsin, tämä olisi alun perinkin kuulunut erepmatin toimenkuvaan ja ongelma on tällä kertaa nimenomaan koodaamisessa.

Aika ilkeä temppu kaverilta :(

NanoSoft [22.02.2006 00:12:19]

#

Eikö kaverisi voi auttaa sinua vaikka messengerin kautta tai sähköpostilla?

erepmat [22.02.2006 01:10:04]

#

Elikäs valotusta ohjelman luonteeseen, kun ilmeisesti herättänyt jossain määrin kiinnostusta...Sinänsä ohjelmasta on tarkoitus siis tehdä hyvinkin simppeli koneistojen huollon kalenteri, joka rakennetaan aluksen koneikon mukaiseksi ALUKSEN OMAN koneporukan toimesta. Ts. tavoitteena on luoda pelkkä blankkopohja, johon saadaan rakennettua aluksen laitteisto sen mukaisesti, mitä koneiston operaattori katsoo tarpeelliseksi.(ja sikäli saada ohjelma toimivaksi mahdollisimman monessa eri tyyppisessä aluksessa)
Laivoilla on muutamia suurempia laitekokonaisuuksia (kuten vaikkapa kattila(t), pääkone(et) sekä dieselgeneraattorit.) Näillä kaikilla laitteilla on tyypillisesti useita eri huoltokohteita, joiden huoltovälit on valmistaja ilmoittanut käyttötuntien mukaan. (esimerkiksi dieselgeneraattorissa tyypillisiä ovat polttoainepumppujen huolto, pa-venttiilien vaihto, venttiilien säädöt, täyshaalaukset jne). Nämä huoltokohteet siis, joiden huoltoväli on ilmoitettu tunneissa, olisi tarkoitus saada keskitettyä "yhteen läjään" operaattorin työn helpottamiseksi. Käytännössä operaattorin työksi jäisi päivittäinen eri laitteiden sen päiväisten käyttötuntien lyöminen koneelle. Ohjelma taas lisäisi käyttötunnit edelleen kaikkien laitteen huoltokohteiden käyttötunneiksi.
Seurannan helpottamiseksi (koska kohteita siis saattaa olla kymmeniä - ~toista sataa) olisi tarkoitus luoda jonkinlainen kalenteri, jossa kohteet olisi esitetty "jäljellä olevien käyttötuntien mukaan". Eli periaatteessa ainoa matemaattinen funktio mitä koko ohjelma käyttää on :
(edellisen huollon kok.käyttötunnit+huoltoväli)-viimeksi lyödyt käyttötunnit = jäljellä olevat tunnit.

Bad sourcelle, juup! Käyttiksen suunnitteluun sain vapaat kädet ja olen haastatellut tuttuja konemestareita tässä pitkin syksyä ja talvea. Se löytyy kyllä paperilta kaikessa komeudessaan (tällä hetkellä vissiin v.1.13 :) ).

Luultavasti joku aikoo kuitenkin kysyä, niin Kyllä!,vastaavia kaupallisia ohjelmia on olemassa. Mutta ne ovat tyypillisesti melko raskaita, ja TODELLA kalliita. Eivätkä sovellu vanhempiin aluksiin. Tämä ohjelma tulisi käyttöön lähinnä vanhemmissa aluksissa sekä hinaajissa.

Mutta kiitos kiinnostuksesta jos jaksoit lukea näin pitkälle! :)

BadSource [22.02.2006 07:40:39]

#

Ohjelmasi tulee ennemminkin olla mukautettava kuin yleispätevä. =) Yleispätevä ohjelma toimisi samanlaisena kaikkialla, mutta mukautettu muokataan kohteeseensa sopivaksi. Haastetta kerrakseen...

Metabolix [22.02.2006 16:26:51]

#

Vaikuttaa siltä, että tuo olisi periaatteessa toteutukseltaan suhteellisen helppo, kunhan tietäisi ja ymmärtäisi, mitä pitää tehdä, eli jos olisi nuo paperille tehdyt suunnitelmat edessä ja joku kertomassa, miten ohjelmaa käytettäisiin.

Mutta. BadSource jo selittikin aika kattavasti. Eli paperille ensin suunnitelma siitä, mitä tietoja tallennetaan. Sitten vaikkapa ohjelman kohta kerrallaan suunnitelma, mitä haetaan tietokannasta, mitä tehdään ja mitä tallennetaan. Itse ohjelmointivaiheessa kannattaa edetä jokseenkin järjestelmällisesti ohjelman osa kerrallaan. Jokainen vaihe on hyvä tehdä mahdollisimman valmiiksi ennen seuraavaan siirtymistä, jottei vahingossa jää aukkoja. Hyvä koodin kommentointi ja paperille tehty lista valmiista ja puuttuvista asioista ovat mainioita työkaluja.

BadSource [22.02.2006 17:01:42]

#

erepmat kirjoitti:

...simppeli koneistojen huollon kalenteri, joka rakennetaan aluksen koneikon mukaiseksi ALUKSEN OMAN koneporukan toimesta...

Lainaamani kohta ampuu valmista kantaa jalkaan. Enemmin ohjelman käynnistyksessä tarkistetaan löytyykö kantaa. Kannan puuttuessa siirrytään Setupiin, jossa valitaa halutut palikat (huollettavat koneen osat), joiden pohjalta kanta, taulut ja taulun sarakkeet luodaan. Kun kannan rakenne on yksinkertainen, on kyselyiden laatiminen ja tulosten esittäminen automaagisesti "helppoa". VB-Helperin Database-sivuilta löytyy enemmänkin asiasta.


Sivun alkuun

Vastaus

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

Tietoa sivustosta