【发布时间】:2015-03-10 03:29:27
【问题描述】:
我有以下代码。我的目标是选择一个复选框,然后所有与 otehr 相关的复选框也将被选中。当我选择第一个复选框和下一个组复选框时,我可以自动选择其他复选框,但是当我选择第二个复选框并且第一个复选框与第二个复选框相关时它不起作用,第一个复选框不会自动选中,
看起来循环没有来回。我的代码哪里出了问题?
DECLARE
v_selected_contract VARCHAR2 (50);
v_selected_contract_ver NUMBER;
v_selected_contract_n VARCHAR2 (50);
v_selected_contract_ver_n NUMBER;
BEGIN
Go_block('PCMS_CONTRACT_LINES');
-- first_record;
IF :PCMS_CONTRACT_LINES.selected = 'Y' THEN
v_selected_contract := :PCMS_CONTRACT_LINES.contract_num;
v_selected_contract_ver := :PCMS_CONTRACT_LINES.contract_version_num;
WHILE :PCMS_CONTRACT_LINES.contract_num = v_selected_contract
AND :PCMS_CONTRACT_LINES.contract_version_num =
v_selected_contract_ver
LOOP
:PCMS_CONTRACT_LINES.selected := 'Y';
EXIT WHEN :System.last_record = 'TRUE';
next_record;
END LOOP;
Go_block('PCMS_CONTRACT_LINES');
first_record;
ELSE
v_selected_contract_n := :PCMS_CONTRACT_LINES.contract_num;
v_selected_contract_ver_n := :PCMS_CONTRACT_LINES.contract_version_num;
WHILE :PCMS_CONTRACT_LINES.contract_num = v_selected_contract_n
AND :PCMS_CONTRACT_LINES.contract_version_num =
v_selected_contract_ver_n LOOP
:PCMS_CONTRACT_LINES.selected := 'N';
EXIT WHEN :System.last_record = 'TRUE';
next_record;
END LOOP;
Go_block('PCMS_CONTRACT_LINES');
first_record;
END IF;
END;
【问题讨论】:
标签: plsql oracleforms