# data[].attributes.body
Description

This is small commentary. Everyone can write comment without login. When user write comment, then must fill in name and comment. Each comment is written to the database. In addition, the datetime and IP-address (user) of the database are written. Default 15 comments are displayed per page. Every comment show name, comment and datetime. New comments are top of page. When user (default administrator) login can edit and delete comments. Comments are usually not modified by the administrator, but we make an exception here. If the comment is changed, it is somehow visible.

If the administrator has been idle for 15 minutes, he or she will be automatically logged out or link clicked.

What must be?

1. Bootstrap default CSS. You don't have to make your own styles if everything works.

2. Nice URL (Clean URL). https://en.wikipedia.org/wiki/Clean_URL

3. Site use PHP session.

4. Default user (administrator) account:

1. Username: test@test.ee

2. Password: Pa$$word1

5. If necessary, use https://fontawesome.com/ It adds a bit of looks.

6. Bootstrap pagination https://getbootstrap.com/docs/4.1/components/pagination/Also, think of the hundreds of pages. So how do you fix it?

7. The administrator can set how many posts are displayed on the page? Possible quantities are 15, 50, 100, 500 post per page. Use session!

# data[].attributes.body
This was simple way. Lets change.
Table temperatuur2 (temperature2) holds four sensor data (inside "TOAS" (east and west) and outside "ÕUES" (east and west)). East side data collected last two years. West side data collected four years. What change?
Example: I choose date 01.09 (1. september) outside (ÕUES) and west side (Läänepoolne külg), then show all this date west side and outside data in diagram. In this case must be 4 line total. One line is one year. See zip example in this post.

The same thing in table niiskus (humidity). This hold two sensor data (temperature and humidity). Two diagram (temperature and humidity). Show all years in this diagram. When date choosed.

ZIP FILE UPDATED 16.10.2019

1. If diagram show 2 line then Legend must show 2 line - not four.

2. Why humidity don't show 05-29 (29 May) data? East side!

3. Every diagram show Label in diagram (Example 2019-01-01 12:12:12 and another line 2018: 38.8). First line in bold full date remove, time keep. Second line year and measured data is correct.

4. 17.10.2019 - Check webpage is this correct. Remove all Error and Warning. You can use this url

5. 17.10.2019 - Try do remove errors accessibility in here.

6. Something wrong but i don't understand what :D

# data[].attributes.headline
09.10.2019 Java program with database connection over local network

# data[].attributes.subject
09.10.2019 Java program with database connection over local network

# data[].attributes.body
Program read data over LAN database. The programs show diagrams (example Google Charts if possible). The program also has a calendar to select the day you want to see information. You can use this for calendar. For website calendar
Database three tables with real data can download from here. This is the data for some thermometers (6 piece) over a period of two to four years.
Tõnis is missing and i can't give you database login data (username and password). But you can install XAMPP if not in PC and use this today.

Table temperatuur2 (temperature2). There is 4 sensor data. Two outside (west side + east side) and two inside (west side + east side). Measure every 5 minute
kuupaev = date with time
celsius = (temperature in Celsius)
tekst (text) If YES this mean temperature is correct BUT not all time. More than 50 celsius is wrong!
asukoht (location) = ÕUES (outside) TOAS (inside)
window = west side, east side

Table niiskus (humidity). There is 2 sensors data. One west side and second east side. Both measure two things.temperature and humidity. Measure every 5 minute
kuupaev (date)
celsius (temperature in Celsius)
niiskus (humidity in %)
window (this is location west side or east side)

Table cpu_temperatuur (cpu temperature). This is Raspberry PI CPU temperature. Field window not needed. Measure every 1 minute.
kuupaev (date)
celsius (temperature in Celsius)

