有没有办法在存在特定区域的 Oracle APEX 中获取页面列表?例如获取包含面包屑或经典报告的所有页面的列表
2 回答
绝对地!事实上,这是 APEX 作为元数据驱动框架的优势之一。转至 App 开发器 > 工作区实用程序 > Application Express 视图。这将为您提供所有可用视图的列表,以运行您所询问的报告类型。Query By Example 页面可能会有所帮助,或者您可以在 SQL Workshop 中开始运行查询:
select application_id,
application_name,
page_id,
page_name,
component_signature
from apex_application_page_regions
where instr(component_signature, 'NATIVE_BREADCRUMB') > 0
其他区域有不同的签名,如 NATIVE_SQL_REPORT(经典报告)、NATIVE_IG(交互式网格)和 NATIVE_IR(交互式报告)。
此外,当您在“应用程序生成器”>“工作区实用程序”中时,在右侧查看更多可能对您有用的“预制”报告。
这是比较容易弄清楚的。您可以访问公共顶点视图,这些视图类似于顶点元数据之上的数据字典。最好的开始方法是通过运行以下查询来检查 apex 用户是谁:
select distinct owner from all_objects where object_name like 'APEX%';
然后使用与您的版本相对应的用户(在我的情况下是 APEX_190100,因为我在 19.1 上)并列出所有顶点视图
select * from all_objects where owner = 'APEX_190100';
该列表并不长,您会很快找到所需的视图。通过 application_id 查询该视图并查找您需要的信息。在你的情况下,这可能是
SELECT * FROM apex_application_page_regions;
面包屑有自己的视图:APEX_APPLICATION_BREADCRUMBS。
您还可以通过应用程序构建器 > 工作区实用程序 > Application Express 视图查看 Application Express 视图列表(和简短描述)