首页 > 开发 > 综合 > 正文

一个小技巧:工资超过5000元的员工,用红色指示

2024-07-21 02:35:55
字体:
来源:转载
供稿:网友

  需求:
  在很多系统里面要求对不同的状态采取不同的颜色给用户提示.
  例如: 有一张工资单,当某个员工的工资超过5000时,用户需要系统能用红色来指示员工的姓名和工资.
  做法:
  我们新做一张form,按常规建好block和item并建一个visual attributes v1(background color = red).在相应的block level上新建一个post-query trigger并编写代码如下:
  ----------------------
  ...
  -- 假如工资(block.item1)大于5000
  if block.item1 > 5000 then
           -- 指示出相应的员工姓名(block.item2)
  set_item_instance_PRoperty('block.item2',To_Number(:SYSTEM.TRIGGER_RECORD),VISUAL_ATTRIBUTE,'v1');
           -- 指示出相应的工资(block.item3)
           set_item_instance_property('block.item3',To_Number(:SYSTEM.TRIGGER_RECORD),VISUAL_ATTRIBUTE,'v1');
  end if;
  ------------------------
  compile and run the form.查询员工工资时,大于5000的员工信息被系统用红色背景指示.
  
  题外思考:  1.朋友们想一想,为什么不用set_item_property build-in procedure呢?
           2.:system variables都有哪些内容呢?
  参考: form online help document and http://www.tek-tips.com
  
  set_item_property  会整行变成红色,而不是工资超出5000元的员工变红色。
  
  其它系统变量 ,可以在forms的help里,输入 system 就可以查出。
  一个小技巧:工资超过5000元的员工,用红色指示
  set_item_property:假如是表格的话不能实现你说的功能。
         SYSTEM.BLOCK_STATUS
  SYSTEM.COORDINATION_OperaTION 
  SYSTEM.CURRENT_BLOCK 
  SYSTEM.CURRENT_DATETIME 
  SYSTEM.CURRENT_FORM
  SYSTEM.CURRENT_ITEM 
  SYSTEM.CURRENT_VALUE 
  SYSTEM.CURSOR_BLOCK 
  SYSTEM.CURSOR_ITEM 
  SYSTEM.CURSOR_RECORD 
  SYSTEM.CURSOR_VALUE 
  SYSTEM.DATE_THRESHOLD* 
  SYSTEM.EFFECTIVE_DATE* 
  SYSTEM.EVENT_WINDOW
  SYSTEM.FORM_STATUS
  SYSTEM.LAST_QUERY 
  SYSTEM.LAST_RECORD 
  SYSTEM.MASTER_BLOCK 
  SYSTEM.MESSAGE_LEVEL* 
  SYSTEM.MODE 
  SYSTEM.MOUSE_BUTTON_PRESSED 
  SYSTEM.MOUSE_BUTTON_SHIFT_STATE 
  SYSTEM.MOUSE_ITEM 
  SYSTEM.MOUSE_CANVAS 
  SYSTEM.MOUSE_X_POS 
  SYSTEM.MOUSE_Y_POS 
  SYSTEM.MOUSE_RECORD 
  SYSTEM.MOUSE_RECORD_OFFSET 
  SYSTEM.RECORD_STATUS 
  SYSTEM.SUPPRESS_WORKING* 
  SYSTEM.TAB_NEW_PAGE
  SYSTEM.TAB_PREVIOUS_PAGE
  SYSTEM.TRIGGER_BLOCK 
  SYSTEM.TRIGGER_ITEM 
  SYSTEM.TRIGGER_RECORD 
  FW:没错,set_item_property只能使整行变红.
  通过这个例子,能学到关于set_item_property与set_item_instance_property的区别以及SYSTEM变量的用法.
  呵呵,大家很积极.希望能更多的人参与到一些比较实际的技术讨论中来,这也是我发这篇文章的用意.

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表