# data[].attributes.body
1. Isosceles triangle label "Kõrgus A" => "Kõrgus A suhtes" (can't change in estonian.csv)
2. Isosceles triangle label "Kõrgus B" => "Kõrgus B suhtes" (can't change in estonian.csv)
3. Isosceles triangle label "Kõrgus C" => "Kõrgus C suhtes" (can't change in estonian.csv)
4. Running app I see error or text in console if i change language:
geometry.service.LanguageImportService.getLanguageImport()
lang\deutsch.csv
lang\english.csv
lang\estonian.csv
Don't show here any info. For testing purpose yes but later no.
5. When read lang folder check language files. If correct add into ComboBox.
6. In the real world, can any dimension of a geometric shape be negative?
Example: radius -5 or Side A -5.54? No. Therefore all input must be bigger than 0.
7. Isosceles Triangle Altitude of A an altitude of B is shifts.
Use https://www.calculatorsoup.com/calculators/geometry-plane/triangles-isosceles.php and test.
8. Class files must be documented.
9. NEW: If the user makes an incorrect entry, the info window will now open. Do not show this window, but make wrong input field background red. When user change this field (click inside field), then background go normal.

BUG
First time run app then language file wrong. When change language then ok. java.io.FileNotFoundException: lang\estonian_updated.lng (The system cannot find the file specified)

# data[].attributes.attachment_link.title
Multi-language application of geometric shapes

# data[].attributes.body
1. Open URL https://epl.delfi.ee/lp/estonia-laevaohvrite-taielik-nimekiri?id=87565743
2. Write program in Java or Python where all names with birth year and nationality line by line in CSV file.

# data[].attributes.attachment_link.readable_text
/* Loe failist */
/* Read from file*/
public static void ReadFromFile() throws FileNotFoundException, IOException {
	try(BufferedReader br = new BufferedReader(new FileReader("FILENAME.EXT"))) {
		for(String line; (line = br.readLine()) != null; ) {
			// Tee reaga midagi
			System.out.println(line);
		} 
	}
}

/* Kirjuta faili */
/* Write to file*/
public static void WriteToFile(String FullLine) throws IOException {    
	try (BufferedWriter bf = new BufferedWriter(new FileWriter("FILENAME.EXT", true))) {            
		bf.write(FullLine);
		bf.newLine();
	} catch(FileNotFoundException fnfe) {
		System.out.println("Faili ei leitud." + fnfe);
	}
}

/* Loe konsoolilt */
/* Read from console */
public static int ReadFromConsole() throws IOException {
	BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
	System.out.print("Sisesta: 1 (Kivi), 2 (Paber), 3 (Käärid) või 5 (Lõpeta mäng): ");
	try {
		int i = Integer.parseInt(br.readLine());		
		return i;
	} catch (NumberFormatException nfs) {
		return 100;
	}        
}

/* Juhuslik number ette antud vahemikus. Nr. k.a. */
/* http://stackoverflow.com/questions/363681/generating-random-integers-in-a-specific-range */
public static int randInt(int min, int max) {
	// Usually this can be a field rather than a method variable
	Random rand = new Random();
	// nextInt is normally exclusive of the top value,
	// so add 1 to make it inclusive
	int randomNum = rand.nextInt((max - min) + 1) + min;
	return randomNum;
}

/* http://stackoverflow.com/questions/27531759/generating-decimal-random-numbers-in-java-in-a-specific-range */
/* places on 10, 100, 1000 ehk koma kohtade arv 0.1, 0.01, 0.001 */
public static double randDouble(double min, double max, double places) {
	// Usually this can be a field rather than a method variable
	Random rand = new Random();
	// nextInt is normally exclusive of the top value,
	// so add 1 to make it inclusive
	return (rand.nextInt((int)((max-min)*places+1))+min*places) / places;        
}


# data[].attributes.headline
20. ja 21. veebruar 2019 vaja valmis teha!

# data[].attributes.subject
20. ja 21. veebruar 2019 vaja valmis teha!

# data[].attributes.body
Nendel kahel päeval peate saama valmis järgmised asja:

1. Disain Kategooriad s.h. lisamine, muutmine ja kustutamine

1. Koos funktsionaalsusega

2. Disain Tšeki (Kulutšeki lisamine)

1. See sisaldab ka andmebaasi tabeli või tabelite tegemist.

2. Koos funktsionaalsusega

Ehk, kui järgmine kord kohtume, siis võtan lehe ette ja tahan reaalselt näha et kõigil on sinna maani jõutud. Ei mingeid vabandusi!

# data[].attributes.body
Veebileht kus saab arvutada erinevaid geomeetriliste kujundite andmeid. Ilma sisse logimata saab arvutada Ringi ja Ristkülikut. Kõik muud variandid on (Projekt Geomeetria Python) juba tehtud projektis kirjas.

Kõik info mida saab arvutada ja tulevad tulemused, tuleb logida andmebaasi. Kui kasutaja on sisse loginud, siis enda arvutus tulemusi on võimalik sirvida. Administraator saab vaadata kõikide kasutajate arvutusi ning lisaks ka kustutada.

# data[].attributes.body
Sisaldab kaks tabelit.

# data[].attributes.body
Ekraanile ilmub keegi Simpsoni tegelastest (Cartoon/Multifilm) kellele tuleb hiirega klikkida. See kaob ära ja kusagil mujal tuleb teine Simpsoni tegelane. Kogu asi peaks olema mingi ajalise viivitusega. Mäng võiks toimida sõltumata akna suurusest. Võib lugeda ka punkte vastavalt sellele keda hiirega klikiti.
(Arutelu tulemused)

# data[].attributes.body
http://zetcode.com/tutorials/javagamestutorial/

# data[].attributes.body
Üks huvitav mäng koos selgitusete ja videotega
http://www.edu4java.com/en/game/game1.html Tehke see
endal valmis. Lugege ja vajadusel ka vaadake videoid.
Lisad:

1. Paiguta aken keset ekraani

2. Ekraani suurust ei saa muuta!

3. Kommenteeri kood

4. Edetabel TOP 10 parimat. Nimi, skoor ja hetke aeg. Alles jääb see kes esimesena sai skoori, kui on sama tulemus.

5. Kui nime ei sisestata, siis kirjutab nimeks NIMETA

6. Ekraanil näidatakse 10 märki nimest, kuid edetabeli failis on täis pikk nimi

# data[].attributes.headline
22.11.2018 Grupitöö ülesanne koos algmaterjaliga

# data[].attributes.subject
22.11.2018 Grupitöö ülesanne koos algmaterjaliga

# data[].attributes.body
Kogu algmaterjal ja esmane juhend asub siin.

Täiendused täpsustused
Uus klass Silinder
Vahemik 1 - 1000 esimene number võib olla ka 0.0001
Võrdharne kolmnurk, ristkülik, risttahukas, kontroll et poleks midagi muud. Vea korral ei arvuta.
Komakohtade arv on kasutaja valitav vahemikus 2 - 6 kaasa arvatud

Mis ja kuidas tuleb konsooli ja mis tuleb logifaili?
Konsooli tulemus:
Ruut;a=7.0;d=9.899494936611665;P=28.0;S=49.0
Kuup;a=7.0;S=294.0;V=343.0
Risttahukas;a=7.0;b=5.0;c=6.0;V=210.0;d=10.488088481701515;S=214.0
Silinder;r=7.0;h=5.0;V=769.6902001294993;Sk=219.9114857512855;Sp=153.93804002589985;St=527.7875658030853;d=14.0;U=43.982297150257104
Logifaili tulemus:
27.11.2018 12:53:39;Ruut;a=7.0;d=9.899494936611665;P=28.0;S=49.0
27.11.2018 12:53:42;Kuup;a=7.0;S=294.0;V=343.0
27.11.2018 12:53:47;Risttahukas;a=7.0;b=5.0;c=6.0;V=210.0;d=10.488088481701515;S=214.0
27.11.2018 12:53:50;Silinder;r=7.0;h=5.0;V=769.6902001294993;Sk=219.9114857512855;Sp=153.93804002589985;St=527.7875658030853;d=14.0;U=43.982297150257104

Mõned lühendid:
r - raadius
h - kõrgus
V - ruumala
Sk - külgpindala
Sp - põhjapindala
St - täispindala
d - diameeter
U - ümbermõõt (ümmargune)
P - ümbermõõt (kandiline)
S - pindala
a, b, c - küljed
p - ümbermõõt (pool)
m - moodustaja
ha, hb, hc  - kõrgus a, b ja c suhtes

# data[].attributes.attachment_link.readable_text
01. Kus on vastuste akna parem poolne serv? Objekt ei tohiks olla servani või üle selle. (Vasakpoolses osas (nupud ja labelid) on ilusti õhuvahe jäetud)
02. Kus on logiakna alumine serv? Objekt ei tohiks olla servani või üle selle. (Vasakpoolses osas (nupud ja labelid) on ilusti õhuvahe jäetud)
03. Logifaili struktuur pole õige!
04. Konsoolis olev struktuur pole õige!
05. Kui infoks on MessageBox, siis vastuste kasti ei peaks midagi tulema.
06. Kui on kasutatud MessageBoxi, siis tuleb seda lõpuni kasutada. vt ka eelmine rida
07. Koma kohtade näitamise jaoks oleks olnud inteligentne SpinBox
08. Vastused tekstikastis võiks olla ilusti joondatud.
09. Põhiaken peaks avanema ekraani keskel.
10. Pythonis on kombeks kirjutada võti=väärtus mitte võti = väärtus. Kõikjal tuleb üte moodi teha mitte kord nii ja kord naa!
11. Logifaili nimi tuleks defineerida peale importe enne funktsioone
12. Kõik funktsioonid peaks olema defineeritud enne rida window = Tk()
13. ComboBoxist väärtuse võtmine (tekst) ja selle kontrollimine on ohtlik tegevus. Kindlam ja ohutum on kasutada järjekoranumbrit
14. Vastuste aken ja Konsooli aknal disabled ja normal kasutamine on mõttetu.
15. Funktsioon calculate() on kole pikk ja lohisev. See võinuks olla ilusam. (Ei pea muutma) 
16. Mida kujutab fail test.py projekti classes kaustas?
17. Mida kujutab fail Testimine projekti juurkaustas?
18. Mida kujutab fail New_Text_Document.txt projekti juurkasutas?
19. Miks geomeetriliste kujundite import ei kirjutatud nii, et oleks koodis lühem kirjutada?

# data[].attributes.headline
07.11.2018 Graafiline CSV faili generaator (Hindeline)

# data[].attributes.subject
07.11.2018 Graafiline CSV faili generaator (Hindeline)

# data[].attributes.body
Juhend

1. Visuaalselt peab välja paistama nii nagu pildil näha

2. Akna suurus on 870x270 ja väiksemaks akent teha ei saa

3. Aken käivitub ekraani keskel

4. Kõik tekst mis on näha on Verdana suurusega 10 v.a. logi aken. Seal on Courier 10

5. Entry väljad (ridade-, veergude arv, iga mitmes ja failinimi) peab töötama Enter klahv, mis kontrollib sisestust. Kui on ok, siis jääb nagu on. Kui on vigane, siis asendab vaikimisi väärtusega.

6. Märkide arv veerus saab olla vahemikus 2- 5 muid numbreid ei saa sinna tekkida ja kasutaja ei saa käsitsi seda muuta (ise midagi sinna kirjutada)

7. Iga tegevus mis vormil tehakse lisatakse logisse

8. Lühendid logis:

1. STA - Start

2. RET - Return. Vajutati Enter vormi väljal

3. MOU - Klikiti hiirega või kasutati noole klahvi ülesa alla Spinneril

4. SAV - Vajutati nuppu Salvesta logi

5. GEN - Vajutati nuppu Tee fail (Teine GEN peaks olema DON ehk DONE - Kui fail on valmis)

6. CLS - CLear Screen Vajutati nuppu Puhasta väljad

9. Progress bar toimib faili tegemisel.

10. Faili tegemise ajal ei tohi(ks) kasutajaliides hanguda

11. Kui kasutatakse vaikimisi väärtust, siis logi teatab ka Default ja vastav väärtus.

RASMUS JA RAINER

1. Teha graafiline liides Ringi ja Koonuse arvutamiseks.

2. Disain on enda valida, kuid tekst peab olema Verdana ja suurus 10

3. Ringil arvutada raadiuse baasil:

1. Diameeter

2. Ümbermõõt

3. Pindala

4. Koonusel arvutada põhja raadiuse ja koonuse kõrguse baasil:

1. Ruumala

2. Moodustaja ehk koonuse külje pikkus ehk hüpotenuus

3. Külgpindala

4. Põhjapindala

5. Täispindala

6. Põhja ümbermõõt

7. Põhja diameeter

5. Kõik algandmed ja arvutus tulemused tuleb kirjutada faili koos kirjutamise hetke kuupäeva ja kellaajaga.

# data[].attributes.body
Lugeda ja teha ning eksperimenteerida. https://likegeeks.com/python-gui-examples-tkinter-tutorial/
Uurida lisaks Layout + Frame asju eraldi. Ehk Labelid Comboboxid jm sellised asjad peaks olema Frame peal, sest sa vajad et Layout oleks selline nagu sul vaja mitte nii nagu Python sulle teeb :)
Üks ülesanne tuleb ühel hetkel teil teha graafiliseks. Milline? Seda veel ei tea :-)

# data[].attributes.body
Olles nüüd arusaanud, kuidas CSV failis veergude liitmine käib ja sõltumata veergude arvust, tuleb teil teha nüüd selline skript, mis genereeriks antud faili. Proovige koostada skript nii et oleks kasutusel ka funktsioone, et vajadusel saaks mingit osa hiljem ümber teha ning poleks vaja teha suuri ümbermuudatusi.
Kasutajalt tuleb küsida järgnevaid asju:

1. Mitu rida faili teha. Vaikimisi 5000 rida.

2. Mitu veergu teha faili. Vaikimisi 10 veergu.

3. Mitu märki on veerus. Lubatud vahemik on 2 - 5 k.a. Vaikimisi 3 märki

4. Iga mitmes veerg on number.  0 - eraldi numbri veergu pole. Muud postitiivsed arvud teeb vastava veeru ainult numbritest.

# data[].attributes.body
Kolm bigCSV faili.

# data[].attributes.body
Rasmus, Rainer, Tanar, Tristan - Ristkülik. Kui ristkülik korras, siis Kera.
Tõnis, Taavi, Kauri - Koonus ja Kera

Erilised :)

