目录

参考

提交请求

取消请求

提交请求集


参考

Extend Oracle ERP to Preview Report Output and enable Email - Simple Talk

https://support.oracle.com/epmos/faces/DocumentDisplay?id=221542.1&displayIndex=1&_adf.ctrl-state=tfx6dt3x8_176&_afrLoop=422629940422177

提交请求

EBS提交请求主要用到以下api

fnd_global.apps_initialize:初始化用户、职责环境变量

fnd_request.set_print_options:设定报表打印格式,如果只有一种格式可以不使用

fnd_request.submit_request:提交请求,会返回请求id,如果返回0则请求提交失败

第一个参数:请求应用的简称

第二个变量:请求的简称

第三个变量:置空

第四个变量:请求开始时间

第五个变量:是否作为子请求提交,该请求如果是被其它请求调用设为TRUE,否则为FALSE

第六个以后的变量:请求提交的变量,如果后面没有了使用chr(0)作为结尾。

fnd_concurrent.wait_for_request:循环查询请求执行情况,参数会设定循环此时和间隔时间。

在确认请求完成后,会返回请求执行结果状态,如果使用form开发,可以在form中继续调用程序展示报表或继续程序。

PROCEDURE Prc_Do_Price_Request(Prm_User_Number IN VARCHAR2,Prm_Appcode     OUT NUMBER,Prm_Appmsg      OUT VARCHAR2) ISe_Exception EXCEPTION;Success        BOOLEAN;v_Request_Id   NUMBER;v_Phase        VARCHAR2(30);v_Status       VARCHAR2(30);v_Dev_Phase    VARCHAR2(30);v_Dev_Status   VARCHAR2(30);v_Message      VARCHAR2(1000);v_Request_Flag BOOLEAN;v_Start_Time   VARCHAR2(30);v_User_Id      NUMBER;
BEGINPrm_Appcode := 0;v_User_Id   := Fnd_Get_User_Id(Prm_User_Number);--初始化设置  Fnd_Global.Apps_Initialize(v_User_Id, --用户ID  g_Resp_Id, --责任ID  g_Resp_Appl_Id); --应用ID  --设置打印参数  Success := Fnd_Request.Set_Print_Options(g_Printer, g_Style, g_Copies);--显示设置l_Add_Layout := Fnd_Request.Add_Layout(Template_Appl_Name => 'XX',Template_Code      => 'XX_DEPOT_RMA',Template_Language  => 'en', --Use language from                   template definitionTemplate_Territory => 'US', --Use territory from template definitionOutput_Format      => 'PDF' --Use output format from template definition);--发送邮件l_Add_Delivery := Fnd_Request.Add_Delivery_Option(TYPE        => 'E',p_Argument1 => 'Return Material Authorization (RMA) for order#' ||p_Order_Id, -- Email Subjectp_Argument2 => 'admin@red-gate.com', -- From Addressp_Argument3 => p_Email, -- To Addressp_Argument4 => NULL -- CC email address);IF NOT Success THENRAISE e_Exception;END IF;v_Start_Time := To_Char(SYSDATE, 'DD-MON-YYYY HH24:MI:SS');--调用请求  v_Request_Id := Fnd_Request.Submit_Request('QP', --应用  'QPXVBLK', --程序  NULL, --程序说明  v_Start_Time, --开始时间  FALSE, --是否作为子请求提交,该请求如果是被其它请求调用设为TRUE,否则为FALSE  'PRL', --实体--*--1  NULL, --实体名称--2  NULL, --流程标识--3  NULL, --流程类型--4  'N', --流程父项--5  1, --线程数--6  'N', --派生请求--7  NULL, --请求编号--8  'Y', --打开调试--9  Chr(0)); --结束标识  IF v_Request_Id = 0 THENRAISE e_Exception;ELSECOMMIT;END IF;--等待  v_Request_Flag := Fnd_Concurrent.Wait_For_Request(Request_Id => v_Request_Id, --返回的请求ID  INTERVAL   => 2, --重复检测时间差  Max_Wait   => 0, --最长等待时间,0为一直等待  Phase      => v_Phase,Status     => v_Status,Dev_Phase  => v_Dev_Phase,Dev_Status => v_Dev_Status,Message    => v_Message);IF v_Request_Flag THENIF v_Dev_Status = 'NORMAL' THEN-- OR v_dev_status = 'WARNING'  NULL;ELSERAISE e_Exception;END IF;ELSERAISE e_Exception;END IF;
EXCEPTIONWHEN e_Exception THENROLLBACK;Prm_Appcode := -1;Prm_Appmsg  := '错误提示:导入销售订单时出错!(request)' || SQLERRM;RETURN;WHEN OTHERS THENROLLBACK;Prm_Appcode := -1;Prm_Appmsg  := '错误提示:导入销售订单时出错!(request)' || SQLERRM;RETURN;
END Prc_Do_Price_Request;

