【问题标题】:cross-conditional color formatting based on user input in Oracle Apex基于 Oracle Apex 中用户输入的跨条件颜色格式
【发布时间】:2021-04-13 01:13:07
【问题描述】:

我目前正在尝试向现有的 Oracle Apex 应用程序 (Apex) 添加功能。我已经在这里环顾四周,找到了一些指南,但没有一个专门帮助我解决这个问题,而且我是 Oracle Apex 的新手,我提出这个问题并感谢任何帮助:

我如何根据页面上的另一个项目对返回给用户的文本字段的文本进行交叉颜色格式化(参见下面的链接) 更多或不太像成功/失败消息。

highlighted succes/failure-message-text

成功/失败消息中的内容从存储过程返回,该过程在用户扫描输入条码后运行(:P1_CANN,文本字段,标签:'Scanneingabe')。存储过程运行后返回两个值:成功/失败消息的内容(:P1_CANNBACK,仅显示页面项)和扫描/失败的值1/0(:P1_CSS,隐藏页面项)。 根据 :P1_CSS 返回的值,我想相应地为成功/失败消息的文本着色,例如如果返回值为 1,则为绿色,如果为 0,则为红色。 p>

我使用 Oracle 12c 作为数据库。存储过程运行一个简短的 PL/SQL 代码:

 *#OWNER#.DOMENICO_SCANN_ENT(PSCANN => :P1_CANN, pr => :P1_CANNBACK, pr1 => :P1_CSS);*.

【问题讨论】:

    标签: oracle plsql oracle-apex oracle12c


    【解决方案1】:

    这可以使用 css 来实现。有不同的方法可以实现这一点。一种方法是:

    1. 创建一个页面项以包含类名,例如 P1_CANNBACK_CLASS
    2. 在调用存储过程后创建一个计算来设置 P1_CANNBACK_CLASS 的值。 PL/SQL 代码类似于
    CASE :P1_CANN WHEN 1 THEN 'u-success-text' WHEN 0 THEN 'u-danger-text' END
    
    1. 在页面项目 P1_CANNBACK 上,将 css 类设置为 &P1_CANNBACK_CLASS.

    请注意,我使用了 apex 提供的 css 类(在此处记录:https://apex.oracle.com/pls/apex/apex_pm/r/ut/color-and-status-modifiers)。您可以使用您的样式,但是您必须在页面属性或静态文件中定义 css 类。我在一个 20.2 的实例上测试了这个。

    【讨论】:

    • 所以我创建了一个页面项目来包含类名并将其命名为 P1_CANNBACK_CSS(步骤 1)。然后,我通过右键单击 P1_CANNBACK_CSS 创建了一个计算并将点更改为 after region 以及类型为 pl/sql expression 并添加case :P1_CSS when 1 then 'u-danger-text' when 0 then 'u-success-text' end(第 2 步)。我被卡住的地方是第 3 步在页面项目 P1_CANNBACK 上找到将 CSS 类设置为 &P1_CANNBACK_CSS 的位置。可能是因为我的内容主体是静态内容
    • 更新了答案。
    • 感谢您用图片更新您的答案 :) 我知道在页面项目中设置 CSS 类的位置。单击上述任何页面项目时,我在页面项目上找不到“CSS 类”,但通过更改为 组件视图 找到了解决方法。在那里,我选择了P1_CANNBACK 并在Column CSS Classes 中添加了&P1_CANNBACK_CSS.。但是我在测试时无法更改 P1_CANNBACK 的文本颜色。我做错了什么?
    • 您必须使用 chrome 开发人员工具进行调试,以了解为什么它没有被应用。如果您在 apex.oracle.com 上整理了一个示例并授予我访问权限,我可以为您查找。
    • 当然,我在工作中与我的上司核实过,出于安全原因,我不允许让你在工作区“单独”。不过,我有 2 条建议供您帮助我;我们可以在您选择的日期和时间虚拟见面,我使用 MS-Teams-Meeting/Zoom,或者我可以让您访问工作区(在 apex.oracle.com 上),我将应用程序导入到该工作区但没有数据库连接。之后,我会尽快将解决方案发布到该线程。我想,简单地导出应用程序并将其交给您也无济于事。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多