Ristküliku juhend:
1. Küsib kasutajalt kaks ristküliku külge.
2. Küljed peavad olema positiivsed arvud.
3. Töötama peavad nii täisarvud kui murdarvud.
4. Kui midagi on valesti, siis lõpetab programm töö andes adekvaatse veateate
5. Programm arvutab Diagonaal, Ümbermõõt, Pindala ja kui on ruut siis teatab.
6. Vastus näidatakse korrektse lausena.
7. Vastuseid ei ümardata
8. Info konsoolis eestikeelne, vajalikud muutujad inglise keelsed,
kommentaarid eestikeelsed
9. Kood peab olema Rasmusele ja Rainerile loetav ja arusaadav :)

Kera juhend
1. Küsib kasutajalt kera raadiuse.
2. Raadius peab olema positiivne arv.
3. Töötama peavad nii täisarvud kui murdarvud.
4. Kui midagi on valesti, siis lõpetab programm töö andes adekvaatse veateate
5. Programm arvutab kera Ümbermõõdu, Pindala, Ruumala ja Diameeter
6. Vastus näidatakse korrektse lausena.
7. Vastuseid ei ümardata
8. Info konsoolis eestikeelne, vajalikud muutujad inglise keelsed,
kommentaarid eestikeelsed
9. Kood peab olema Rasmusele ja Rainerile loetav ja arusaadav :)

