oracle 制作具有文件夹(folder)功能的form

34 篇文章 1 订阅

感言: 之前就想整理一下制作folder的方法了,但好久没有做form了,最近在项目上开发较多,需要做一些form就随便整理一下发出来与大家共享,给新人做一些范例!^_^

 

制作方法(举例说明):

实例说明: 制作一个查询应收收款信息的界面,界面信息如下图

  oracle <wbr>制作具有文件夹(folder)功能的form

实现方法:
1. 打开 Oracle 模板 Form: TEMPLETE.fmb 做为开发的基础,并将 Form Module 名改为 CUXCASHINFO
2. 在 bloack 中填加一个名为 CASH_INFO 的 Block,其主要信息用户需要看到的收款信息
3. 对此 block 与其内的 item 项进行套用 subclass infomation
4. 打开 Oracle 标准 Form APPSTAND.fmb
5. 将其 Object Groups 中的 "STANDARD_FOLDER" 拖到 CUXCASHINFO 下的 Object Groups 中,如果正确会在此 form 中自动生成一些与 folder 有关的 Block、Canvases等
6. 查看 CUXCASHINFO 中是否有自动加载了名为 APPFLDR 的 Attached Libraries,如果没有需要手工加载,名为 APPFLDR.pll
7. 制作 PROPMT BLOCK,将 BLOCK CASH_INFO 复制一份,将复制出来的的 block 重命名为 CASH_INFO_PROPMT
8. 设置 Block CASH_INFO_PROPMT 属性:
     Subclass Infomation: BLOCK
     Number of Records Displayed: 1
     Show Scroll Bar: No
9. 删除 Block CASH_INFO_PROPMT 中不需要显示的 Item
10. 向此 Block 中填加 6 个 Item,详细如下:
       Item Name           Subclass Infomation
       FOLDER_OPEN       FOLDER_OPEN
       FOLDER_TITLE     DYNAMIC_TITLE
       FOLDER_DUMMY     FOLDER_DUMMY
       ORDER_BY1           FOLDER_ORDERBY
       ORDER_BY2           FOLDER_ORDERBY
       ORDER_BY3           FOLDER_ORDERBY
11. 设置此 Block 中显示 Item 的 Initial Value,此属性为该项的显示名称
12. 新建一个 Window,命名为: CASH_INFO_W
13. 新建两个 Canvases
       Canvases Name               Subclass Infomation
       CASH_INFO_C                    CANVAS
       CASH_INFO_SC                 CANVAS_STACKED
14. 页面布局,Block CASH_INFO(滚动条除外) 与 CASH_INFO_PROPMT(除了后加的6个Item项)都需显示在 Stacked Canvas 上, 滚动条与 6 个 Item 需显示在主画布上.
15. 增加相应的 Trigger:
       Form level:
       1). FOLDER_ACTION         app_folder.event(:global.folder_action);
       2). WHEN-NEW-FORM-INSTANCE         app_folder.define_folder_block('CUXRECAORD',   --Form Moudle
                                                                                                                                   'CASH_INFO',      --Block
                                                                                                                             'CASH_INFO_PROPMT',  --Propmt Block
                                                                                                                              'CASH_INFO_SC',   --Stacked Canvas
                                                                                                                              'CASH_INFO_W',     --Windows Name
                                                                                                                              null);
       Block Level:是指数据 Block,而非 Propmt Block,本例指的是 CASH_INFO Block
       1). PRE-QUERY             app_folder.event('PRE-QUERY');
       2). WHEN-NEW-BLOCK-INSTANCE       app_folder.event('WHEN-NEW-BLOCK-INSTANCE');
       3). PRE-BLOCK             app_folder.event('PRE-BLOCK');
       4). POST-BLOCK           app_folder.event('POST-BLOCK');
       5). KEY-ENTQRY           app_folder.event('KEY-EXEQRY');
       6). KEY-NEXT-ITEM     app_folder.event('KEY-NEXT-ITEM');
       7). KEY-PREV-ITEM     app_folder.event('KEY-PREV-ITEM');
16. 上传、编译、安装 Form
17. 看结果喽!^_^
 
大家只要照着做,相信很快就可以做出来,很简单!^_^

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值