Risttabel võimaldab luua andmekoosseise mitme tunnuse järgi. Risttabelit kasutatakse nt lähetuste puhul, kus tuleb kajastada erinevaid kululiike koos maksumustega. Risttabelis kasutatakse sageli ka arvutamisfunktsionaalsust, et lihtsustada andmesisestaja tööd.
{ "colNames":[ "Nr","Kuupäev","Selgitus" ], "colModel":[ {"name":"id","index":"id", "width":30, "sortable":false, "editable":false, "hidden":false}, {"name":"kuupaev","index":"name", "width":150, "sortable":false, "editable":true}, {"name":"selgitus","index":"selgitus", "width":100, "sortable":false, "editable":true} ], "caption": "Tööde teenuste eest maksmine" }
Lõpptulemus - risttabeli lisamisvorm
Väli on ettenähtud risttabeli loomiseks, selleks sisestage veergude, nende omaduste ja valemite definitsioonid;
Sellele väljale sisestatud definitsioonid annavad täiendava võimaluse eeltäita valitud tabeliread uue dokumendi lisamisel. Järgmises näites lisatakse risttabelisse vaikimisi üks rida, kus päevarahaks on 32.00 €
Näite 1 tabeli definitsioon:
{ "colNames":[ "Id","Päevade arv","Päevaraha","Summa" ], "colModel":[ {"name":"id","index":"id","width":150, "sortable":false, "editable":true, "hidden":true}, {"name":"paevad","index":"paevad", "width":175, "sortable":false, "editable":true}, {"name":"paevaraha","index":"paevaraha", "width":150, "sortable":false, "editable":true}, {"name":"summa","index":"summa", "width":150, "sortable":false, "editable":true} ], "formulas" : { "expr(paevad:1*paevaraha:1)" : "summa:1", "sum(summa:first..summa:last)" : "crstbl_setExpFieldValue(\"summa_kokku_b\",result);" }, "caption": null }
Näite 1 tabeli read:
[ {"paevaraha":"32.00 €"} ]
Tabeliread peavad teineteisest olema eraldatud komadega.
Näite 2 tabeli read
[ {"paevaraha":"32.00 €"}, {"paevaraha":"32.00 €"} ]
Tühja tabelirea tekitamiseks pane tühik jutumärkide vahele {„paevaraha“:„tühik“} NB! Ei toimi SOSEL väljatüübi puhul.
Näite 3 tabeli read
[ {"paevaraha":" "} ]
Tühja tabelirea tekitamiseks, kus tabel sisaldab SOSEL väljatüüpi, toimi järgnevalt:
Näite 4 tabeli read
[ {"__act":""} ]
Tabelirea kohustuslikuks seadistamiseks lisa parameeter „required“:true.
{"name":"currency","index":"currency", "width":75, "sortable":false, "editable":true, "formatter": "number", "formatoptions":{"decimalSeparator":",", "decimalPlaces": 2}},
{ "colNames":[ "Id","Kululiik","Kulude katmise allikas","Kulusumma" ], "colModel":[ {"name":"id","index":"id","width":150, "sortable":false, "editable":true, "hidden":true}, {"name":"kululiik","index":"kululiik", "width":175, "sortable":false, "editable":true, "classifier" : "Kululiik"}, {"name":"kulude_allikas","index":"kulude_allikas", "width":400, "sortable":false, "editable":true, "classifier" : "Kulude katmise allikas"}, {"name":"kulusumma","index":"kulusumma", "width":175, "sortable":false, "editable":true} ], "formulas" : { "sum(kulusumma:first..kulusumma:last)" : "crstbl_setExpFieldValue(\"summa_kokku\",result);" }, "caption": null }
Esmalt tuleb määrata veergude nimed (atribuut colNames). Alati peab olema esimeseks veeruks “Id” ja ülejäänud jutumärkides ja komaga eraldatud.
Veergude seadete (atribuudi colModel) määramisel on mitmeid võimalusi, nt veeru peitmine, mida tehakse reeglina Id veeru puhul; sidumine klassifikaatoriga (näites toodud teine veerg Kululiik veerus „name“.
name
– administraatori enda poolt tuletatud nimi (kohustuslik märkida) – ei tohi sisaldada täpitähti ja tühikuid;sortable
- sorteeritavus (valikud: true, false) „sortable“:trueeditable
- muudetavus (valikud: true, false);width
- välja laius;hidden
– peidetud (valikud: true, false);align
– joondus (võimalikud valikud: left, center, right);classifier
– klassifikaator (WD-s määratud klassifikaatori nimi);required
- Veeru täitmine on kohustuslik;formulas
- valemid;caption
- tabeli pealkiri.formatter
:number - kasutatakse numbrivormingut;formatoptions
: {„decimalSeparator“:„,“, „decimalPlaces“: 2} - kasutatakse kümnendkohtade eraldajat ning komakohtasid on kaks, kasutatakse koos formatter
:numbertranslate
(WD 5.2.0 - 13.10.2015) - risttabeli veergude tõlkimiseks, nt „translate“ : {„en“:„Currency“,„ru“:„Bалюта“}„display_sosel_id_in_template“:0
- trükimallis ei kuvata tüübi ID-d
Kuupäevavälja seadistamiseks tuleb laienduse nimetuses kasutada date.
Näide:
"name":"x_date","index":"x_date"
Ühe objekti valiku välja seadistamiseks tuleb lisada parameeter, kus 59277 viitab andmetüübi id-le.
"sosel" : 59277
Ühe väärtuse valiku välja seadistamiseks tuleb lisada parameeter, kus „Kululiik“ viitab klassifikaatori üksühele nimetusele.
"classifier" : "Kululiik"
Ühe kasutaja valiku välja seadistamiseks tuleb lisada parameeter:
"sosel" : 2
"edittype":"textarea"
Võimalik on defineerida valemeid.Vt lisaks näite A atribuuti "formulas"
Antud järgnevas näites korrutatakse esimeses reas omavahel Hind ja Kurss ning summa kantakse risttabeli vastava rea lõpus “Summa (EEK)” väljale.
\\(sellel väljal defineeritakse arvutustehe) "expr(price:1*rate:1)" : "sum_eek:1"
Risttabeli ridade summad liidetakse ning summeeritakse eraldi väljale (ekspordi nimi “kulud_kokku”).
„sum(sum_eur:first..sum_eur:last)“ : „crstbl_setExpFieldValue(\“kulud_kokku\„,result);“
"decimalPlaces" : { "expr" : "2", "sum" : "2" },
expr - komad arvutustehtes
sum - komad lõpptulemuses
{ "colNames":[ "Id","Kululiik","Hind","Ilma km","Km","Valuuta","Kurss","Summa (EEK)" ], "colModel":[ {"name":"id","index":"id", "sortable":false, "editable":false, "hidden":true}, {"name":"name","index":"name", "width":150, "sortable":false, "editable":true}, {"name":"price","index":"price", "width":100, "sortable":false, "editable":true}, {"name":"no_vat","index":"no_vat", "width":100, "sortable":false, "editable":true}, {"name":"vat", "width":75, "sortable":false, "editable":true, "align":"right", "sorttype":"float"}, {"name":"currency","index":"currency", "width":75, "sortable":false, "editable":true}, {"name":"rate","index":"rate", "width":75, "sortable":false, "editable":true, "align":"right", "sorttype":"float"}, {"name":"sum_eur","index":"sum_eur", "width":100, "sortable":false, "editable":true, "align":"right", "sorttype":"float"} ], "formulas" : { "expr(price:1*rate:1)" : "sum_eur:1", "sum(sum_eur:first..sum_eur:last)" : "crstbl_setExpFieldValue(\"kulud_kokku\",result);" }, "decimalPlaces" : { "expr" : "2", "sum" : "2" }, "caption": "Tööde teenuste eest maksmine" }
"expr(amount:1* (price:1+add:1))" : "sum:1"
{ "colNames":[ "Id","Ruum","m2","EUR/m2","Kõrvalkulud","Summa","Märkused" ], "colModel":[ {"name":"id","index":"id", "sortable":false, "editable":false, "hidden":true}, {"name":"objekt","index":"objekt", "width":300, "sortable":false, "editable":true, "sosel" : 59277}, {"name":"amount","index":"amount", "width":175, "sortable":false, "editable":true}, {"name":"price","index":"price", "width":175, "sortable":false, "editable":true}, {"name":"add","index":"add", "width":175, "sortable":false, "editable":true}, {"name":"sum","index":"sum", "width":175, "sortable":false, "editable":false}, {"name":"notes","index":"notes", "width":175, "sortable":false, "editable":true} ], "formulas" : { "expr(amount:1* (price:1+add:1))" : "sum:1", "sum(sum:first..sum:last)" : "crstbl_setExpFieldValue(\"kogumaksumus\",result);" }, "decimalPlaces" : { "expr" : "2", "sum" : "2" }, "caption": null }
{ "colNames":[ "Id","Kuupäev","Sõidu eesmärk","Näit alguses","Lõppnäit","Läbisõit" ], "colModel":[ {"name":"id","index":"id", "sortable":false, "editable":false, "hidden":true}, {"name":"x_date","index":"x_date", "width":100, "sortable":false, "editable":true}, {"name":"name","index":"name", "width":400, "sortable":false, "editable":true}, {"name":"start","index":"start", "width":100, "sortable":false, "editable":true, "align":"right"}, {"name":"end","index":"end", "width":100, "sortable":false, "editable":true, "align":"right"}, {"name":"kilometrage","index":"kilometrage", "width":100, "sortable":false, "editable":true, "align":"right"} ], "formulas" : { "expr(end:1 - start:1)" : "kilometrage:1", "sum(kilometrage:first..kilometrage:last)" : "crstbl_setExpFieldValue(\"labisoit_kokku\",result);" }, "caption": null }