• FORM开发两种方式实现动态LIST


    方法一:常规的,也是网上比较常见的

    1.将目标ITEM的子类信息设置为List,不需要添加列表中元素,不需要初始值。
    2.
    新建一个Procedure,代码如下:

    PROCEDURE basis_list(event IN VARCHAR2) IS
      --游标中定义List中显示的值和数据库值
      CURSOR c_list IS
        SELECT lookup_code, meaning
          FROM fnd_lookup_values_vl
         WHERE lookup_type = 'HSS_QT_BASIS';
      i         NUMBER := 0;
      l_value   VARCHAR2(10);
      l_meaning VARCHAR2(20);
    BEGIN
      IF event = 'INIT' THEN
        --赋值前,清空List中现有的值
        clear_list('QT_NAME.BASIS');
      
        FOR r_list IN c_list LOOP
          l_value   := r_list.lookup_code;
          l_meaning := r_list.meaning;
          i         := i + 1;
          -- add_list_element有4个参数依次为,Item名称,列表中值的序列,显示的值,数据库值
          add_list_element('QT_NAME.BASIS', i, l_meaning, l_value);
        END LOOP;
      
      END IF;
    END basis_list;
    

    3.在WHEN-NEW-FORM-INSTANCE中调用procedure做初始化

    方法二:使用记录组

    1.创建过程

    PROCEDURE create_index_method_list(item_name in varchar2,
     record_group_name in varchar2) IS--
      i number;	  
    BEGIN 
      i := populate_group(record_group_name);
      clear_list(item_name); 
      if i = 0 then      
        populate_list(item_name, record_group_name);  
      end if;
    END;
    
    2.WHEN-NEW-FORM-INSTANCE中调用procedure做初始化

  • 相关阅读:
    async 和 await
    C#中lock死锁
    Attribute特性
    数据库优化
    EF(ORM)
    依赖注入
    面向接口编程
    EF乐观锁与悲观锁
    为什么要使用RESTFUL风格?
    cloudsim 3.0.3下载与安装教程
  • 原文地址:https://www.cnblogs.com/wanghang/p/6299448.html
Copyright © 2020-2023  润新知