我们尝试使用两种不同的方法在Oracle APEX(v.20.2(交互式报告中使用(ORDS(REST服务:
- 使用REST数据源,如共享组件中所定义
- 配置为Oracle REST数据服务
- 使用以下格式的本地数据库源调用:
select * from json_table( apex_web_service.make_rest_request( p_url =>
等等。(使用WITH_PLSQL提示(
这两种方法都很好,但问题是当使用更干净的方法1时,与方法2相比,"操作"菜单包含的选项更少,例如缺少"分组依据"。
由于ORDS以页面为单位返回其数据,APEX默认情况下假设交互报表呈现时并非所有数据都可用(只有在报表页面上实际看到的行(。因此,需要访问所有数据的报告选项被禁用。
要改变这一点,请执行以下操作:
- 在共享组件中,导航到您的REST数据源
- 编辑";获取";(获取行(操作
- 启用允许获取所有行开关
对于正常的报表视图,行为不会改变;APEX只会根据显示报告页面的需要从ORDS中获取行。但现在,"图表"one_answers"分组依据"选项将出现-如果您配置了Group By,APEX可能会执行多个HTTP请求,以从REST API获取所有所需的行。因此,要小心REST服务可能返回大量行。。。
希望这能帮助