if (v konektoru) - v∞tvenφ konektoru

Formßt:

#if v²raz
 v∞tev then
#elseif v²raz
 v∞tev elseif
#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φ sekvence.CurrVal 
SQLStatement: id_odpovedi
+ SELECT id FROM Odpovedi WHERE id=Odpoved_id.CURRVAL;
+ COMMIT;
EndSQLStatement;
#endif