Oracle BI Publisher RTF模板中的独立ELSE
我知道有一个,是这样的:Oracle BI Publisher RTF模板中的独立ELSE,oracle,rtf,obiee,bi-publisher,Oracle,Rtf,Obiee,Bi Publisher,我知道有一个,是这样的: 但是,我希望使用IF语句根据值显示不同的数据表。类似于下面的伪代码: 如果BUSINESS_GROUP是BG-A,则显示包含A、B和C列的表格;如果不是,则显示包含X、Y和Z列的表格 我可以通过使用两个单独的IF语句来实现这一点: 我希望我可以使用像这样的语句,但它不起作用 有什么提示吗?你说得对,没有独立的“其他”块。对于您的需求,您需要使用to if表达式来计算相反的条件 是在BIP中使用if表达式的所有不同方式的列表。以下内容满足您的功能要求,但不是if-e
但是,我希望使用IF
语句根据值显示不同的数据表。类似于下面的伪代码:
如果BUSINESS_GROUP是BG-A,则显示包含A、B和C列的表格;如果不是,则显示包含X、Y和Z列的表格
我可以通过使用两个单独的IF语句来实现这一点:
我希望我可以使用像
这样的语句,但它不起作用
有什么提示吗?你说得对,没有独立的“其他”块。对于您的需求,您需要使用to if表达式来计算相反的条件
是在BIP中使用if表达式的所有不同方式的列表。以下内容满足您的功能要求,但不是
if-else
语句
<?choose:?>
<?when: BUSINESS_GROUP='A'?>
SHOW TABLE with COLUMNS A B and C
<?end when?>
<?otherwise:?>
SHOW TABLE with COLUMNS X Y and Z
<?end otherwise?>
<?end choose?>
显示包含A、B和C列的表格
显示包含X、Y和Z列的表格
这类似于其他编程语言中的switch/case/evaluate语句。正如@Peter Paff所示,
是一个很好的选择。它可能有点“笨重”,但如果您需要添加更多的条件,它似乎更容易遵循
对于您的特定条件,还有另一个(可能是“更大”)选项:如果您引用的表是一个表,并且您只希望根据条件显示/隐藏该表的某些列,则可以使用以下命令将这些条件添加到您希望显示(或隐藏)的每一列(或列组):
有关详细信息,请参阅-特别是关于格式化列的部分。仅为补充,我认为WHEN不允许多个条件(即当BUSINESS_GROUP='A'和SOURCE='X')?