取消请求

强制取消请求

UPDATE FND_CONCURRENT_REQUESTS RSET PHASE_CODE      = 'C',STATUS_CODE     = 'D',completion_text = user_id || ' 取消请求。'WHERE R.REQUESTED_BY = :user_idAND PHASE_CODE = 'P'AND STATUS_CODE IN ('I', 'Q')AND (nvl(request_type, 'X') != 'S')--commit

取消代码

DECLAREv_request_id NUMBER;v_message    VARCHAR2(300);V_TRUE       BOOLEAN;--true 成功;false 失败
BEGINfnd_global.apps_initialize(29996, 51714, 555);v_request_id := 3945574;DBMS_OUTPUT.PUT_LINE('TEST BEFORE CANCEL');V_TRUE := fnd_concurrent.cancel_request(Request_Id => v_request_id,Message    => v_message);DBMS_OUTPUT.PUT_LINE('TEST AFTER CANCEL ' || v_message);COMMIT;
EXCEPTIONWHEN OTHERS THENDBMS_OUTPUT.PUT_LINE('TEST AFTER exception');
END;

提交请求集

DECLAREreq_id NUMBER := 0;vresult BOOLEAN;BEGINBEGIN--初始化环境fnd_global.apps_initialize(user_id     => 8856,resp_id     => 20419,resp_appl_id => 0);END;--设置请求集vresult := fnd_submit.set_request_set('CUX', 'FNDRSSUB997');dbms_output.put_line('请求集设置:' || sys.diutil.bool_to_int(vresult));--设置请求集阶段&请求vresult := fnd_submit.submit_program('CUX','CUXBPCDATACLCT','STAGE10','1001','2022-01','BAD',chr(0));dbms_output.put_line('第一阶段第一个请求:' || sys.diutil.bool_to_int(vresult));vresult := fnd_submit.submit_program('CUX','CUXBPCDATACLCT','STAGE10','1001','2022-01','BAD',chr(0));dbms_output.put_line('第一阶段第二个请求:' || sys.diutil.bool_to_int(vresult));vresult := fnd_submit.submit_program('CUX','CUXBPCDATACLCT','STAGE20','1001','2022-01','PPP',chr(0));dbms_output.put_line('第二阶段第一个请求:' || sys.diutil.bool_to_int(vresult));req_id := fnd_submit.submit_set(NULL, FALSE);dbms_output.put_line('req_id:' || req_id);if nvl(req_id ,0) >0 thenDBMS_OUTPUT.PUT_LINE('请求集提交成功:'||req_id);elseDBMS_OUTPUT.PUT_LINE('请求集提交失败!!!');end if ;END;

