对不起所有这些问题。
我有一个下拉列表,用户可以在其中选择各种操作类型。
示例:(:P6_Action_ind)
完全接受
部分接受
拒绝/默认
如果用户选择完全接受,我想在ca_offer表上使用(offer_shares)列中的原始要约金额更新(Accept_shares)列。
我正在尝试在流程点(提交时)
上执行此操作 if :P6_ACTION_IND = 'FULL ACCEPTANCE' then
update ca_offer
set accept_shares = offer_shares
where seq_id = :P6_SEQ_ID;
end if;
答案 0 :(得分:0)
检查选择列表项与描述性文本的值。此值是会话状态中设置的值,应该用作代码中的文字字符串。
LOV将显示一个值,并存储一个不同的值 - 因此select语句中有两列。您需要确保第二列(存储的值)处于会话状态(运行时底部的开发人员工具栏上的按钮),并匹配您在PL / SQL中硬编码的任何内容。
答案 1 :(得分:0)
好吧也许我需要尝试解释一下我想要做的更好。
我有一个页面项目(:P6_Action_ind),它是一个(LOV)的下拉列表 LOV:
if :P6_ACTION_IND = 'FULL ACCEPTANCE' then
update ca_offer
set accept_shares = offer_shares
where seq_id = :P6_SEQ_ID;
end if;
LOV包含客户端可以采取的许多操作,但这里有一些:
完全接受
部分接受
拒绝/默认
现在,如果他们选择完全接受,我需要更新表格(CA_OFFER)
function createdRow(row, data, dataIndex) {
$compile(angular.element(row).contents())($scope);
}
但它似乎完全接受"在提交时不是一个值。
答案 2 :(得分:0)
我尝试更新ca_offer a set(accept_shares)=(SELECT A.OFFER_SHARES from> CA_OFFER A,CA_OFFER_ACTION B,其中B.OFFER_ACTION_DESC ='FULL ACCEPTANVCE'); >但那不起作用..
你可能试图从表ca_offer获取对应于'FULL ACCEPTANCE'的列offer_shares。
你在ACCEPTANVCE写了一个错字, 并且更新应通过子查询获取accept_shares的值,该子查询从查找表返回一行和一列。
update ca_offer
set accept_shares = (
select offer_shares
from ca_offer_action
where OFFER_ACTION_DESC = 'FULL ACCEPTANCE'
)
where seq_id = :P6_SEQ_ID
中的子查询3
但是,你应该首先在R字段的LOV中选择参考字段(D =描述,R =参考)
Select OFFER_ACTION_DESC D, offer_shares R
FROM CA_OFFER_ACTION
WHERE OFFER_NAME = :P6_OFFER_TYPE