Oracle APex根据条件更改列中的按钮

1l5u6lss  于 2023-10-16  发布在  Oracle
关注(0)|答案(1)|浏览(149)

我有一个IG,有一个叫做验证的列。
IG查询:

select validated, emp_id, emp_name, emp_designation,emp_hier from employees;

我还有一张table:

select  emp_id, emp_name, emp_designation,emp_hier from employee_admin;

我需要比较两个表,如果

select  emp_id, emp_name, emp_designation,emp_hier from employees;
minus
select  emp_id, emp_name, emp_designation,emp_hier from employee_admin;

返回0行,则按钮颜色应为绿色,否则为红色。
已验证的是链接列。
我还有一个VALID_BUT隐藏列,它使用Link属性链接到link列:

class="&VALID_BUT"

我在哪里以及如何添加条件,使按钮改变颜色?

ugmeyewa

ugmeyewa1#

在IG的初始化代码上:

function(options) {
    options.defaultGridColumnOptions = {
        cellCssClassesColumn:"virtual_color_column"
    }
    return options;
}

然后在IG上创建一个名为“virtual_color_column”的新虚拟列。作为本专栏的来源,用途:

declare
  v_count number;
begin
  --add your where conditions to the query accordingly
  select count(1)
  into v_count
  from employees 
  where emp_id not in (select emp_id from employee_admin);

  select 
    case when v_count > 0 then 'RED' 
      else 'GREEN' 
    end as virtual_color_column 
  from dual;
end;

最后,在页面的内联CSS部分,定义类:

.RED{ 
    background-color: red;
}

.GREEN{ 
    background-color: green;
}

相关问题