【发布时间】:2018-05-14 17:03:39
【问题描述】:
这是我今天要解决的问题。我们有一个 ERP 系统,我需要设置一个事件,以便在采购订单授权人 (POA) 准备好待批准的采购订单时向他们发送电子邮件。对于我们只有一个授权人的采购订单,这很容易设置。但是,有些采购订单需要经过一组授权人,特别是我们的 QA 小组的审核,才能获得批准。
我可以使用以下方法获取我们 QA 组的授权人列表:
select authorize_id from purch_authorize_group_line where authorize_group_id = '30-QA-NUC';
此查询返回 50 行数据。
我还可以使用以下方法获取与授权 ID 关联的 USERID:
SELECT purchase_authorizer_api.get_userid('30','104351') FROM DUAL;
我想不通的是如何将第一个查询中的所有值传递到第二个查询中。这个查询:
SELECT purchase_authorizer_api.get_userid('30',(select authorize_id from purch_authorize_group_line where authorize_group_id = '30-QA-NUC')) FROM DUAL;
返回错误“ORA-01427:单行子查询返回多于一行。”
所以,我想知道的是,我是否有办法将第一个查询中的所有 50 个值传递到第二个查询中,并获取所有 50 个用户的 USERID。如果这些 USERID,那么当他们准备好批准 PO 时,我可以向 QA 组发送通知电子邮件。
【问题讨论】: