Ajax 调用 ORA-01403: 未找到数据

Ajax call ORA-01403: NO DATA FOUND

我在 Whosebug 上发现了很多关于此错误的类似问题,但没有一个与我的问题相同。 我构建了一个包含两个区域的简单页面。第一个区域有两个 select 列表,第二个区域有一个从 select 列表中获取数据的图表。当我打开页面时,Apex 加载每个组件区域、项目... 我知道在我的情况下,最初我的图表没有来自 select 列表和 return 0 行下方的 select 的数据,我收到错误消息:"AJAX call ORA-01403: NO DATA FOUND"。 加载页面后,我可以使用 select 列表并显示图表中的值。

select MSO_DEVICE,  nvl((case when MSO_OEE < 100  then 100 else 100 end),0) max_value,  nvl((case when MSO_OEE is null
                                                                                              then 0
                                                                                          when MSO_OEE = 0            
                                                                                               then 0                
                                                                                          else MSO_OEE 
                                                                                           end),0) value           
FROM MES_OEE
where MSO_DEVICE = :P2_DEVICE 
and MSO_DATE = :P2_DATE 
order by 2 desc;

当 P2_DEVICE 和 P2_DATE 为空时,我尝试在图表区域设置服务器条件,但在这种情况下该区域不会出现。在这种情况下,我想显示没有值或值“0”的区域图表。

我找到了解决问题的方法。希望对很多人有帮助。

select  
    mso_device  
  , 100 max_value  
  , coalesce(mso_oee, 0) value                                                                                 
from  
    (select  
        mso_device  
      , mso_oee  
    from  
        mes_oee  
    where  
        mso_device = :p5_device  
    and mso_date = to_date(:p5_date, :APP_NLS_DATE_FORMAT)  
    union all  
    select  
        null  
      , null  
    from  
        dual  
    where  
        :p5_device is null  
    or  :p5_date is null)  
ORDER BY 2 DESC;