ORACLE APEX 项目值设置 PL\SQL 表达式源面临 PLS-00103 警告

ORACLE APEX Item values setting with PL\SQL Expression source facing PLS-00103 warning

我正在尝试使用 PL\SQL 表达式为 APEX 页面背景中 运行 的隐藏项设置值,因为需要进行一些检查。但不知何故,我遇到了一些 'PLS-00103' 遇到了符号“声明”...错误,当 compile.I 想寻求有关如何解决此问题的帮助时。谢谢

enter image description here

DECLARE
    p_batch_id_stg      NUMBER;
    p_batch_id_fail     NUMBER;
    p_final_batch_id    NUMBER;

BEGIN
        SELECT 
        BATCH_ID INTO  p_batch_id_stg
        FROM 
        NIOE_ORDER_HEADER_STG_V
        WHERE 
        BATCH_ID !='' OR BATCH_ID IS NOT NULL
        ORDER BY 
        BATCH_ID DESC
        FETCH FIRST 1 ROWS ONLY;
    
        SELECT 
        BATCH_ID INTO  p_batch_id_fail
        FROM 
        NI.NI_OM_ORDER_IMPORT
        WHERE 
        BATCH_ID !='' OR BATCH_ID IS NOT NULL
        ORDER BY 
        BATCH_ID DESC
        FETCH FIRST 1 ROWS ONLY;
    
    IF p_batch_id_fail > p_batch_id_stg THEN
        p_final_batch_id := p_batch_id_fail;
    ELSIF p_batch_id_stg > p_batch_id_fail THEN
        p_final_batch_id := p_batch_id_stg;
    END IF;

    RETURN p_final_batch_id;

EXCEPTION
    WHEN NO_DATA_FOUND THEN
    RETURN NULL;
END;
/

... using PL\SQL expression

嗯,这不是一个PL/SQL表达式。它写在PL/SQL中,但它代表了一个Function Body,returns一些值。

不清楚您具体在何处执行此操作(是该项的“源”值还是“默认”值?),但是 - 尽管如此,我还是建议您将类型更改为“函数体”。