Kasutaja tarvikud

Lehe tööriistad


wd:administraatorile:andmetüübihaldus:trükimallid:smarty

Erinevused

Siin näed erinevusi valitud versiooni ja hetkel kehtiva lehekülje vahel.

Lõlita võrdlemise vaatele

Both sides previous revision Previous revision
Next revision
Previous revision
wd:administraatorile:andmetüübihaldus:trükimallid:smarty [2014/08/06 14:07]
admin
wd:administraatorile:andmetüübihaldus:trükimallid:smarty [2019/08/08 02:06] (Hetkel kehtiv)
Rida 7: Rida 7:
 Kui Smarty keele märke { } (loogelisi sulgusid) tahetakse kasutada teksti sees, siis tuleb need eelnevalt asendada vastavalt "​{"​ => "​{{"​ Kui Smarty keele märke { } (loogelisi sulgusid) tahetakse kasutada teksti sees, siis tuleb need eelnevalt asendada vastavalt "​{"​ => "​{{"​
 "​}"​ => "​}}"​ "​}"​ => "​}}"​
-Lisaks tuleb jutumärkide asemel kasutada märke ​ ''' ​(3 ühekordset jutumärki (ilma jutumärkideta). Ühekordse jutumärgi saamiseks tuleb kasutada märke ''​. Kaks ühekordset jutumärki (ilma jutumärkideta).+Lisaks tuleb jutumärkide asemel kasutada märke  ​<​nowiki>​'''​</​nowiki> ​3 ühekordset jutumärki (ilma jutumärkideta). Ühekordse jutumärgi saamiseks tuleb kasutada märke ​<​nowiki>​''​</​nowiki>​ 2 ühekordset jutumärki (ilma jutumärkideta).
  
-=== Näide ===+=== Näide===
  
 ==Sisend== ==Sisend==
-See on siin üks arvude hulk {ldelim}1,​2,​3{rdelim}+<code php>See on siin üks arvude hulk {ldelim}1,​2,​3{rdelim}</​code>​
 ==Väljund== ==Väljund==
-See on siin üks arvude hulk {1,2,3}+<code php>See on siin üks arvude hulk {1,2,3}</​code>​
 Täpsemat infot standardse Smarty süntaksi kohta saate aadressilt http://​smarty.net. Täpsemat infot standardse Smarty süntaksi kohta saate aadressilt http://​smarty.net.
 +\\
 +\\
  
 ===== Path (teekond) ===== ===== Path (teekond) =====
Rida 24: Rida 26:
   * type_ename:​tüübi laienduse nimetus   * type_ename:​tüübi laienduse nimetus
  
-=== Näited ===+=== Näited===
  
