oracle ebs 请求 待定,EBS 并发请求 计划 fnd_conc_release_classes(示例代码)
EBS并发请求中有可以设置计划用以定时运行,计划存储在 fnd_conc_release_classes 表中,通过release_class_id与请求表fnd_concurrent_requests关联。
详细信息如下:
RELEASE_CLASS_ID: 主键,与fnd_concurrent_requests关联.
CLASS_TYPE: contains value 'P' for "Periodic" schedules, 'S' for "on Specific Days" schedules and 'X' for "advanced schedules". P:定期,S:在特定日期,X:高级
DATE1: start date of the schedule ("Start at" field in the form) 起始日期
DATE2: end date of the schedule ("End at" field in the form), as fnd_concurrent_requests.resubmit_end_date 终止日期
CLASS_INFO: this is the most interesting field as it contains all the information needed for rescheduling. The format of the field depends on the type of schedule. 因计划类型的不同,数据格式也随之出现差异.
"PERIODIC" schedule: 定期
In case of Periodic schedule fnd_conc_release_classes.CLASS_INFO field contains values like "2:D:S" or X:Y:Z where:
X – number of months/weeks/days/hours/minutes the request has to be rescheduled from prior run.
Y – contains a single letter representing units
"M" – months;
"D" – days;
"H" – hours;
"N" – minutes;
(there is no representation of "weeks" option. If you specify interval in weeks, it’s automatically calculated and stored in "days").
Z – contains a single letter to represent if the rescheduling has to be done from start or from completion of the prior run
S – from the start of the prior run;
C – from the completion of the prior run.
Some samples:
30:N:S – Repeat every 30 minutes from the start of the prior run
5:N:C – Repeat every 5 minutes from the completion of the prior run
12:H:S – Repeat every 12 hours from the start of the prior run
It’s interesting that information about intervals of periodic schedules is duplicated infnd_concurrent_requests table fields RESUBMIT_INTERVAL, RESUBMIT_INTERVAL_TYPE_CODE and RESUBMIT_INTERVAL_UNIT_CODE.
"ON SPECIFIC DAY" schedule: 在特定日期
In case of on Specific Day schedule fnd_conc_release_classes.CLASS_INFO field contains values like "000010000000000000000000000000010000000" – a 39 character value consisting of 0 and 1. The idea is that the placement of 1-s represent the options selected through form:
1-s at places 1 to 31 – represent dates, when request has to be run, eg, if the 10th character is "1" – the request is scheduled to run on 10th day of each month;
character "1" at the 32nd position – specifies that the request has to be run at the last day of each month;
1-s at places 33 to 39 – specifies days of week (Sunday – Saturday)the request has to be run. if the 33rd character is "1" – the request is scheduled to run each Sunday, if 34th – on Monday and so on.
Some samples:
000000000000000000000000000000000000001 – Days of week: Sa
111111111000000000000000000000000111110 – Dates: 1 2 3 4 5 6 7 8 9. Days of week: Mo Tu We Th Fr
000000000000000000000000000000010000000 – Last day of month
最后,奉上一段SQL:SELECT r.Request_Id,
p.User_Concurrent_Program_Name || CASE
WHEN p.User_Concurrent_Program_Name = 'Report Set' THEN
(SELECT ' - ' || s.User_Request_Set_Name
FROM Fnd_Request_Sets_Tl s
WHERE s.Application_Id = r.Argument1
AND s.Request_Set_Id = r.Argument2
AND LANGUAGE = 'US')
WHEN p.User_Concurrent_Program_Name = 'Check Periodic Alert' THEN
(SELECT ' - ' || a.Alert_Name
FROM Alr_Alerts a
WHERE a.Application_Id = r.Argument1
AND a.Alert_Id = r.Argument2
AND LANGUAGE = 'US')
END Concurrent_Program_Name,
CASE
WHEN p.User_Concurrent_Program_Name != 'Report Set' AND
p.User_Concurrent_Program_Name != 'Check Periodic Alert' THEN
r.Argument_Text
END Argument_Text,
r.Requested_Start_Date Next_Run,
r.Hold_Flag On_Hold,
Decode(c.Class_Type,
'P',
'Periodic',
'S',
'On Specific Days',
'X',
'Advanced',
c.Class_Type) Schedule_Type,
CASE
WHEN c.Class_Type = 'P' THEN
'Repeat every ' ||
Substr(c.Class_Info, 1, Instr(c.Class_Info, ':') - 1) ||
Decode(Substr(c.Class_Info,
Instr(c.Class_Info, ':', 1, 1) + 1,
1),
'N',
' minutes',
'M',
' months',
'H',
' hours',
'D',
' days') ||
Decode(Substr(c.Class_Info,
Instr(c.Class_Info, ':', 1, 2) + 1,
1),
'S',
' from the start of the prior run',
'C',
' from the completion of the prior run')
WHEN c.Class_Type = 'S' THEN
Nvl2(Dates.Dates, 'Dates: ' || Dates.Dates || '. ', NULL) ||
Decode(Substr(c.Class_Info, 32, 1), '1', 'Last day of month ') ||
Decode(Sign(To_Number(Substr(c.Class_Info, 33))),
'1',
'Days of week: ' ||
Decode(Substr(c.Class_Info, 33, 1), '1', 'Su ') ||
Decode(Substr(c.Class_Info, 34, 1), '1', 'Mo ') ||
Decode(Substr(c.Class_Info, 35, 1), '1', 'Tu ') ||
Decode(Substr(c.Class_Info, 36, 1), '1', 'We ') ||
Decode(Substr(c.Class_Info, 37, 1), '1', 'Th ') ||
Decode(Substr(c.Class_Info, 38, 1), '1', 'Fr ') ||
Decode(Substr(c.Class_Info, 39, 1), '1', 'Sa '))
END Schedule,
c.Date1 Start_Date,
c.Date2 End_Date,
c.Class_Info
FROM Fnd_Concurrent_Requests r,
Fnd_Conc_Release_Classes c,
Fnd_Concurrent_Programs_Tl p,
(SELECT Release_Class_Id,
Substr(MAX(Sys_Connect_By_Path(s, ' ')), 2) Dates
FROM (SELECT Release_Class_Id,
Rank() Over(PARTITION BY Release_Class_Id ORDER BY s) a,
s
FROM (SELECT c.Class_Info,
l,
c.Release_Class_Id,
Decode(Substr(c.Class_Info, l, 1),
'1',
To_Char(l)) s
FROM (SELECT LEVEL l FROM Dual CONNECT BY LEVEL <= 31),
Fnd_Conc_Release_Classes c
WHERE c.Class_Type = 'S')
WHERE s IS NOT NULL)
CONNECT BY PRIOR
(a || Release_Class_Id) = (a - 1) || Release_Class_Id
START WITH a = 1
GROUP BY Release_Class_Id) Dates
WHERE r.Phase_Code = 'P'
AND c.Application_Id = r.Release_Class_App_Id
AND c.Release_Class_Id = r.Release_Class_Id
AND Nvl(c.Date2, SYSDATE + 1) > SYSDATE
AND c.Class_Type IS NOT NULL
AND p.Concurrent_Program_Id = r.Concurrent_Program_Id
AND p.Application_Id = r.Program_Application_Id
AND p.Language = 'US'
AND Dates.Release_Class_Id(+) = r.Release_Class_Id
ORDER BY On_Hold, Next_Run;
oracle ebs 请求 待定,EBS 并发请求 计划 fnd_conc_release_classes(示例代码)相关推荐
- php post 二维数组,php curl模拟post请求和提交多维数组的示例代码
这篇文章主要介绍了php curl模拟post请求和提交多维数组的示例代码,需要的朋友可以参考下 下面一段代码给大家介绍php curl模拟post请求的示例代码,具体代码如下: 'tanteng' ...
- Oracle EBS 开发如何获得并发请求REQUEST ID
通过并发请求方式来新增或修改表记录时,需要涉及到获得到本请求ID,这样更方便追溯和查询数据来源和执行情况. 1.并发程序的执行方法: PL/SQL存储过程或SQL*PLUS 简单,添加代码 v_Cur ...
- php 模拟并发请求_PHP模拟并发请求
原理:使用curl_init()创建多个请求实例,再使用curl_multi_init()批量执行创建的多个请求实例. 文件1:curl.php<?php $threads=500;//并发请求 ...
- Vue3(撩课学院)笔记09-axios简介,发起get请求的两种方式,发起带参的get及post请求,发起并发请求,并发请求结果将数组展开,axios全局配置,axios配置及封装,请求和响应拦截
1.axios简介 axios是基于promise可以用于浏览器和node.js的网络请求库,在服务器端使用原生node.js,在浏览气短使用ajax(即XMLHttpRequests) 2.axio ...
- axios get请求 post请求 多个并发请求 传值 后端接值
get params:{ id:1, name:'李四' } //get 请求 axios.get("/get", {params: {id: 20,name: '阿狸'}}). ...
- c语言通过域组策略下发软件,windows 2008 server 域环境通过组策略下发计划任务(示例代码)...
1.AD域环境 2.服务版本:2008 目的:通过组策略下发计划任务让客户端每天定时重启. 重启脚本内容: C:\WINDOWS\system32\shutdown.exe -r -t 60 @@ec ...
- linux一号进程和二号进程,Linux系统管理10——进程和计划任务管理(示例代码)
Linux系统管理10--进程和计划任务管理 一.程序和进程的关系 1.程序 ·保存在硬盘.光盘等介质中的可执行代码和数据 ·静态保存的代码 2.进程 ·在CPU及内存中运行的程序代码 ·动态执行的代 ...
- 论EBS的并发请求(报表中心)的必要性
很多人觉得EBS的报表提交麻烦,界面不友好,而且极度不方便. 记忆很深刻的是,当年刚刚过来现在工作公司的IT部门的时候,IT部门的经理(他是自己开发ERP软件的牛人)就说过:这个EBS啊,要跑一个报表 ...
- Java 中如何模拟真正的同时并发请求?
有时需要测试一下某个功能的并发性能,又不要想借助于其他工具,索性就自己的开发语言,来一个并发请求就最方便了. java中模拟并发请求,自然是很方便的,只要多开几个线程,发起请求就好了.但是,这种请求, ...
最新文章
- 从支付宝看大用户规模互联网架构发展
- [转]小硕3年是怎样发6篇SCI的
- python多个异常处理_python中处理多个异常
- python图像开闭区间_自动开闭器不良故障案例分析
- Android应用开发(15)---字符串资源
- 二分图带权最大匹配费用流_简单理解二分图与匈牙利算法
- 解决:The Apache Tomcat Native library
- 软件行业做了3年,何去何从?到底该搞哪个方面?迷茫+努力
- mysql服务启动失败原因
- 智慧城市网络安全建设框架及实践
- 差点以为是本人!这个3D人体生成模型厉害了,还能自己改POSE
- VNX VMX and delete luns
- linux文件系统修复
- 相关系数|皮尔逊和斯皮尔曼
- 李白打酒递归java_李白打酒递归
- Latex中如何使用中文?
- bigmap 绘制三维地形图_3D-MAX真实三维地形制作过程
- 正则表达式 (js)
- 好书推荐——厚黑学全书 (作者 李宗吾)
- 最牛支付工具问世,支付宝慌了?
热门文章
- 数据可视化之matplotlib实战:plt.stem()函数 绘制棉棒图
- ET在课堂:S4A,新的重组方案
- 衢州职业技术学院分数线平均计算机,衢州职业技术学院录取分数线2021是多少分(附历年录取分数线)...
- 光纤宽带 和 ADSL宽带有什么区别?
- CPU主频越高越好吗?
- 未来财富:呼啸而来的数字人民币
- 电子科技大学信息与通信工程学院858考研上岸经验分享(一)
- Https、Wss加密实践
- win2008不能连接mysql_win2008 r2 安装sql server 2005/2008 无法连接服务器解决方法
- 电商老大的短腿——阿里巴巴曲折的游戏之路