Koonuse juhend:
1. Küsib kasutajalt koonuse põhja raadiuse ja koonuse kõrguse.
2. Raadius ja koonuse kõrgus peab olema positiivne arv.
3. Töötama peavad nii täisarvud kui murdarvud.
4. Kui midagi on valesti, siis lõpetab programm töö andes adekvaatse veateate
5. Programm arvutab koonuse ruumala, külg pindala, põhjapindala, täispindala,
koonuse moodustaja (hüpotenuus), põhja ümbermõõt
6. Vastus näidatakse korrektse lausena.
7. Vastuseid ei ümardata
8. Info konsoolis eestikeelne, vajalikud muutujad inglise keelsed,
kommentaarid eestikeelsed
9. Kood peab olema Rasmusele ja Rainerile loetav ja arusaadav :)

# data[].attributes.body
Programm Ring.
1. Küsib kasutajalt ringi raadiuse.
2. Raadius peab olema positiivne arv.
3. Töötama peavad nii täisarvud kui murdarvud.
4. Kui midagi on valesti, siis lõpetab programm töö andes adekvaatse veateate
5. Programm arvutab Diameetri, Ümbermõõdu ja Pindala
6. Vastus näidatakse korrektse lausena.
7. Vastuseid ei ümardata
8. Info konsoolis eestikeelne, vajalikud muutujad inglise keelsed,
kommentaarid eestikeelsed

