Oracle 如何在Apex中基于视图/表创建报表/表单页面组合?

Oracle 如何在Apex中基于视图/表创建报表/表单页面组合?,oracle,oracle-apex,Oracle,Oracle Apex,有可能吗?如果有,那么如何创建两个页面(一个报表,一个编辑表单),但以视图为基础创建报表,以表为基础创建编辑表单 我有一个非常复杂的视图,它是不可更新的,所以我需要让编辑表单基于表中的原始数据。这怎么可能呢?首先,您需要创建报表,并将其建立在表的基础上。 然后创建表单 要将它们链接起来,您需要知道表单所基于的表的主键。我假设您的表有一个由1或2列组成的PK,并且您的自动行提取+DML进程使用这个PK。 这是因为PK值构成了报表中的行与表单中的行之间的链接 然后在报告属性中找到“链接列”部分,或者

有可能吗?如果有,那么如何创建两个页面(一个报表,一个编辑表单),但以视图为基础创建报表,以表为基础创建编辑表单


我有一个非常复杂的视图,它是不可更新的,所以我需要让编辑表单基于表中的原始数据。这怎么可能呢?

首先,您需要创建报表,并将其建立在表的基础上。 然后创建表单

要将它们链接起来,您需要知道表单所基于的表的主键。我假设您的表有一个由1或2列组成的PK,并且您的自动行提取+DML进程使用这个PK。 这是因为PK值构成了报表中的行与表单中的行之间的链接

然后在报告属性中找到“链接列”部分,或者如果要将报告中的列用作链接,请转到该列的选项,并在那里找到“链接列”部分。链接必须是“指向自定义目标的链接”。选择图标或定义链接文本。 “报告”属性上的链接意味着您必须在单行-列图标或自定义链接之间进行选择。如果链接已经存在,请在报表查询中创建一个新的空列,并在该列中配置链接。

然后传递用于表单(pk)的表中唯一标识行的值。 例如:

Item 1: Name: "P2_EMPNO" Value: "#EMPNO#"
这是它的要点,也是当您使用向导处理带有报表的表单时,如何生成表单和报表之间的链接

更复杂的情况? 例如,您的PK有两列以上。在Apex 4.1中,您可以根据表的rowid(一个救命符)自动获取行和dml。在这种情况下,您可以考虑在视图中包括表的记录ROWID(当然,它需要在您的视图中被别名)。然后可以将此rowid传递给表单页面上包含该rowid的项目

不在4.1上,或者rowid不是选项,并且PK有两列以上:您需要编写自己的行提取和dml进程,或者使用instead of触发器创建视图。我认为更好的做法是查看表,并将PK列连接到视图中的列。然后,此列可以作为apex生成过程中的PK值。无论哪种方式,您都需要找到一种识别行的方法,并在表单页面上提供正确的获取和处理方法。看

Item 1: Name: "P2_EMPNO" Value: "#EMPNO#"