Formßt:
#if v²raz
v∞tev then
#elseif v²raz
v∞tev el
seif #else
v∞tev else
#endif
V²znam:
P°φkaz umo₧≥uje podmφn∞n∞ v∞tvit WBC konektor.
P°φkaz if
musφ konΦit direktivou #endif
a m∙₧e mφt n∞kolik Φßstφ #elseif
a jednu Φßst #else
.
V²raz musφ b²t typu Boolean a musφ b²t uveden na stejnΘm °ßdku jako je uvedeno #if
(resp. #elseif
). V²raz je konstruovan² podle pravidel pro v²razy v Üablon∞, kter² m∙₧e obsahovat nßzvy vstupnφch formulß°ov²ch prom∞nn²ch, nßzvy select∙ a sloupc∙, kterΘ byly vyhodnoceny p°ed tφmto p°φkazem #if
a nßzvy prom∞nn²ch zφskan²ch pomocφ GetVariable
nebo DeclareVariable
a nßzvy systΘmovΘ prom∞nnΘ Üablony.
P°φkaz if
m∙₧e b²t uvnit° bloku SQLStatement
nebo takΘ vn∞:
#if podmφnka
SQLStatement: abcd
+SELECT * FROM Tab
#else
SQLStatement: efgh
+SELECT * FROM JinaTab
#endif
P°φklad:
V HTML formulß°i je combo s nßzvem "typ" a listbox s nßzvem "kateg" (SELECT NAME=kateg
). V konektoru nßsledujφcφ Üablony se reaguje na to, co je v combu vybrßno a je-li v listboxu vybrßna ₧ßdnß nebo jedna a vφce hodnot:
<%WBC%> SQLStatement: Vyber + SELECT Reality.cislo,Reality.nazev,Reality.popis,Reality.dat, + Kategorie.nazevk + FROM Reality JOIN Okresy ON (Reality.okres=Okresy.cisloo) + JOIN Kategorie ON (Reality.kategorie=Kategorie.cislok) + WHERE TRUE
// je-li v combu vybrßna polo₧ka se zßpornou hodnotou, ned∞lat nic, // jinak p°idat podmφnku
#if typ > -1 + AND prodej = %typ% #endif
// je-li vybrßna v listboxu alespo≥ jedna hodnota, p°
idat podmφnku #if exists kateg + AND ( #repeat var=kateg delimiter=OR + (kategorie=%kateg%) #endrepeat + ) #endif
DalÜφ p°φklad:
z aplikace Anketa ve FormWizardu, kdo jeÜt∞ nehlasoval, nemß dosud cookie:
#if exists HTTP_COOKIE_anketa
; pokud existuje cookie pro tuto anketu u₧ivatel v tΘto anket∞ u₧ hlasoval, p°epsat jeho volbu
SQLStatement: Akce + UPDATE Odpovedi + SET volba=%hodnota%,ipadr="%REMOTE_ADDR%" + WHERE id=%HTTP_COOKIE_anketa%; #else
; jeÜt∞ nehlasoval, vlo₧it nov² zßznam
SQLStatement: Akce + START TRANSACTION; + INSERT INTO Odpovedi(ipadr,volba,anketaid) + VALUES ("%REMOTE_ADDR%",%hodnota%,%anketaid%); ; sloupec id tabulky Odpovedi mß implicitnφ hodnotu sekvencφ Odpoved_id,
; vlo₧enou unikßtnφ hodnotu p°eΦteme pomocφ sekve
nce.CurrVal SQLStatement: id_odpovedi + SELECT id FROM Odpovedi WHERE id=Odpoved_id.CURRVAL; + COMMIT; EndSQLStatement; #endif