`

做FOLDER类型的FORM时需要添加的几个特殊ITEM的详解

 
阅读更多
疑问
在folder的开发中,我们需要在数据块的PROMPT块上添加6个folder特有的Item,分别是:
l FOLDER_OPEN
l FOLDER_TITLE
l FOLDER_DUMMY
l ORDER_BY1
l ORDER_BY2
l ORDER_BY3
这六个Item有什么用,在form中如何体现的呢? 在一般的主从数据块中,主块和从快都是用folder开发,那么主块该如何设置?在报表中,能不能及时的看到自己报表的样子,比如,点击按钮之后,就看到自己报表的输出是什么?
探究
上面的问题是在本周的form练习中遇到的,这里把自己查阅的相关资料以及结果给大家分享一下。
l FOLDER_OPEN
顾名思义,这是打开folder的,我们在form上,看到一个打开的按钮



这个就是FOLDER_OPEN在form上的体现。可以参照folder的开发指南设置该Item的属性。
l FOLDER_TITLE
Folder开发的好处就是允许用户根据自己需要设置界面,比如修改标题
列,调整列的宽度以及顺序等,同时还能够允许用户保存这些修改,下次能够代开修改后的内容,FOLDER_OPEN的作用就能够体现了。如果我们保存了一个folder,那么可以通过文件夹工具打开folder。



这里包含了代开,关闭保存等。还有控制Item在form上的位置等。我们打开一个folder。




需要让我们选择folder的标题,这个标题是在保存的时候输入的。FOLDER_TITLE即使这个标题。打开之后如下:



一般在form开发的布局上将FOLDER_OPEN和FOLDER_TITLE放在一起,如上图,test_folder是folder的名称。
l FOLDER_DUMMY
这个Item的是需要显示出来的,画布选择“TOOLBAR”。如果没有这个
Item,或者Item的属性错误,或者Item的名称错误folder运行都不成功。
如果我把form中的FOLDER_DUMMY的名字 改成FOLDER_DUMY,那么运行form将出现如下的错误。这里这个item的作用应该是讲主数据块于prompt数据块相互关联的作用。具体有待查证。



l ORDER_BY1、ORDER_BY2、ORDER_BY3
这三个Item是用来对folder中列的数据进行排序的。我们可以通过如下
的方式查看。







可以看到,一共有三个项供我们选择排序。分别对应ORDER_BY1、ORDER_BY2和ORDER_BY3。
对应单记录的folder,我们不需要这三个排序项,因为单记录的folder并没有需要排序的部分。




当光标移到这个folder上的时候,排序功能不可用。
 
l 主从数据块
主从数据块的folder中,主块是一个单记录的folder。在单记录的folder
中:
Ø 数据项布局和普通的单记录form开发一样,需要开发人员自己完成。
Ø 同样也需要添加对应prompt数据块,需要将显示在form上Item添加到prompt数据块中。Prompt数据块中需要包含folder特有的几个Item,如FOLDER_OPEN等。
Ø Prompt数据块中数据项对应的item的位置不需要特别的区关注其位置,系统会自动布局。
Ø 在prompt数据块中,不需要前面提到的ORDER_BY1、ORDER_BY2和ORDER_BY3,因为单记录的folder中,并没有排序的依据。
同时,一般主从数据块的相关设置也是需要的。比如禁止从块的操作等。
在主块的关系中,



这些属性是需要的,因为我们的主从数据块主块和从块的关系都比较严格,从快不能单独的进行修改。
l 及时输出报表
这个是我自己想到的,没什么实际意义。比如在这里的点击Print BI之后,
看到输出:




这里参照了标准的功能,写一下我的实现过程吧。
Step 1:
在form中添加一个标准库:FNDCONC



Step 2:
修改触发器:WHEN-BUTTON-PRESSED-
declare
l_header_id number;
l_request_id number;
l_is_finished boolean default false;
l_interval     number default 60;
l_max_wait     number default 0;
l_phase        varchar2(30);
l_status       varchar2(30);
l_dev_phase    varchar2(30);
  l_dev_status   varchar2(30);
l_message      varchar2(30);
begin
l_header_id := :HEADER.T_HEAdER_ID;
--提交并发请求
l_request_id := cux_submit_request.submit_bi_request(p_header_id =>l_header_id );
if l_request_id = 0 then
fnd_message.debug('请求发生错误');
else
fnd_message.debug('请求已经提交,请求ID为:'||l_request_id||',正在输出文件,请稍后...');
end if;
--等待请求完成
  l_is_finished := fnd_concurrent.wait_for_request(request_id=>l_request_id,
                                                   interval =>l_interval,
                                                   max_wait => l_max_wait,
                                                   phase=> l_phase,
                                                   status=>l_status,
                                                   dev_phase=>l_dev_phase,
                                                   dev_status=>l_dev_status,
                                                   message =>l_message);
  if l_is_finished then
editor_pkg.report(l_request_id, 'Y');
end if;
end;

上面的两步即可完成。
但是补充说一下,这个没什么实际的意义,因为并发请求在运行的时候,有时候非常的慢,如果用户等着跑玩的话,体验并不好。
我点击之后的效果如下:




要跑很久才能看到输出。所以不值得提倡。
  • 大小: 301 Bytes
  • 大小: 4.1 KB
  • 大小: 7 KB
  • 大小: 790 Bytes
  • 大小: 4.3 KB
  • 大小: 9.8 KB
  • 大小: 5.3 KB
  • 大小: 8.1 KB
  • 大小: 9.1 KB
  • 大小: 18.1 KB
  • 大小: 4.4 KB
  • 大小: 15.1 KB
分享到:
评论

相关推荐

    FORM 开发中FOLDER(文件夹)的使用

    FORM 开发中的 FOLDER(文件夹)功能详解 ...在开发时,我们需要注意 FOLDER 功能的基本概念、模板制作、FORM 级触发器、Attached Libraries、Object Groups、模板例子的制作、触发器和数据项等几个方面。

    FORM开发FOLDER参考实例

    在Oracle Forms开发中,"FORM开发FOLDER参考实例"是一个教程,旨在帮助开发者实现类似Oracle标准Folder的功能。这个过程涉及到创建新的Form,添加必要的对象,调整触发器和程序单元,以及集成Oracle标准Form中的组件...

    oracle form folder功能步骤

    在这个 Form 中,我们需要添加 Form Objects,包括一个 Window,MY_FOLDER 一个 Canvas,MY_FOLDER 一个 Block,MY_FOLDER(数据块工具生成也可以)。 步骤 1.1.1:修改 Trigger 和 Program Units 在 Form Level ...

    EBS开发(form builder)中使用文件夹(folder)功能的步骤

    EBS开发(form builder)中使用文件夹(folder)功能的步骤 ,比较详细

    TC创建文件夹,item,form的例子

    创建Item时,需要指定其类型、属性和版本信息。Item可以有多个版本,每个版本代表了该实体在不同时间的状态。在TeamCenter中,可以通过item的属性来记录其详细信息,并且可以与其他item建立关联关系,实现复杂的网络...

    ORACLE_EBS_FOLDER入門與提高.pdf

    2. **添加Folder块Item**:向Folder对象中添加所需的Item,即要显示的数据字段。 3. **编写Folder块级触发器**:为了实现更多的定制功能,需要编写相应的触发器代码。 4. **创建提示块**:为用户提供交互界面,允许...

    文件加密软件FOLDER

    在使用文件加密软件时,用户需要注意以下几点: 1. 密码管理:选择强密码,不要使用容易被猜到的密码,并妥善保存和保护密钥。 2. 安全更新:定期更新软件以获取最新的安全补丁,防止因软件漏洞被攻击。 3. 数据备份...

    kill_folder 专杀

    "kill_folder 专杀"工具是一款专门针对名为"kill_folder"的文件病毒设计的安全软件。在深入了解这个工具之前,我们首先要理解什么是文件病毒以及它如何影响计算机系统。 文件病毒是一种恶意软件,它会附着在可执行...

    文件夹加密Folder Locker.zip

    《文件夹加密技术详解——以"Folder Locker"为例》 在数字时代,数据安全成为我们生活中不可或缺的一部分。无论是个人隐私还是商业机密,都需要得到妥善的保护。文件夹加密技术应运而生,它为我们的数据披上了一层...

    Oracle Form开发介绍详细文档

    在FOLDER_PROMPT_MULTIROW中,你需要配置每个Folder字段的显示,这通常涉及到Display Item属性的设置。此外,为了实现排序,需要创建FOLDER_ORDER_BY,这可以通过按钮(Order_by1, Order_by2等)实现。 完成Stack ...

    FORM个性化学习笔记.doc

    在学习FORM个性化时,需要注意以下几点: 1. 赋值及条件的写法 学习者需要掌握赋值及条件的写法,以便更好地设计和开发FORM。 2. SPEL SPEL是FORM个性化中的一个重要概念,用于定义FORM的逻辑和行为。学习者需要...

    foldersniffer

    使用foldersniffer的过程大致分为以下几个步骤: 1. 下载并安装相应版本的foldersniffer软件,确保其与您的操作系统兼容。 2. 启动软件,界面通常会提供一个文件或文件夹路径输入框,你可以输入要扫描的根目录。 3....

    New folder (1)_newfolder_NEW_

    【标题】"New folder (1)_newfolder_NEW_" 暗示了这是一个新的文件夹,可能包含了一系列经过整理或更新的文件。在IT领域中,文件夹命名通常是为了便于管理和识别,尤其是当它带有"(1)"这样的后缀时,这可能是原始...

    folder-lock6 注册码

    序列号是一串由字母和数字组成的代码,用于唯一标识一个软件的合法副本。在给定的例子中,序列号为“F6-20100504-1-397343”。这通常包含以下信息: - **F6**:表示该序列号对应的是 Folder Lock 6 版本。 - **...

    folder-lock 7.2.2文件加密软件

    Folder Lock 是一个对所有数据的安全性需求的全套解决方案。它可以让你保持多种方式保护您的个人档案,在PC和便携式硬盘,并提供可选的备份在线存储受保护的文件 。Folder Lock 7安全工具的完美结合,让您加密备份您...

    文件夹嗅探器[Folder Sniffer] (恢复文件版)

    2. **隐私保护**:对于需要检查电脑上是否有隐藏文件或恶意加密活动的用户,Folder Sniffer 是一个有效的检查工具。 3. **技术支援**:IT专业人员在为客户解决数据丢失问题时,可以利用此工具来寻找可能被隐藏或...

    文件加密管理Anvi Folder Locker.rar

    这是一张包含解锁信息的特殊光盘或USB设备,当忘记密码时,可以依靠恢复磁盘重新获取访问权限,避免了数据丢失的风险。 总的来说,Anvi Folder Locker是一款实用的文件加密管理工具,无论是个人用户还是小企业,都...

    Folder Lock文件加密

    Folder Lock 可以帮助你将重要的文件,文件夹,图片,文档,多媒体文件或者任意类型的文件进行加密隐藏处理或者加上访问控制密码,加密速度飞快,对1GB的数据进行处 理也只需要很短的几秒钟的时间!但只能将你的保密资料...

    Folder Size 2.1 Folder Size 2.1

    Test Folder Size 2.1 Folder Size 2.1

    FolderSniffer文件夹嗅探器

    这款工具的特性包括以下几个方面: 1. 实时监控:FolderSniffer能够实时监测指定文件夹及其子文件夹下的所有文件活动,包括创建、修改、移动和删除等事件,确保用户不会错过任何重要的系统变动。 2. 绿色软件:...

Global site tag (gtag.js) - Google Analytics