PS_Form个性化复杂需求新增Menu并调用Request(案例)

简介: 2014-06-01 Created By BaoXinjian 一、摘要 因为用户在调用Request时需输入很多参数,经过很多Form页面,如果想打印采购订单,发票,日记账时, 客户会要求在From中新增一个按钮,客户只需按这个按钮即可将采购订单进行输出,系统会自动调取采购订单页面上的数据,无需用户输入,实行自动化,增加用户交互性 一般这种需求有两种实现方式 通过custom.

2014-06-01 Created By BaoXinjian

一、摘要


因为用户在调用Request时需输入很多参数,经过很多Form页面,如果想打印采购订单,发票,日记账时,

客户会要求在From中新增一个按钮,客户只需按这个按钮即可将采购订单进行输出,系统会自动调取采购订单页面上的数据,无需用户输入,实行自动化,增加用户交互性

一般这种需求有两种实现方式

  • 通过custom.pll,用代码进行定制
  • 通过form personalization,用设定进行定制

在调用程式时,一般会用到fnd_request api

  • fnd_request.add_layout: 添加打印文件
  • fnd_request.submit_request: 添加打印数据的并发程式

 

二、案例


需求:客户要求新增一个菜单项,调用打印Order的功能

1. 如何实现分析:Form中新建Menu以运行Request

    (1). 建立Global Parameter<xx_request_id>,并初始化;

    (2). 建立Menu;

    (3). 建立Menu Action, 并调用fnd_request.submit和fnd_request.add_layout;

    (4). 对xx_request_id赋值;

    (5). 建立Message,显示执行成功的信息和request_id;

 

2. 具体操作步骤

Step1. 建立Global Parameter<xx_request_id>,并初始化;

    

Step2. 建立Menu;

       

Step3. 建立Menu Action, 并调用fnd_request.submit和fnd_request.add_layout;

          

 1     ='DECLARE
 2       l_layout BOOLEAN;
 3       l_req_id NUMBER;
 4     BEGIN
 5       DELETE FROM xxont.xxont_4716_order_conf_gt;
 6       l_layout := fnd_request.add_layout( ' || '''XXONT''' ||
 7                                     ',' || '''XXONT0701''' ||
 8                                     ',' || 'NULL' ||
 9                                     ',' || 'NULL' ||
10                                     ',' || '''PDF''' || ');
11       l_req_id := fnd_request.submit_request( ' || '''XXONT''' ||
12                                         ',' || '''XXONT0701''' ||
13                                         ',' || '''''' ||
14                                         ',' || '''''' ||
15                                         ',FALSE' ||
16                                         ',' || ${item.ORDER.HEADER_ID.value} ||
17                                         ',chr(0));
18       COMMIT;
19       INSERT INTO xxont.xxont_4716_order_conf_gt(request_id) VALUES(l_req_id);
20     END'

Step4. 对xx_request_id赋值;

     

Step5. 建立Message,显示执行成功的信息和request_id;

          

 

3. 新知识点


(1). Personalization 控制的level,其function和form的区别

(2). 控制menu出现的block,如是多个block,可用逗号间隔;

(3). fnd_request 中的add_layout 和 submit的应用

 

Thanks and Regards

ERP技术讨论群: 288307890
技术交流,技术讨论,欢迎加入
Technology Blog Created By Oracle ERP - 鲍新建
相关文章
|
5月前
|
存储 运维 数据挖掘
服务器数据恢复-DELL EqualLogic PS存储raid5数据恢复案例
服务器数据恢复环境: 一台DELL EqualLogic PS系列存储,存储中有一组由16块SAS硬盘组成的RAID5。上层是VMFS文件系统,存放虚拟机文件。存储上层分了4个卷。 服务器故障&检测: 存储上有2个硬盘指示灯显示黄色,磁盘出现故障导致存储不可用,存储设备已经过保。 硬件工程师对故障存储中的16块硬盘做了硬件故障检测,发现其中有2块磁盘存在坏道,SMART的错误冗余级别已经超过阈值。
服务器数据恢复-DELL EqualLogic PS存储raid5数据恢复案例
|
搜索推荐 关系型数据库
PS_Form个性化选择Block自动查询和查询条件排序实现(案例)
2014-06-01 BaoXinjian 一、摘要 Form个性化是Oracle比较推荐的对标准Form实现客制化需求的一种方式,本文介绍对Form个性化Block的一些写法 通过个性化对Block操作的案例 打开Form后,自动进行查询 修改某些Block的查询条件和排列顺序 其他案例待续;)   二、案例 - 打开Form后,自动进行查询 1.
1562 0
|
SQL 搜索推荐 关系型数据库
PS_Form个性化标准LOV的替换和数据源追溯分析(案例)
2014-06-01 BaoXinJian 一、摘要 Oracle Lov是Form Builder页面中比较重要的控件,所以对该Lov控件的二次开发、控制和查询异常也是经常遇到问题, 所以个人归类一下 替换标准LOV的query sql 不通过代码查询LOV所引用的具体SQL ...
808 0
|
3月前
|
Linux
百度搜索:蓝易云【Linux系统ps命令:查看正在运行的进程】
通过这些简洁的ps命令用法,你可以方便地查看Linux系统中正在运行的进程信息。
39 1
|
2月前
|
存储 监控 Linux
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 查看当前正在运行的进程信息 ps命令 使用指南
【Shell 命令集合 系统管理 】⭐⭐⭐Linux 查看当前正在运行的进程信息 ps命令 使用指南
46 0
|
5月前
|
安全 Linux 应用服务中间件
linux(三十一)系统信息命令ps查看系统进程
linux(三十一)系统信息命令ps查看系统进程
160 1
|
9月前
|
iOS开发
iOS 逆向编程(十三)PS命令获取进程PID与名称(Process Status)
iOS 逆向编程(十三)PS命令获取进程PID与名称(Process Status)
138 0
|
7月前
|
Linux Apache
百度搜索:蓝易云 ,Linux ps命令详解,Linux查看进程。
通过使用ps命令,您可以查看当前运行的进程,并获取有关进程的详细信息。根据您的需求,可以使用不同的选项来满足特定的进程查看和筛选要求。
730 0
|
14天前
|
Linux
Linux系统ps命令
这些是一些常见的 `ps`命令选项和用法,用于查看系统中运行的进程及其相关信息。您可以根据需要选择合适的选项以满足您的任务要求。
32 0