Versioonide võrdlemine

Selgitus

  • See rida lisati.
  • See rida eemaldati.
  • Vorminduse muutmine.

image-20241211-155249.png

Sisukord
stylenone

Andmetabeli ridade arvu kontroll

Antud reegel kontrollib, et andmetabelis olevate ridade arv oleks 3 või suurem

q_lapsed - andmetabeli tüüpi lisavälja kood

Koodilõik
{assign var=kokku value=0}
{foreach from=$taotlus.sisu.q_lapsed key=k item=rida}
{if $k!='html'}{assign var=kokku value=$kokku+1}{/if}
{/foreach}
{$kokku}>=3

Vähemalt üks rida andmetabelis peab olema märgitud linnukesega

q_lapsed - andmetabeli tüüpi lisavälja kood

lapsele_toetus - lisaväli, kuhu vaja märkida linnuke

Koodilõik
{assign var=laps_margitud value=0}
{foreach from=$taotlus.sisu.q_lapsed key=k item=rida}
{if $k!='html'}
{if $rida.lapsele_toetus=='jah'}
{assign var=laps_margitud value=1}{break}
{/if}
{/if}
{/foreach}
{$laps_margitud}==1

Lõppnäit ei tohi olla väiksem kui algnäit

soidup_paevik - andmetabeli tüüpi lisavälja kood

sp_algn - algnäidu lisavälja kood

sp_lpnt - lõppnäidu lisavälja kood

Koodilõik
{assign var=tulemus value=1}
{foreach from=$taotlus.sisu.soidup_paevik key=k item=rida}
{if (int)$rida.sp_lpnt < (int)$rida.sp_algn}
{assign var=tulemus value=0}
{/if}
{/foreach}{$tulemus} > 0

Andmetabelisse A reale lisatud number on võrdne andmetabelisse B lisatud ridade summadega

huvialad - andmetabeli A lisavälja kood

h_taotsumma - andmetabeli A taotletatava summa rea lisavälja kood

kulud - andmetabeli B lisavälja kood

ksumma - andmetabeli B kulu summa rea lisavälja kood

Koodilõik
{$huvialaSummad = array()}
{$kuluSummad = array()}
{foreach from=$taotlus.sisu.huvialad key=k item=rida} 
{if $k!='html'}  {$huvialaSummad[$rida.h_nimi] = (float)$huvialaSummad[$rida.h_nimi]+(float)$rida.h_taotsumma} 
{/if}
{/foreach}
{foreach from=$taotlus.sisu.kulud key=k item=rida} 
{if $k!='html'}  {$kuluSummad[$rida.huviala2] = (float)$kuluSummad[$rida.huviala2]+(float)$rida.ksumma} 
{/if}
{/foreach}{$korras = 1}
{foreach from=$huvialaSummad key=k item=$summa} 
{if $summa != $kuluSummad.{$k}}{$korras = 0}
{/if}
{/foreach}
{$korras} == 1

Andmetabelis ei tohi olla sama isikukoodiga isikut kaks korda

tabel- andmetabeli lisavälja kood

nimi - andmetabelis isikukoodi lisavälja kood

Koodilõik
{assign var=ik value=array()}
{foreach from=$taotlus.sisu.tabel key=k item=rida} 
{if !is_numeric($k)}{continue}
{/if} 
{$ik[] = $rida.nimi.isikukood}
{/foreach}
{if sizeof($ik) == sizeof(array_unique($ik))}1
{else}0
{/if}

Andmetabeli sees toetuse suuruse kontrollimine

image-20241008-070208.png

Reeglit kasutatakse andmetabelis, kus andmete sisestamine toimub dialoogist. Kontroll teostakse iga andmetabeli rea kohta.

Selles näites kontrollitakse, et vallalt taotletav summa ühe võistlusel osaleja kohta ei oleks suurem kui pool võistluse kogumaksumusest ega ei ületaks 200 eurot ühe osaleja kohta. Iga osaleja on erald andmetabeli real.

  • Taotletav_summa -andmetabeli lisavälja kood taotluse vormil

  • vallalt_summa - vallalt taotletava summa lisavälja kood (andmetabeli sees)

  • op_kohta - ühe osaleja võistlusel osalemise kogumaksumuse lisavälja kood andmetabelis

Koodilõik
{$korras = 1}
{foreach from=$taotlus.sisu.Taotletav_summa key=key item=andmetabel}
	{if $key != 'kokku'}
		{if intval($andmetabel.vallalt_summa) > 200 || intval($andmetabel.vallalt_summa) > intval($andmetabel.op_kohta) * 0.5}
			{$korras = 0}
		{/if}
	{/if}
{/foreach}
{$korras}

Aruandes tehtud kulutuste andmetabelis kontrollimine, et kulu suurus oleks vähemalt 70% antud toetusest

Andmetabeli vaade taotlusel

Reeglit kasutatakse andmetabelis, kus andmete sisestamine toimub dialoogist.

Kontrollitakse kõiki andmetabeli riduVaadatakse üle kõik andmetabelis olevad read, kuid reeglit rakendatakse ainult sel juhulreegel käivitatakse ainult siis, kui kulu nimewtuseks nimetus on “Palk juhendajale”

Koodilõik
{$korras = 1}
{foreach from=$aruanne.sisu.rahvakultuur_kulud key=rida item=reaInfo}
	{if !is_numeric($rida)}
		{continue}
	{/if}
	{if $reaInfo.kulu_nimetus == "Palk juhendajale" && (float)$reaInfo.kulu_protsent < 70}
		{$korras = 0}
	{/if}
{/foreach}
{$korras}