【问题标题】:Passing more than 3 items in a reports column link在报告列链接中传递超过 3 个项目
【发布时间】:2017-12-22 04:11:26
【问题描述】:

我有一个列出学生的报告,我想要一个用于编辑学生的列。我已经按照这个答案这样做了:

How do you add an edit button to each row in a report in Oracle APEX?

但是,我似乎只能通过 3 个项目,并且没有添加更多项目的选项。我截图解释更多:

我需要传递 8 个值,我该怎么做?

谢谢!

【问题讨论】:

  • 为什么需要传递 8 个值?这个清单是我假设的交互式报告?

标签: oracle oracle-apex


【解决方案1】:

通常,为此您只需要传递主键列(此处仅显示为#RECORD_NUMBER#)。然后,您将人发送到的页面将仅基于主键查找加载表单。如果多个用户正在使用此应用程序,您可能希望编辑表单始终检索数据库的当前值,而不是当特定人员运行某个报告时屏幕上发生的内容。

【讨论】:

    【解决方案2】:

    将目标类型更改为 URL。 Apex 会将已有的内容格式化为一个 URL 文本字段,该文本字段神奇地出现在 Tem3 和 Page Checksum 之间。 您需要做的就是在 URL 的适当位置添加新项目和值。

    【讨论】:

      【解决方案3】:

      我找到了一种解决方法,至少它对我的场景很有用。 我有一个 IR 页面,查询返回 4 列,比如说:ID、DESCRIPTION、SOME_NUMBER、SOME_NUMBER2。
      ID NUMBER(9)、描述 VARCHAR2(30)、SOME_NUMBER NUMBER(1)、SOME_NUMBER2 NUMBER(3)。 我所做的是,以这种方式设置项目:
      P11_ITEM1-->#ID#
      P11_ITEM2-->#DESCRIPTION#
      P11_ITEM3-->#SOME_NUMBER##SOME_NUMBER2#

      之前的数据已发送到第 11 页。
      在第 11 页中,所有项目都是仅显示项目。
      而 P11_ITEM3 实际上收到了两个连接的值。
      例如,调用页面的列 SOME_NUMER=4 和 SOME_NUMBER2=150
      因此,在第 11 页第 11 页中,P11_ITEM3 显示 4150
      在第 11 页中,我创建了一个 Before Footer 进程(pl/sql 表达式)
      设置新项目,例如 P11_N1 作为源 SUBSTR(P11_ITEM3,1,1)
      和项目 P11_N2 作为源 SUBSTR(P11_ITEM3,2,3)
      因此,我从调用 IR 页面中获得了具有相应值的那些项目。

      我没有只为新的查找访问传递主键的原因是因为我不想强调数据库执行新的查询,因为所有数据都已经加载到页面项目中。我已经做了 20 年的 Oracle DBA,我知道如果您已经在其他地方获得了信息,则无需重新执行查询。

      【讨论】:

        【解决方案4】:

        对于自称为 RAD 工具的产品来说,这些变通方法不是很有用。 只需在 select 语句中包含一个单引号单词(Select col1, 'Randomword', col2 from table 1;) 然后将该列定义为链接和宾果游戏!超过 3 个项目可供选择。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-12-31
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多