TEST 1:
Kui ringi raadius on 3.0, siis
diameeter on: 6.0
ümbermõõt on: 18.84955592153876
pindala on: 28.274333882308138

TEST 2:
Kui ringi raadius on 7.23, siis
diameeter on: 14.46
ümbermõõt on: 45.42742977090841
pindala on: 164.22015862183392

# data[].attributes.body
Esmalt loe keskmise veeru esimest postitust (Koodi kirjutamisereeglid). Kui ülesanne valmis, saada see aadressile: livental@gmail.com

Selgitus

Kasutajal on üks CSV fail mis on seotud tema aktiivsusmonitoriga Xioami Mi Band 2. Tema soov oleks saada infot päevade kohta ja statistikat kuude kaupa. Kasutajaliides peab olema mugav lihtne ja loogiline. Kui näidatakse mingit statistilist infot peab olema näha ka algandmed mille põhjal on see tehtud. Võib olla ka mõni otsingu variant. Näiteks millal käididi rohkem kui 5000 sammu päevas või millal käidi alla 500 sammu. Valikud on teie teha. Seal võivad olla distantsi kohta kui ka kalorite kohta.

Kasutaja on tuvastanud faili struktuuri ja selle sisu. Info mis teda ei huvita, kuid näha peab olema on runDistance. lastSyncTime on UnixTimestamp mis sisaldab kuupäeva, kui ka kellaaega. See on aeg millal antud andmed viimati uuendati. Näidatud peaks olema nii originaal number kui ka inimlikul kujul number. Steps on sammude arv. Distance on käidud tee meetrites. Calories on kulutatud kalorid antud päeval. Date on aga kuupäev.

