首页 > 解决方案 > Oracle Apex - 基于返回 URL 的 PL/SQL 函数体分支到另一个页面

问题描述

我正在尝试根据表中的查询执行页面分支。它正在运行的查询并返回某些内容,但该语句仅执行 else 部分,这使我认为查询中的值没有被传递给语句中的评估变量。我怎样才能最好地做到这一点?

Declare
evaluated NUMBER;
SELECT COUNT(*) INTO evaluated FROM USER_EVALUATION join term using(term_id)
WHERE EVALUATION.USER_ID=:P1_ID 
    and term_id =:P1_TERM;

    IF evaluated > 1 THEN
        RETURN 'page_link1_here';

    ELSE
        RETURN 'page_link2_here';

    END IF;
END;

标签: oracleoracle-apex

解决方案


如果ELSE始终返回部分,则count(*) = 0这意味着那里没有满足条件的行,或者页面项目值不在会话状态。不管你在屏幕上看到它们。

我建议您提交页面 - 这将进入会话状态,P1_ID然后P1_TERM您将看到是否返回了另一个链接。


推荐阅读