Isearve: Difference between revisions
(43 intermediate revisions by one other user not shown) | |||
Line 3: | Line 3: | ||
* Priit Tiganik | * Priit Tiganik | ||
* Siim Kallari | * Siim Kallari | ||
Projekti TFS: [https://isearve.visualstudio.com/IseArve https://isearve.visualstudio.com/IseArve] | |||
'''Analüüs''' 2016-10-15 | |||
[https://wiki.itcollege.ee/index.php/Isearve_analyys https://wiki.itcollege.ee/index.php/Isearve_analyys] | |||
'''Meie kirjutatud retsensioon''' | |||
[https://wiki.itcollege.ee/index.php/Talk:Ajamasin https://wiki.itcollege.ee/index.php/Talk:Ajamasin] | |||
'''Väga asjalik retsensioon meie analüüsile''' | |||
[https://wiki.itcollege.ee/index.php/Talk:Isearve https://wiki.itcollege.ee/index.php/Talk:Isearve] | |||
'''Meie kirjutatud lõpptoote retsensioon''' | |||
https://wiki.itcollege.ee/index.php/Talk:Elekter#Retsensioon_meeskonna_Elekter_l.C3.B5pptootele | |||
Projekti Prototüüp: [https://drive.google.com/open?id=0B6C5fjWH2LC1OEQxQVdpYUlBUkU https://drive.google.com/open?id=0B6C5fjWH2LC1OEQxQVdpYUlBUkU] | |||
'''Lõpptoode''' | |||
[https://drive.google.com/open?id=0B6C5fjWH2LC1d3Ztc3hlWFN1cEE https://drive.google.com/open?id=0B6C5fjWH2LC1d3Ztc3hlWFN1cEE] | |||
== Lõpptoote kasutusjuhend == | |||
* Programmi esmakordsel käivitamisel on kasutajal mõistlik Main vaates ära täita enda andmete blokk: nimi, ettevõtte rekvisiidid, pangaarve. Peale andmete salvestamist on need programmis alati olemas ning pele seda on võimalik hakata kasutama Isearve muud funktsionaalsus | |||
* Main vaates on kaks sakki: olemasolevate arvete ja partnerite vaatlemiseks. Programmi esmakordsel käivitamisel on need tühjad. Edasi saab liikuda kahel viisil, kas lisades arve või lisades partneri. | |||
* Kliki "lisa arve" ning täida avanevas aknas tühjad ja vajaminevad andmed ostja, arve ja müügi kohta. Uue müügrea lisamiseks vajuta "Lisa rida" | |||
* Kui arve on täidetud, on soovitatav see salvestada, vajuta "Salvesta". Arve lisamise aknas on veel kaks nuppu "Ekspordi PDFi" ning "Ekspordi XMLi". Nende abil on võimalik lahti olev arve salvestada kas PDF või XML formaati. Vaikimisi pakutakse salvestamise asukohaks kasutaja dokumente, kuid nii asukohta kui lõplikku faili nime saab kasutaja muuta. | |||
* Main vaate arvete sakis saab arveid selekteerida ja otse faili eksportida. Saab ka vajutada "Kopeeri", mis avab selekteeritud arve andmetega uue arve lisamise akna. Soovi korral saab selles teha kiireid muudatusi ning siis see täiesti uue arvena salvestada ja eksportida. | |||
* Main vaate partnerite sakis saab vaadelda salvestatud partnereid. Kui selles aknas selekteerida mingi partner ning vajutada "Lisa arve", avaneb uus arve lisamise aken, kus ostja väljad on eelnevalt selekteeritud partneri andmetega täidetud. Topeltklikk partneril avab partneri enda muutmise akna. | |||
== Idee == | == Idee == | ||
XML e-arvete ja PDF arvete koostamise programm väike-ettevõtetele ja MTÜdele. | XML e-arvete ja PDF arvete koostamise programm väike-ettevõtetele ja MTÜdele WPF tehnoloogial. Midagi sarnast nagu [http://www.arvetehas.ee/ http://www.arvetehas.ee/], kuid rakendus asub kasutaja arvutis. E-arvete kohta lisainfot [http://www.pangaliit.ee/et/arveldused/e-arve http://www.pangaliit.ee/et/arveldused/e-arve] | ||
Projekti TFS: https://isearve.visualstudio.com/IseArve | |||
== Rakenduse must-have sisu == | == Rakenduse must-have sisu == | ||
* Ülevaade eelmistest arvetest. | |||
Ülevaade eelmistest arvetest. | * Võib sisestada uue partneri. | ||
Võib sisestada uue partneri. | * Alustab uue arve loomist nullist või võtab aluseks mõne eelmise arve. | ||
Alustab uue arve loomist nullist või võtab aluseks mõne eelmise arve | * Salvestab andmebaasi uue arve. | ||
Salvestab uue arve | * Genereerib valitud arvest PDFi või e-arve XMLi. | ||
* Ülevaade eelmistest arvetest koos filtritega: partner, kuupäevad jne. | |||
* Arvete tasumise ülevaade: saab käsitsi märkida tasutuks | |||
== Nice-to-have lisad == | == Nice-to-have lisad == | ||
Kui ühes ettevõttes on palju erinevaid arvete loojaid, siis võimalik eksportida ja importida arvete templiite: ettevõtte rekvisiidid, kujundus. | * Kui ühes ettevõttes on palju erinevaid arvete loojaid, siis võimalik eksportida ja importida arvete templiite: ettevõtte rekvisiidid, kujundus. | ||
Võimalik importida ja eksportida partnerite nimekiri. | * Võimalik importida ja eksportida partnerite nimekiri. | ||
Arve saadetakse otse kliendile, kui vastav linnuke on valitud. | * Arve saadetakse e-mailiga otse kliendile, kui vastav linnuke on valitud. | ||
== Workload == | == Workload == | ||
=== 26.01.2017 === | |||
Viimased parandused ja väikesed täiendused said Priidu poolt tehtud. Pöidlad pihus | |||
=== 22.01.2017 === | |||
Priit parandas koodi peale prototüübi tagasisidet: keel sai veidi ühtlasemaks ning vormilt ei loeta andmeid enam indeksite alusel vaid bindingut kasutades. Sai implementeeritud üks lihtne logimine tegevustele, mis salvestavad, kas siis DBsse või faili. | |||
=== 20.01.2017 === | |||
Priit täiendas XML ja PDF genereerimist sellega, et kasutaja saab ise sobiva kausta ja failinime valida | |||
=== 18.01.2017 === | |||
Siim parandas hulga bugisid ning täiendas funktsionaalsust sellega, et nüüd saab partnerite aknast partnerit valides ja seejärel "Lisa arve" nuppu vajutades sellele partnerile arve lisada | |||
=== 17.01.2017 === | |||
Töönädala öötöö. Priit kulutas tunde, et mõista, kuidas Bindingu ja INotifyPropertyChanged abil saaks arve peal olevaid müügiridade summasid arvutada. Lõpuks läks summade arvutamine müügirea objekti setterisse ning sinnasamasse sai lisatud ka arvutuse aluseks olevate atribuutide muudatuste jälgijad. Lisaks prindib XML nüüd reaalseid arveid välja, enne oli tegu näidis-andmetega. | |||
Siim tegeles ühe vastiku bugiga, kus arve kuupäev andmebaasi ei jõudnud. Lisaks töötab kasutaja salvestamine. Nüüd saab arvet ka kopeerida ning PDFi genereerida otse Main ehk arvete ülevaate vaatest. Siim lisas ka palju andmete sisestuse kontrolle ning parandas väiksemaid ja suuremaid muid bugisid. | |||
=== 16.01.2017 === | |||
Kuni viimase nädalavahetseni enne projekti esitamist tegelesime veel teiste ainete kodutöödega ning ootasime prototüübile tagasisidet. Kui viimast saabunud ei olnud, asusime kiiresti tööle. Nädalavahetusel 14.-15. jaanuar saime Siimuga kokku ning kirjutasime-kirjutasime. Selgus, et oleks võinud ikkagi esialgset skoopi väiksemana ette kujutada. Sellegipoolest midagi sai sellest ka tehtud. | |||
Priit tegeles peamiselt XMLi ja PDFi välja trükkimisega. Kuna mõlema loomine käib erinevaid võtteid kasutades ja on andmetihedad, siis võttis andmete mappimine üpris kaua aega. XMLi serialiseerimise puhul oli lisaks tarvis luua ka eraldi klasside puu, mis vastaks e-arve XML-i struktuurile. | |||
Siim tegeles prototüübist välja jäänud andmete kirjutamise ja lugemisega vormilt. Selgus, et ListView puhul pole vaikimisi ette nähtud võimalust selle elemente TextBox-i laadselt muuta. Meil asus aga arve müügi rida ListViews ning seetõttu oli vaja leida meile kohandatud lahendus. Siim sai sellega loomulikult hakkama. Siim arendas veel arve müügiridade lugemise Invoice aknas, arvete kuvamise ja kasutaja lisamise MainWindowisse. | |||
Aeg-ajalt põrkasime arenduse käigus kokku ka analüüsi ja prototüüpimise käigus sisse jäetud põhimõtteliste vigadega. Küll oli mõni DB andmetüüp vale, küll ei olnud osa funktsionaalsust korralikult enda jaoks lahti seletanud või läbi mõelnud. Kõikide nende väikeste vigade lahendamine võttis oma aja. | |||
=== 18.12.2016 === | |||
Esitasime prototüübi. | |||
Prototüübis on loodud meie töö kohta esitatud retsensiooni põhjal täiendatud andmebaas koos Domainiga, olemas on peamised vaated ning lihtsamad neist ka töötavad. Viimase all peame silmas seda, et aken "Lisa partner" salvestab uue partneri andmebaasi ning Main windowis sakis Partnerid ka enam-vähem kuvatakse salvestatud partnereid. | |||
Projekti koodis on prototüübi hetkel palju lõpuni kirjutamata või isegi üleliigseid funktsioone-kommentaare, kuid meie arvates võiks klasside arv ja sisu olla pea-aegu lõplik: vaja ainult funktsionaalsust juurde kirjutada. Üks erand on see, et BO-d tõmbame veel sedavõrd kokku, et ilmselt jääb neid alles kolm: CompanyBO meie arve partneri tarvis, InvoiceBO kõigele sellele, mida ühe arve pealt leida võib, ning lõpuks UserBO, et kätte saada arve peale mineva programmi kasutaja rekvisiidid. | |||
=== 13.11.2016 === | |||
Retsenseerisime Ajamasinat, loomulikult jäi see töö praktiliselt viimasele minutile... Lugesime ka enda retsensiooni ning saime palju uusi häid mõtteid, mida analüüsi ja projekti raames paremaks teha ning millele peaks tähelepanu pöörama. See on kindlasti abiks projekti edukale valmimisele. | |||
=== 03.11.2016 === | |||
Priit täiendas analüüsi andmebaasi osaga | |||
=== 15.10.2016 === | |||
Koosolek vaadete teemal. Käisime läbi Priidu ja Siimu ideed, kuidas kodutöö view peaks koos esialgse funktsionaalsusega välja nägema. Joonistasime pilte ja jõudsime visioonis kokkuleppele. Siim tegi esimese Main View vormi ning Priit pani arutelu analüüsina kirja. | |||
=== 8.10.2016 === | |||
Mõtleme juba analüüsi peale, leht [[Isearve_analyys]] | |||
=== 8.10.2016 === | === 8.10.2016 === |
Latest revision as of 20:33, 1 February 2017
Meeskond ja rollid
- Priit Tiganik
- Siim Kallari
Projekti TFS: https://isearve.visualstudio.com/IseArve
Analüüs 2016-10-15 https://wiki.itcollege.ee/index.php/Isearve_analyys
Meie kirjutatud retsensioon https://wiki.itcollege.ee/index.php/Talk:Ajamasin
Väga asjalik retsensioon meie analüüsile https://wiki.itcollege.ee/index.php/Talk:Isearve
Meie kirjutatud lõpptoote retsensioon https://wiki.itcollege.ee/index.php/Talk:Elekter#Retsensioon_meeskonna_Elekter_l.C3.B5pptootele
Projekti Prototüüp: https://drive.google.com/open?id=0B6C5fjWH2LC1OEQxQVdpYUlBUkU
Lõpptoode
https://drive.google.com/open?id=0B6C5fjWH2LC1d3Ztc3hlWFN1cEE
Lõpptoote kasutusjuhend
- Programmi esmakordsel käivitamisel on kasutajal mõistlik Main vaates ära täita enda andmete blokk: nimi, ettevõtte rekvisiidid, pangaarve. Peale andmete salvestamist on need programmis alati olemas ning pele seda on võimalik hakata kasutama Isearve muud funktsionaalsus
- Main vaates on kaks sakki: olemasolevate arvete ja partnerite vaatlemiseks. Programmi esmakordsel käivitamisel on need tühjad. Edasi saab liikuda kahel viisil, kas lisades arve või lisades partneri.
- Kliki "lisa arve" ning täida avanevas aknas tühjad ja vajaminevad andmed ostja, arve ja müügi kohta. Uue müügrea lisamiseks vajuta "Lisa rida"
- Kui arve on täidetud, on soovitatav see salvestada, vajuta "Salvesta". Arve lisamise aknas on veel kaks nuppu "Ekspordi PDFi" ning "Ekspordi XMLi". Nende abil on võimalik lahti olev arve salvestada kas PDF või XML formaati. Vaikimisi pakutakse salvestamise asukohaks kasutaja dokumente, kuid nii asukohta kui lõplikku faili nime saab kasutaja muuta.
- Main vaate arvete sakis saab arveid selekteerida ja otse faili eksportida. Saab ka vajutada "Kopeeri", mis avab selekteeritud arve andmetega uue arve lisamise akna. Soovi korral saab selles teha kiireid muudatusi ning siis see täiesti uue arvena salvestada ja eksportida.
- Main vaate partnerite sakis saab vaadelda salvestatud partnereid. Kui selles aknas selekteerida mingi partner ning vajutada "Lisa arve", avaneb uus arve lisamise aken, kus ostja väljad on eelnevalt selekteeritud partneri andmetega täidetud. Topeltklikk partneril avab partneri enda muutmise akna.
Idee
XML e-arvete ja PDF arvete koostamise programm väike-ettevõtetele ja MTÜdele WPF tehnoloogial. Midagi sarnast nagu http://www.arvetehas.ee/, kuid rakendus asub kasutaja arvutis. E-arvete kohta lisainfot http://www.pangaliit.ee/et/arveldused/e-arve
Projekti TFS: https://isearve.visualstudio.com/IseArve
Rakenduse must-have sisu
- Ülevaade eelmistest arvetest.
- Võib sisestada uue partneri.
- Alustab uue arve loomist nullist või võtab aluseks mõne eelmise arve.
- Salvestab andmebaasi uue arve.
- Genereerib valitud arvest PDFi või e-arve XMLi.
- Ülevaade eelmistest arvetest koos filtritega: partner, kuupäevad jne.
- Arvete tasumise ülevaade: saab käsitsi märkida tasutuks
Nice-to-have lisad
- Kui ühes ettevõttes on palju erinevaid arvete loojaid, siis võimalik eksportida ja importida arvete templiite: ettevõtte rekvisiidid, kujundus.
- Võimalik importida ja eksportida partnerite nimekiri.
- Arve saadetakse e-mailiga otse kliendile, kui vastav linnuke on valitud.
Workload
26.01.2017
Viimased parandused ja väikesed täiendused said Priidu poolt tehtud. Pöidlad pihus
22.01.2017
Priit parandas koodi peale prototüübi tagasisidet: keel sai veidi ühtlasemaks ning vormilt ei loeta andmeid enam indeksite alusel vaid bindingut kasutades. Sai implementeeritud üks lihtne logimine tegevustele, mis salvestavad, kas siis DBsse või faili.
20.01.2017
Priit täiendas XML ja PDF genereerimist sellega, et kasutaja saab ise sobiva kausta ja failinime valida
18.01.2017
Siim parandas hulga bugisid ning täiendas funktsionaalsust sellega, et nüüd saab partnerite aknast partnerit valides ja seejärel "Lisa arve" nuppu vajutades sellele partnerile arve lisada
17.01.2017
Töönädala öötöö. Priit kulutas tunde, et mõista, kuidas Bindingu ja INotifyPropertyChanged abil saaks arve peal olevaid müügiridade summasid arvutada. Lõpuks läks summade arvutamine müügirea objekti setterisse ning sinnasamasse sai lisatud ka arvutuse aluseks olevate atribuutide muudatuste jälgijad. Lisaks prindib XML nüüd reaalseid arveid välja, enne oli tegu näidis-andmetega. Siim tegeles ühe vastiku bugiga, kus arve kuupäev andmebaasi ei jõudnud. Lisaks töötab kasutaja salvestamine. Nüüd saab arvet ka kopeerida ning PDFi genereerida otse Main ehk arvete ülevaate vaatest. Siim lisas ka palju andmete sisestuse kontrolle ning parandas väiksemaid ja suuremaid muid bugisid.
16.01.2017
Kuni viimase nädalavahetseni enne projekti esitamist tegelesime veel teiste ainete kodutöödega ning ootasime prototüübile tagasisidet. Kui viimast saabunud ei olnud, asusime kiiresti tööle. Nädalavahetusel 14.-15. jaanuar saime Siimuga kokku ning kirjutasime-kirjutasime. Selgus, et oleks võinud ikkagi esialgset skoopi väiksemana ette kujutada. Sellegipoolest midagi sai sellest ka tehtud.
Priit tegeles peamiselt XMLi ja PDFi välja trükkimisega. Kuna mõlema loomine käib erinevaid võtteid kasutades ja on andmetihedad, siis võttis andmete mappimine üpris kaua aega. XMLi serialiseerimise puhul oli lisaks tarvis luua ka eraldi klasside puu, mis vastaks e-arve XML-i struktuurile.
Siim tegeles prototüübist välja jäänud andmete kirjutamise ja lugemisega vormilt. Selgus, et ListView puhul pole vaikimisi ette nähtud võimalust selle elemente TextBox-i laadselt muuta. Meil asus aga arve müügi rida ListViews ning seetõttu oli vaja leida meile kohandatud lahendus. Siim sai sellega loomulikult hakkama. Siim arendas veel arve müügiridade lugemise Invoice aknas, arvete kuvamise ja kasutaja lisamise MainWindowisse.
Aeg-ajalt põrkasime arenduse käigus kokku ka analüüsi ja prototüüpimise käigus sisse jäetud põhimõtteliste vigadega. Küll oli mõni DB andmetüüp vale, küll ei olnud osa funktsionaalsust korralikult enda jaoks lahti seletanud või läbi mõelnud. Kõikide nende väikeste vigade lahendamine võttis oma aja.
18.12.2016
Esitasime prototüübi. Prototüübis on loodud meie töö kohta esitatud retsensiooni põhjal täiendatud andmebaas koos Domainiga, olemas on peamised vaated ning lihtsamad neist ka töötavad. Viimase all peame silmas seda, et aken "Lisa partner" salvestab uue partneri andmebaasi ning Main windowis sakis Partnerid ka enam-vähem kuvatakse salvestatud partnereid. Projekti koodis on prototüübi hetkel palju lõpuni kirjutamata või isegi üleliigseid funktsioone-kommentaare, kuid meie arvates võiks klasside arv ja sisu olla pea-aegu lõplik: vaja ainult funktsionaalsust juurde kirjutada. Üks erand on see, et BO-d tõmbame veel sedavõrd kokku, et ilmselt jääb neid alles kolm: CompanyBO meie arve partneri tarvis, InvoiceBO kõigele sellele, mida ühe arve pealt leida võib, ning lõpuks UserBO, et kätte saada arve peale mineva programmi kasutaja rekvisiidid.
13.11.2016
Retsenseerisime Ajamasinat, loomulikult jäi see töö praktiliselt viimasele minutile... Lugesime ka enda retsensiooni ning saime palju uusi häid mõtteid, mida analüüsi ja projekti raames paremaks teha ning millele peaks tähelepanu pöörama. See on kindlasti abiks projekti edukale valmimisele.
03.11.2016
Priit täiendas analüüsi andmebaasi osaga
15.10.2016
Koosolek vaadete teemal. Käisime läbi Priidu ja Siimu ideed, kuidas kodutöö view peaks koos esialgse funktsionaalsusega välja nägema. Joonistasime pilte ja jõudsime visioonis kokkuleppele. Siim tegi esimese Main View vormi ning Priit pani arutelu analüüsina kirja.
8.10.2016
Mõtleme juba analüüsi peale, leht Isearve_analyys
8.10.2016
Wiki, projekti idee, visioon rakendusest ja sisust
5.10.2016
Meeskonna loomine, Siim andis hea mõtte kodutöö sisuks