Kuupäevad võiks olla õiget pidi ja eesti vormingus (PP.KK.AAAA). Seda ka lastSyncTime puhul. Arvestama peab, et fail hakkab päevade kaupa kasvama. Üks rida päevas ja failinimi on alati sama.

Vajalik fail on siin.

# data[].attributes.body
Programmeerimise õppimine ja sellele eelnev pealkiri Vigadest - https://courses.cs.ut.ee/MTAT.03.100/2012_fall/uploads/opik/01_sissejuhatus.html#programmeerimise-oppimine
Algoritm ja plokkskeem kuni robotkilpkonnani - https://courses.cs.ut.ee/MTAT.03.100/2012_fall/uploads/opik/04_algoritmid.html
Tristan: https://likegeeks.com/python-gui-examples-tkinter-tutorial/
ÜLESANNE Rainer ja Rasmus - Plokkskeemi juures olev ringi pindala arvutamine kirjuta Javas (consol). Kui originaal on tehtud, siis täienda parandustega mis on 4. punktis öeldud. Et mis juhtub, kui kasutaja midagi ei sisesta või kui sisestab teksti. Sisendiks on täisarv!

# data[].attributes.body
1. Kood on inglise keelne

2. Koodis olevad kommentaarid võivad olla eesti keeles

3. JavaDoc on kas inglise- või eestikeelne, sõltub ülesandest

