DeclareVariable (WBIK)

Formßt bloku:

DeclareVariable: jmΘno_novΘ_prom∞nnΘ:typ_prom∞nnΘ:=v²raz_definujφcφ_prom∞nnou

V²znam:

Tento blok slou₧φ k vytvo°enφ novΘ lokßlnφ prom∞nnΘ, kterß lze pou₧φt v konektoru od mφsta, kde prom∞nnß vznikla - nap°. pro podmφn∞nΘ v∞tvenφ WBC konektoru pomocφ #if, pro sestavenφ podmφnky WHERE a kterß je p°edßna do Üablony.

JmΘno nov∞ vytvo°enΘ prom∞nnΘ musφ b²t slo₧eno z pφsmen, Φφslic a znaku podtr₧enφ ┤_┤, nerozliÜuje se velikost pφsmen. JmΘno nesmφ b²t stejnΘ jako automaticky vytvß°enΘ prom∞nnΘ (CurrentRecord, MaxRecords apod. a chybovΘ prom∞nnΘ HTW Üablony), ani nesmφ b²t stejnΘ jako u₧ vytvo°enΘ prom∞nnΘ.

V zßpisu musφ b²t uveden bu∩ typ_prom∞nnΘ nebo v²raz_definujφcφ_prom∞nnou nebo oboje. Je-li uveden pouze typ, pak se hodnota novΘ prom∞nnΘ nastavφ na hodnotu NONE, pokud nenφ typ uveden, odvodφ se z typ∙ v²razu. Jako typ lze pou₧φt libovoln² jednoduch² typ vnit°nφho (klientskΘho) jazyka WinBase (Boolean, Integer, Short,Money, CSIString[15] apod), navφc lze deklarovat takΘ prom∞nnou prom∞nnΘ velikosti typem Blob.

V²raz_definujφcφ_prom∞nnou je konstruovan² podle pravidel pro v²razy v Üablon∞, m∙₧e obsahovat nßzvy vstupnφch formulß°ov²ch prom∞nn²ch, nßzvy select∙ a sloupc∙, kterΘ byly vyhodnoceny v pojmenovanΘm SQLStatement p°ed tφmto blokem a nßzvy prom∞nn²ch zφskan²ch pomocφ GetVariable a DeclareVariable p°ed tφmto blokem.

P°φklad:

<%WBC%>
RequiredValues: hodnota anketaid

#if exists HTTP_COOKIE_anketaid%anketaid%
; pokud existuje cookie pro tuto anketu, zkopirujeme jej do prom∞nnΘ 'anketacookie'
DeclareVar: anketacookie:=HTTP_COOKIE_anketaid%anketaid%
#endif

P°φklad 2:

Na zaΦßtku konektoru se vytvo°φ prom∞nnß typu Boolean s hodnotou FALSE, podle v²sledku SELECTu se p°φpadn∞ zm∞nφ na TRUE:

<%WBC%>
DeclareVariable: Logged:Boolean :=FALSE
SQLStatement: Login
+ SELECT id,jmeno,heslo
+ FROM Logtable
+ WHERE jmeno="%name%" AND heslo="%passw%"
EndSQL
#if exists Login[0].id
SetVariable: Logged :=TRUE
#endif
<%/WBC%>

Nßsledujφcφ Üablona m∙₧e vypadat:

<%if Logged = TRUE%>
  P°ihlßÜen jako <B><%Login.jmeno%></B>.<BR>

...

<FORM ACTION="<%wb_url%>/next.htw" METHOD="POST">
<INPUT TYPE="Submit" VALUE="P°edat parametry">
<INPUT TYPE="Hidden" NAME="name" VALUE="<%login.jmeno%>">
<INPUT TYPE="Hidden" NAME="passw" VALUE="<%login.heslo%>">
</FORM>
<%else%>
  P°ihlßÜenφ ne·sp∞ÜnΘ.<BR>
<%endif%>