交互式报告-排序和过滤格式的列

时间:2019-11-18 11:58:42

标签: oracle-apex oracle-apex-18.2

我有一个简单的视图,其中将持续时间(以秒为单位)作为一个数字,将格式化的字符串保留为另一列

数字可以是负数,并且可以像这样“格式化”:

-60-00h 01m 00s

60+00h 01m 00s

以此类推。...

为了对数据进行排序,我使用来自字符串列的文本(静态ID)格式化了交互式报表中的数字列。

到目前为止,一切都很好。 (我现在可以按此数字/列类型进行排序)

但是我无法使其将过滤器设置为字符串,然后使用LOV的返回值来设置过滤器...

关于如何实现此目标的任何想法?

我需要在列的后端编号的所有东西来进行排序/过滤,并在列的前端使用实际的字符串作为显示和过滤。

谢谢您的帮助。

我正在使用APEX 18.2

示例:

“测试”表分为两列:

Duration_Number(Number)和Duration_String(varchar)

在此表中例如像这样的3个条目:

  • 120,“ + 0h 02m 00s”
  • -60,“-0h 01m 00s”
  • 60,“ + 0h 01m 00s”

交互式报告应仅显示字符串,但应能够按相应的数字排序!

为了对该列进行排序,您可以使用#DURATION_STRING#ID格式化DURATION_NUMBER列(在Column Formatting => HTML Expression下) 这样,您现在就可以正确对其进行排序了。

但是过滤器(下拉列表)仍显示不同的DURATION_NUMBER列表。

因此,我创建了一个以DURATION_STRING作为显示值和DURATION_NUMBER作为返回值的LoV。 过滤器现在已填充字符串,但是过滤器不再起作用,因为返回值(数字)与格式化的列不匹配。

编辑: 我只是注意到,从LoV返回的值根本没有关系,因此无法自定义排序/过滤列?

Edit2: 我也尝试过基于LoV的纯文本列,对此没有运气...

0 个答案:

没有答案