EBS提交取消请求、请求集程序fnd_request相关推荐

  1. axios delete有请求体吗_封装 axios 取消重复请求

    编者按:本文作者舒丽琦,奇舞团前端开发工程师 在我们web开发过程中,很多地方需要我们取消重复的请求.但是哪种场合需要我们取消呢?我们如何取消呢?带着这些问题我们阅读本文. 阅读完本文,你将了解以下内 ...

  2. 取消一个请求(Cancel)

    CANCEL请求,就像名字所说的,是用来取消客户端发起的上一个请求的. CANCEL请求UAS去终止上一个请求并且对上一个请求产生一个错误的应答.CANCEL对UAS已经给出终结应答的请求无效.所以, ...

  3. 封装 axios 取消重复请求

    编者按:本文作者舒丽琦,奇舞团前端开发工程师 在我们web开发过程中,很多地方需要我们取消重复的请求.但是哪种场合需要我们取消呢?我们如何取消呢?带着这些问题我们阅读本文. 阅读完本文,你将了解以下内 ...

  4. 关于 axios 取消重复请求的分析

    前言 关于取消重复请求,最重要的是这么做的意义,而不在于代码的实现 其实,我觉得,绝大部分能够想到的应用场景,都可以通过防抖.节流方式实现,比如实时搜索,比如重复订单提交.比如上拉获取最新数据等 我们 ...

  5. 记一次解决 Feign 提交批量添加请求收到 400 报错的经历

    上周在实现用 OpenFeign 提交批量添加请求时,遇到一个奇怪的问题,本来 Post 请求的 body 体,因为是批量请求,内容就比较多,准备起来就比较麻烦,仔细检查了很多次,提交时还是各种失败, ...

  6. 使用RBTool自动提交code review请求

    使用RBTool自动提交code review请求 前言 让我们回想一下手工提交review请求的过程: 首先得用 svn diff > filename.diff 生成diff文件. 然后输入 ...

  7. ASIHTTPRequest取消异步请求

    取消异步请求 首先,同步请求是不能取消的. 其次,不管是队列请求,还是简单的异步请求,全部调用[ request cancel ]来取消请求. 取消的请求默认都会按请求失败处理,并调用请求失败dele ...

  8. 取消Ajax请求 || Ajax重复请求问题

    <!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8" ...

  9. 单页面axios_Axios封装之取消重复请求和接口缓存

    在平时的单页面项目里,大家肯定接触过axios库,一个易用.简洁且高效,使用Promise管理异步,告别传统callback方式的http库. 最近有个项目里接口调取的频率比较高,接口队列长,然后等待 ...

最新文章

  1. 【廖雪峰python进阶笔记】类的继承
  2. Landsat 8 OLI_TIRS 卫星数字产品
  3. 201771010125王瑜《面向对象程序设计(Java)》第六周学习总结
  4. python 进程池不足_python 进程池pool简单使用
  5. 手写数字识别中多元分类原理_广告行业中那些趣事系列:从理论到实战BERT知识蒸馏...
  6. git add 所有修改文件_Git 技术干货!工作中quot;Gitquot;的使用实践和常用命令合集!
  7. python读取超大csv
  8. DEV-c++中sort的用法
  9. CUHK Occlusion Dataset(行人检测数据集)转换为YOLO+VOC数据集
  10. python题库填空_Python题库
  11. 计算机组装中如何看硬件型号,如何查看主板型号?(三种方法!)
  12. Redis中什么是热Key问题?如何解决热Key问题?
  13. 太平洋电脑网左边菜单的实现
  14. 上车了!AR摩托车头盔了解一下?
  15. drf框架图片路径问题
  16. softlayer iso_在SoftLayer服务器上使用图形界面
  17. cdn缓存服务器有网站图片,cdn缓存服务器上传图片
  18. 【NetTopologySuite类库】NTS与JTS一些问题整理
  19. 优化AWS使用成本系列之预留实例(RI)为您提供大幅折扣
  20. java实现传入URL下载图片并压缩,导出到excel

热门文章

  1. IDEA 运行 springboot运行出现 错误: 找不到或无法加载主类和找不到资源文件类
  2. java线程中join方法的简单讲解
  3. 罗振宇解读《今日简史》:21个议题就是21个千亿美金的机会
  4. 【MIME协议】base64编码与quoted-printable编码
  5. C语言实现简易五子棋
  6. 【Excel】使用宏处理重复操作示例 -- 录制分列操作
  7. 基于AlexNet网络的猫十二分类
  8. C++单元测试框架Gtest的配置与使用过程
  9. 【Android探索】基于OpenCV的微液滴粒径分析APP
  10. post 防篡改_表单提交数据防篡改