4. Muutujanimed on ennast selgitavad inglise keeles. Algavad väikse tähega

5. Meetodite/funktsioonide nimed on ennast selgitavad - inglise keeles. Algavad suure tähega

6. Kasutajaliides (Interface) on eestikeelne

# data[].attributes.headline
07.09.2018 Sünnipäeva ülesanne (Java GUI)

# data[].attributes.subject
07.09.2018 Sünnipäeva ülesanne (Java GUI)

# data[].attributes.body
Enne ahetamist ja ohetamist ning mõttetute küsimuste küsimist lugege allolev ülesanne mõttega läbi.

Sel korral tuleb midagi reaalset, et te saaksite reaalse kogemuse programmeerimises, kus kasutaja ei tea progemisest midagi, kuid tal on suhteliselt selge pilt mida ja kuidas ta asja soovib. Teie ülesandeks on see asi valmis saada. Valmis saada - ei tähenda, et peaasi kui töötab! Klient annab ka algandmed, kuid kuidas te neid kasutate või kuidas vormistate on teie enda otsustada. Projektijuhi vihje - Excelist otse on infot ikka väga ebamugav Javas lugega. Seega tehke endale vajalik(ud) CSV- või TXT failid.

Klient
Kahjuks tuli asi mulle ootamatult ja mul jäid kroonid teisendamata eurodeks. Seega on vaja kõik kroonid teisendada esmalt õige kursiga eurodeks. Kurss: 1 EUR = 15,6466 EEK. Excelis on seda suhteliselt lihtne teha. Kaks kohta peale koma on ka täiesti piisav täpsus.
Algandmete info võib muutuda. Siin mõeldakse, et retseptide nimed, kogused ja mõõtühikud võivad muutuda. Samas võib muutuda ka hinnakiri. Selleks tuleb valmis olla. Vaadates hetkel seal olevaid toiduainete koguseid, tunduvad läbi mitme konverteerimise vaja teha. See läheb siis natuke lihtsamaks. Aga seda alles ehk Faas 2 ajaks. Selleks on vaja teada, mis kujul ja kuidas peavad need olema vormindatud, ilma et progejad seda nüüd ise peaksid tegema.
Antud projekt koosneb erinevatest osadest, et vaadata kuidas asja saab lahendada ja näha kas asi ikka meeldib/sobib sellisel kujul. Järgneva faasi ei hakata enne tegema, kui olemasolevale on luba antud.

Faas 1 (orienteeruv ajakulu 6 - 12h)
Algandmed muudetud (Retseptid ja Hinnakiri 17.09.2018)

1. Esmalt peate muidugi hinnad õigeks saama ja algmaterjali endale (progejad) sobivale kujule.

2. Järgnevalt tuleb saada aknale valiku kast (nüüd ja edaspidi projektijuhi täpsustused aken - Form, valiku kast - ComboBox), kus on näha valitavad retseptid. Tehes sealt valiku saab näha retsepti koos sinna sisse kuuluva infoga. Näiteks valitakse Itaalia kook mille peale näidatakse mitmele isikule see retsept on mõeldud ning milliseid toiduaineid ja millises koguses neid sellele kogusele vajatakse

3. Kolmandaks on vaja saada valida numbriliselt ja/või juhuslikult külaliste arvu, mis on sõltumata valikust vahemikus 10 - 50 külalist.

Faas 2 (toimub täiendamine ja parandamine [orienteeruv ajakulu kuni 8h])

1. Nüüd on vaja hakata arvutama. Kui retsept on mõeldud x tk või portsu, siis on vaja arvutada, kui suur summa ja kogus mingit toiduainet on selle portsu jaoks vaja. S.h. iga toiduaine tuleb eraldi välja tuua.

2. Inimeste arv .....

3. ....

Originaal algandmete fail Väino Liimann.