-Antud näiteks väärtustatakse lähetatav (lhv) lähetuselt (lh) loetud id (lahetatav_id) kaudu. +Antud näiteks väärtustatakse lähetatav (lhv) lähetuselt (lh) loetud id (lahetatav_id) kaudu.\\ 
-// Parameeter "​o"​ on vabalt valitud nimetus ja peab kattuma alamteekonnas antuga. +<​nowiki>​// Parameeter "​o"​ on vabalt valitud nimetus ja peab kattuma alamteekonnas antuga.</​nowiki>​\\ 
-// Ainuke nõue on, et parameeter ei ole võrdne ühegi nö sisseehitatud parameetriga. +<​nowiki>​// Ainuke nõue on, et parameeter ei ole võrdne ühegi nö sisseehitatud parameetriga.</​nowiki>​ 
-{sle n=lhv+<code php>{sle n=lhv
 p='''​webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item[item_id=''<<​glv:​o:​lahetatav_id>>''​]'''​ p='''​webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item[item_id=''<<​glv:​o:​lahetatav_id>>''​]'''​
-o=$lh} +o=$lh}</​code>​ 
-// Antud näites leitakse kõik seotud lähetused kasutades tüübi identifitseerimiseks laienduse nime. +<​nowiki>​// Antud näites leitakse kõik seotud lähetused kasutades tüübi identifitseerimiseks laienduse nime.</​nowiki>​\\ 
-// See on universaalsem lähenemine ning võimaldab lihtsamini malle ühest süsteemist teise üle kanda. +<​nowiki>​// See on universaalsem lähenemine ning võimaldab lihtsamini malle ühest süsteemist teise üle kanda.</​nowiki>​ 
-{sle n=lhs+<code php>{sle n=lhs
 p='''​webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item[item_type_id=''<<​type_ename:​Lahetus>​ p='''​webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item[item_type_id=''<<​type_ename:​Lahetus>​
->''​]'''​}+>''​]'''​}</​code>​ 
 +\\ 
 + 
 +===== Tag-id ===== 
 + 
 +==== opt ==== 
 + 
 +See tag on mõeldud optimeerimiseks. Programmile on vaja anda “vihjeid”,​ et milliseid tüüpe antud mallis soovitakse kasutada, samuti vajadusel ka välju (näiteks, mis jäävad iflause piirkonda). See hoiab suuresti kokku sisend-XML-i mahtu. Vaikimisi paneb süsteem selle tüübi ID, mille pealt trükkimist alustatakse. St kui soovitakse ainult otseselt samalt andmekaardilt andmeid, siis opt tag-i ei pea kasutama. Samas, kui soovitakse ka seostest andmeid võtta, siis on vaja vastavate seotud tüüpide ID-d määrata. 
 + 
 +=== Parameetrid:​ === 
 +^Nimetus ​   ^ Kirjeldus ^ 
 +|tids|Tüübi ID-de loetelu komadega eraldatud| 
 +|enames|Tüübi ekspordi nimetuste loetelu komadega eraldatud| 
 +|max_depth|Maksimaalne sügavus XML-is. Vaikimisi on see 2. Juhul kui tahetakse näiteks seostest omakorda sügavamale seostesse minna, siis peaks olema max_depth=3 jne| 
 + 
 +=== Näide: === 
 + 
 +<code php>{opt tids=27992,​28007,​34111}</​code>​ 
 +\\ 
 + 
 +==== sb ==== 
 + 
 +See tag on mõeldud baas teekonna määramiseks. Viimast on vaja eelkõige asukoha teekondade kirjelduste lühendamiseks. Kui ühtegi sb tag-i dokumendist ei leita, siis määratakse selleks automaatselt “/​webdk_data/​webdk_item”. 
 + 
 +=== Parameetrid:​ === 
 +^Nimetus ​   ^ Kirjeldus ^ 
 +|p|path ehk teekond. Määrab asukoha XML-puus| 
 + 
 +=== Näide: === 
 + 
 +<code php>{sb p='''​webdk_item[item_id=''​45676''​]'''​}</​code>​ 
 + 
 +Määrab, et järgnevad teekonnad on alates item-ist id=4676. 
 +\\ 
 +\\ 
 + 
 +==== gv (get value) ==== 
 + 
 +Seda tag-i kasutatakse väljade sisu kuvamiseks. 
 + 
 +=== Parameetrid:​ === 
 +^Nimetus ​   ^ Kirjeldus ^ 
 +|p|path ehk teekond. Määrab asukoha XML-puus| 
 +|c|context ehk kontekst. Määrab konteksti, millest alates väärtuse otsingut teostatakse. Vt näidet| 
 +|t|type ehk tüüp. Määrab ära välja tüübi. Kui määramata,​ siis kuvatakse täpselt nii nagu on sisendis. Vt tüübid osa| 
 +|req|On nõutud. Määrab, kas vastav muutuja on nõutud. Vaikimisi on “true”| 
 +|empty|Juhul,​ kui väärtus on tühi või puudu (viimase korral peab req=false), siis antakse selle muutuja väärtus tagasi. Näiteks. {gv p=minuvaartus req=false empty=tühi}.| 
 + 
 +=== Tüübid: === 
 +^Nimetus ​   ^ Kirjeldus ^ 
 +|date|Kuupäev ja/või kellaaeg. Määrab ära kuupäeva tüübi, mille abil saab sisendisolevaid kuupäevi erinevatel kujudel esitada. Kuju saab määrata parameetriga fmt| 
 +|est_named _date|Kuupäev nn nimetatud kujul eesti keeles. Näiteks “30. oktoober 2008”. Vt näidet.| 
 +|musel|Määrab ära, et tegemist on musel väärtusega,​ mis formaaditakse vastavalt parameetritele “musel_sep”,​ “musel_val”. Näiteks. {gv p=MVV t=musel musel_sep=, empty=tühi musel_val=« code »: «value» req=false}| 
 + 
 +=== Näide: === 
 + 
 +<code php>​Tüüp:​ {gv p=../​webdk_item_type/​item_type_name_translation/​et} 
 +Pealkiri: {gv p=pealkiri} 
 +Kuupäev formaadis AAAA-KK-PP: {gv p=reg_date t=date fmt=''​Y-m-d''​} 
 +Kuupäev nimetatud formaadis: {gv p=reg_date t=est_named_date}</​code>​ 
 + 
 +<code php>{sle n=a p=webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item} 
 +Esimese seose pealkiri: {gv p=pealkiri c=$a.0}</​code>​ 
 +\\ 
 + 
 +==== sle (set get value) ==== 
 + 
 +Seda tag-i kasutatakse nn sisemiste loetelude koostamiseks,​ et neid saaks hiljem näiteks 
 +Smarty foreach konstruktsiooniga kuvada. 
 + 
 +^Nimetus ​   ^ Kirjeldus ^ 
 +|n|name ehk nimetus. Määrab ära, millise nimega loetelu salvestatakse.| 
 +|p|path ehk teekond. Määrab asukoha XML-puus.| 
 +|c|context ehk kontekst. Määrab ära konteksti, kust alates astavat teekonda otsitakse. Vaikimisi kasutatakse aktiivset asukohta (näiteks sb-käsuga 
 +määratud). c-d kasutatakse eelkõige foreach jms tsüklites alamelementide kuvamisel.| 
 + 
 +=== Näide: === 
 + 
 +<code php>{sle n=a p=webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item}</​code>​ 
 +\\ 
 + 
 +==== sl (sort list) ==== 
 + 
 +Seda tag-i kasutatakse nn sisemiste loetelude (koostatud “sle”-ga) sorteerimiseks. 
 + 
 +^Nimetus ​   ^ Kirjeldus ^ 
 +|n|name ehk nimetus.Funktsiooniga "​sle"​ koostatud loetelu nimi| 
 +|p|path ehk teekond. Määrab asukoha XML-puus. See on relatiivne iga loetelus oleva elemendi suhtes.| 
 + 
 +=== Näide: === 
 + 
 +<code php>{sle n=a p=webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item} 
 +{sl n=a p=pealkiri}</​code>​ 
 +\\ 
 + 
 +==== table ==== 
 + 
 +Seda tag-i kasutatakse tabelite koostamiseks. 
 + 
 +^Nimetus ​   ^ Kirjeldus ^ 
 +|p|path ehk teekond. Määrab tabeli väärtuste asukoha| 
 +|c|context ehk kontekst. Määrab ära alguspunkti,​ kust alates path-i resolvima hakatakse. Seda on vaja kasutada näiteks tsüklis sees “kontekstis” tabelite genereerimisel (vt näidet)| 
 +|sort|sorteerimise teekond. Määrab ära teekonna väärtuseni mille järgi sorteeritakse. See teekond peab olema relatiivne tabeli reale.| 
 +\\ 
 + 
 +==== tgv (table get value) ==== 
 + 
 +Seda tag-i kasutatakse tabeli sisesta väärtuste kuvamiseks. 
 + 
 +=== Parameetrid:​ === 
 + 
 +Parameetrid on samad, mis funktsioonil gv, vahega, et kontekstiks on konkreetne tabeli rida. 
 + 
 +=== Tüübid: === 
 +^Nimetus ​   ^ Kirjeldus ^ 
 +|date|Kuupäev ja/või kellaaeg. Määrab ära kuupäeva tüübi, mille abil saab sisendisolevaid kuupäevi erinevatel kujudel esitada. Kuju saab määrata parameetriga fmt| 
 + 
 +=== Näide: === 
 + 
 +<code php>​{table p=webdk_routing} 
 +^Roll^Kes^Ülesanne^ 
 +|{tgv n=rt_role_name}|{tgv n=rt_perf_name}|{tgv n=rt_task}| 
 +{/​table}</​code>​ 
 +\\ 
 + 
 +===== Globaalsed funktsioonid ===== 
 + 
 +Globaalseid funktsioone saab kasutada tingimuslausetes jms. 
 + 
 +=== Parameetrid:​ === 
 + 
 +^Nimetus ​   ^ Kirjeldus ^ 
 +|name|Väljakutsutava funktsiooni nimetus. Tüüpiliselt “gv”| 
 +|param1.. paramN|Väljakutsutavale funktsioonile edastatavad parameetrid. “gv” puhul võib olla lihtsalt x-path-i teekond. Vt näidist| 
 +\\ 
 + 
 +===== Muud märkused ===== 
 + 
 +Ekspordinimes,​ mida kasutatakse trükimallides ei tohi kasutada numbreid. Näiteks “webdk_item/​minuvali2” ei leita, samas “webdk_item/​minuvali_b” leitakse. 
 + 
 +=== Näited: === 
 + 
 +<code php> {opt tids=27992,​28007,​34111}{sb p=/​webdk_data/​webdk_item} 
 +Tüüp: {gv p=../​webdk_item_type/​item_type_name_translation/​et} 
 +Pealkiri: {gv p=pealkiri} 
 +Meie nr: {gv p=reg_nr} 
 +Teie kuupäev: {gv 
 +p='''​webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item[item_id=''<<​reg_nr_odid>>''​]/​reg_kp'''​} 
 +Teie nr: {gv 
 +p='''​webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item[item_id=''<<​reg_nr_odid>>''​]/​reg_nr'''​} 
 +Kuupäev: {gv p=reg_date} 
 +Sisu: {gv p=summary} 
 +Mitteeksisteeriv muutuja: {gv p=minu_muutuja req=''​false''​}</​code>​ 
 + 
 +<code php>​Seotud ühe objekti väli (näiteks andmed isikukaardilt):​ 
 +{sle n=lh p='''​webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item[item_id=''<<​lahetatav_id>>''​]'''​} 
 +{glv i=$lh.0 n=Isik}</​code>​ 
 +\\ 
 + 
 +{table p=webdk_routing} 
 +^Roll    ^ Kes ^Ülesanne^ 
 +|{tgv n=rt_role_name}|{tgv n=rt_perf_name}|{tgv n=rt_task}| 
 +{/table} 
 +\\ 
 + 
 +**Risttabeli väärtuste kuvamine tabelis** 
 +\\ 
 +{table p=kaubad/​rows/​row} 
 +|{tgv n=nimetus}|{tgv n=kogus}|{tgv n=summa}| 
 +{/table} 
 +\\ 
 + 
 +<code php>* Seotud väljsaadetavad kirjad (tüübi ID=28007):​ 
 +{sle n=a p='''​webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item[item_type_id=''​28007''​]'''​} 
 +{foreach from=$a item=i name=testloop2} 
 +{$smarty.foreach.testloop2.iteration}. 
 +- ID: {glv i=$i n=item_id} 
 +- Tüübi ID: {glv i=$i n=item_type_id} 
 +- Nimi: {glv i=$i n=item_name} 
 +- Looja: {glv i=$i n=item_creator_name} 
 +- Loodud: {glv i=$i n=item_create_time t=date} 
 +{/​foreach} 
 +</​code>​ 
 + 
 +<code php>* Kõik seotud dokumendid:​ 
 +{sle n=a p=webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item} 
 +{foreach from=$a item=i name=testloop3} 
 +{$smarty.foreach.testloop3.iteration}. 
 +- ID: {glv i=$i n=item_id} 
 +- Tüübi ID: {glv i=$i n=item_type_id} 
 +- Nimi: {glv i=$i n=item_name} 
 +- Looja: {glv i=$i n=item_creator_name} 
 +- Loodud: {glv i=$i n=item_create_time t=date} 
 +{/​foreach} 
 +</​code>​ 
 + 
 +<code php> 
 +* Mitme väärtuse valiku välja kuvamine: 
 +{sle n=a p=MVV/​selection} 
 +{foreach from=$a item=i name=mvv1} 
 +{$smarty.foreach.mvv1.iteration}. 
 +- Kood: {glv i=$i n=code}{if xpc(“glv”,​$i,​”item_id”) eq “K2”} (Erikood){/​if} 
 +- Väärtus: {glv i=$i n=value} 
 +{/​foreach} 
 +</​code>​ 
 + 
 +<code php> 
 +* Mitme kasutaja valiku välja kuvamine: 
 +{sle n=b p=MUSEL/​record} 
 +{foreach from=$b item=i name=musel1} 
 +{$smarty.foreach.musel1.iteration}. {glv i=$i n=name}{if !$smarty.foreach.musel1.last},​ {/if} 
 +{/​foreach} 
 +</​code>​ 
 + 
 +<code php> 
 +* Kompleks variant, kus kaardil on ühe objekti valik ning mis peegeldatakse seostesse (dubleeri seosed). 
 +Antud näites on välja ekspordi nimeks "​objekt",​ ehk siis tema ID on tegelikult väljal "​objekt_id"​. 
 +Siin on näide, kuidas kuvada infot seotud objektide hulgast võttes aluseks objekt väljal oleva ID. 
 +</​code>​ 
 + 
 +<code php> 
 +{gv 
 +p='''​webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item[item_id=''<<​objekt_id>>''​]/​item_name'''​} 
 +</​code>​ 
 + 
 +==== Suunamiste info ==== 
 + 
 + 
 +{table p=webdk_routing} 
 +^Roll ^ Täitmisaeg ^ Kellele ^ Resolutsioon ^ Olek (suunamise staatus) ^ Kommentaar / vastus ^ Põhjendus 
 +|{tgv n=rt_role_name}|{tgv n=rt_status_time}|{tgv n=rt_perf_name}|{tgv n=rt_task}|{tgv n=rt_status_tr}|{tgv n=rt_task_answer}|{tgv n=rt_answer_comment}| 
 + 
 +<code php>* Tingimuslik lause: {if xpc(“gv”,​“arv”) eq 77}JAH ON 77{else}EI OLE 77{/​if}</​code>​ 
 +<code php>* Tsüklis kontekstipõhiste tabelite genereerimine:​ 
 +{sle n=lvvphk 
 +p=’webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item[item_type_id=2177]’} 
 +{foreach from=$lvvphk item=i}</​code>​ 
 +<code php>​Nimetus:​ {glv i=$i n=nimetus}</​code>​ 
 +<code php>​Kood:​ {glv i=$i n=kood}</​code>​ 
 +<code php>​Alamtabel:​ {table c=$i 
 +p=’webdk_relations/​webdk_relation/​webdk_slave_item/​webdk_item[item_type_id=2359]’}</​code>​ 
 + 
 +^Alamnimetus ​   ^ Kirjeldus^ 
 +|{tgv n=nimetus}|{tgv n=kirjeldus}| 
 +{/​table}{/​foreach} 
 +\\ 
 + 
 +=== Väljund: === 
 + 
 +<code php>​Tüüp:​ Saabunud kiri 
 +Pealkiri: Kiri Webware OÜ-lt 
 +Meie nr: 1.2/11 
 +Kuupäev: 15.11.2007 
 +Sisu: Teade serveri korralisest hooldusest 
 +Mitteeksisteeriv muutuja: 
 +Seotud ühe objekti väli (näiteks andmed isikukaardilt):​ Andres Maasikas</​code>​ 
 + 
 +^Roll   ^ Kes^Ülesanne^ 
 +|Teadmiseks|Mait Kauss|| 
 +|Vastutav isik|Eero Pealis|Täpsustage palun kuupäev| 
 + 
 +Risttabeli väärtuste kuvamine tabelis: \\ 
 +^Nimetus ​  ^ Kogus^Summa^ 
 +|ID-kaadi lugeja|5|500| 
 +|Klaviatuur|2|300| 
 + 
 +<code php>​Seotud väljsaadetavad kirjad (tüübi ID=28007):​ 
 +1. 
 +- ID: 34555 
 +- Tüübi ID: 28007 
 +- Nimi: 4.11/68-1 proovikiri 
 +- Looja: Erki Kaldjärv 
 +- Loodud: 03.12.2007 
 +Kõik seotud dokumendid:​ 
 +1. 
 +- ID: 34248 
 +- Tüübi ID: 34111 
 +- Nimi: dokument 1 
 +- Looja: Erki Kaldjärv 
 +- Loodud: 03.10.2007 
 +2. 
 +- ID: 34255 
 +- Tüübi ID: 34111 
 +- Nimi: dokument 2 
 +- Looja: Erki Kaldjärv 
 +- Loodud: 06.10.2007 
 +3. 
 +- ID: 34262 
 +- Tüübi ID: 34111 
 +- Nimi: dokument 3 
 +- Looja: Erki Kaldjärv 
 +- Loodud: 06.10.2007 
 +</​code>​ 
 + 
 +<code php> 
 +* Mitme väärtuse valiku välja kuvamine: 
 +1. 
 +- Kood: K1 
 +- Väärtus: AAA 
 +2. 
 +- Kood: K2 (Erikood) 
 +- Väärtus: BBB 
 +</​code>​ 
 + 
 +<code php> 
 +* Mitme kasutaja valiku välja kuvamine: 
 +1. 
 +- ID: 123 
 +- Nimi: Erki Kaldjärv 
 +2. 
 +- ID: 2345 
 +- Nimi: Ants Kalda 
 +</​code>​ 
 + 
 +<code php> 
 +* Kompleks variant, kus kaardil on ühe objekti valik ning mis peegeldatakse seostesse (dubleeri seosed). 
 +Antud näites on välja ekspordi nimeks "​objekt",​ ehk siis tema ID on tegelikult väljal "​objekt_id"​. 
 +Siin on näide, kuidas kuvada infot seotud objektide hulgast võttes aluseks objekt väljal oleva ID. 
 +Minu objekti nimi 
 +* Tingimuslik lause: JAH 
 +</​code>​ 
 + 
 +* Tsüklis kontekstipõhiste tabelite genereerimine:​\\ 
 +Tavaväärtused:​\\ 
 +Nimetus: Toote nimetus Kood: Toote kood\\ 
 +Alamtabel:​\\ 
 + 
 +^Alamnimetus ​ ^ Kirjeldus^ 
 +|Alamtoode 1|Pikk kirjeldus 1| 
 +|Alamtoode 2|Pikk kirjeldus 2| 
wd/administraatorile/andmetüübihaldus/trükimallid/smarty.1407323275.txt.gz · Viimati muutnud: 2019/08/08 02:06 (väline muutmine)