XML Publisher supports the common programming construct "if","if-then-else". This is extremely useful when you need to test a condition and conditionally show a result.
We can use if condition directly by writing <?IF?> condition <?END IF?>
Example:
<?if:P_PM_YN='N'?> Yes <?end if?>
But for If-else we need to use extended function.
Method 1:
<?xdofx:if element_condition then result1 else result2 end if?>
Example:
<?xdofx:if INVOICE_AMOUNT > 5000 then ’Higher’
else
if INVOICE_AMOUNT <3000 then ’Lower’
else
’Equal’
end if?>
Method 2:
Syntax:
<?xdoxslt:ifelse(condition,true,false)?>
Example:
<?xdofx:if INVOICE_AMOUNT > 5000 then ’Higher’
else
if INVOICE_AMOUNT <3000 then ’Lower’
else
’Equal’
end if?>
Method 2:
Syntax:
<?xdoxslt:ifelse(condition,true,false)?>
Example:
<?xdoxslt:ifelse(20=21,’yes 20 and 21 are equal’,’No 20 and 21 are not equal’)?>
Ans: No 20 and 21 are not equal
Using OR Condition in XML RTF Template:
<?xdoxslt:ifelse(20=21,’yes 20 and 21 are equal’,’No 20 and 21 are not equal’)?>
Ans: No 20 and 21 are not equal
Using OR Condition in XML RTF Template:
Syntax:
<?if:XMLfield=value1 or XMLfield=value2?> display value <?end if?>
Example:
<?if:sum(AVALUE)=0 or sum(BVALUE)=0?>0<?end if?>
<?if:sum(AVALUE)=0 or sum(BVALUE)=0?>0<?end if?>
You can use whichever is applicable to your requirement.
Challa.
No comments:
Post a Comment