Trapped duplicate record but "Do you want to save changes?" message appears [message #183262] |
Thu, 20 July 2006 03:21  |
cong
Messages: 25 Registered: June 2006
|
Junior Member |
|
|
When user adds a record and it already exists, this trigger fires after I click on the Save button:
On-Error Trigger Code:
IF (lv_errcod = 40102) THEN
message('Please enter a value.');
ELSIF (lv_errcod = 40508) THEN
MESSAGE('Record already exists.');
ELSE
Message(lv_errtxt);
RAISE Form_Trigger_Failure;
END IF;
My problem is there's a Commit statement in the When-button-pressed trigger of the Save button so the message "Do you want to save changes?" appears. How do I trap this?
Thank you.
|
|
|
|
Re: Trapped duplicate record but "Do you want to save changes?" message appears [message #183467 is a reply to message #183262] |
Fri, 21 July 2006 02:05   |
cong
Messages: 25 Registered: June 2006
|
Junior Member |
|
|
I used on-check-unique trigger but still the "Do you want to save changes?" message appears.
What happens is after pressing the Save button, commit statement is performed. Then, duplicate record is found so the message "Record already exists." appears. Followed by the "Do you want to save changes?" message. How can I trap this?
on-check-unique trigger:
DECLARE
CURSOR chk_unique IS
SELECT 'x'
FROM emp
WHERE emp_no = :blk.emp_no;
tmp VARCHAR2(1);
BEGIN
OPEN chk_unique;
FETCH chk_unique INTO tmp;
CLOSE chk_unique;
IF tmp IS NOT NULL THEN
Message('Employee no. already exists.');
RAISE Form_Trigger_Failure;
ELSIF form_fatal OR form_failure THEN
RAISE form_trigger_failure;
END IF;
END;
|
|
|
|