fnd_concurrent.wait_for_request

FUNCTION fnd_concurrent.wait_for_request(request_id IN NUMBER DEFAULT NULL,
                                         INTERVAL   IN NUMBER DEFAULT 60,
                                         max_wait   IN NUMBER DEFAULT 0,
                                         phase      OUT VARCHAR2,
                                         status     OUT VARCHAR2,
                                         dev_phase  OUT VARCHAR2,
                                         dev_status OUT VARCHAR2,
                                         message    OUT VARCHAR2) RETURN BOOLEAN;

说明:等待并发请求的完成,然后返回请求的阶段、状态以及完成消息。在等待的过程中每隔一段时间检查一下。

输入参数说明:

request_id:  并发请求的id

interval:  两次检查见等待的秒数,两次检查之间该程序会休息

max_wait: 等待并发请求完成所能等待的的最长时间,单位为秒。

输出参数同前一个函数,恕罗勇不重复翻译啦。

原文没有示例用法,罗勇补充个:

DECLARE
  call_status BOOLEAN;
  rphase      VARCHAR2(80);
  rstatus     VARCHAR2(80);
  dphase      VARCHAR2(30);
  dstatus     VARCHAR2(30);
  message     VARCHAR2(240);
  request_id NUMBER;
BEGIN
  request_id := 3046222;
  call_status := fnd_concurrent.wait_for_request(request_id,
                                                   10,
                                                   1000,
                                                   rphase,
                                                   rstatus,
                                                   dphase,
                                                   dstatus,
                                                   message);
  IF call_status THEN
    dbms_output.put_line(rphase || '|' || rstatus || '|' || message);
  END IF;
END;

程序会等在此处直到并发请求完成或者满了1000秒。

### 关于 `FND_MESSAGE.SET_NAME` 的用法 在 Oracle E-Business Suite 中,`FND_MESSAGE.SET_NAME` 是一种用于设置消息名称的过程。它允许开发者通过指定的消息名称来加载预定义的消息文件中的特定消息[^1]。 以下是该过程的一个典型用法: #### 参数说明 - **message_name**: 这是一个字符串参数,表示要使用的消息的唯一标识符。此标识符通常对应于已注册到系统的某个消息文件中的条目。 #### 使用示例 下面展示了一个简单的 PL/SQL 块,演示如何调用 `FND_MESSAGE.SET_NAME` 来设定一条消息并显示出来: ```plsql BEGIN -- 设置消息名 FND_MESSAGE.SET_NAME('XXCUSTOM', 'MSG_INVALID_ENTRY'); -- 将消息文本赋给变量 fnd_message.set_token('TOKEN_VALUE', 'Invalid Entry Detected.'); -- 显示消息 raise_application_error(-20001, fnd_message.get); END; ``` 在这个例子中,“XXCUSTOM”代表应用短名而“MSG_INVALID_ENTRY”则是具体的消息键。 如果遇到与之相关的错误,则可能是因为以下原因: - 提供的应用程序短名或者消息键不匹配任何现有的记录。 - 数据库对象权限不足导致无法访问某些表或视图。 - 如果存在拼写错误或其他语法问题也可能引发异常情况如 ORA 错误系列[^2]。 上述代码片段展示了基本的操作流程以及可能出现的一些常见问题及其潜在解决方案。 ### 解决方案建议 对于因数据完整性约束引起的ORA类错误(例如ORA-1400),应确保所有必填字段都已被正确定义并且具有有效值后再尝试重新执行操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值