The following lines contain the word 'select', 'insert', 'update' or 'delete':
PROCEDURE InsertRowHandler( p_OBJECT_ID IN NUMBER,
p_OBJECT_ID2 IN NUMBER,
p_OBJECT_TYPE_CODE IN VARCHAR2,
p_SEQUENCE_NUM IN NUMBER,
p_ACTION_TYPE IN VARCHAR2,
p_ACTION_USER_ID IN NUMBER,
p_ACTION_NOTE IN VARCHAR2,
p_ACTION_REASON_CODE IN VARCHAR2
)
IS
BEGIN
insert into PON_ACTION_HISTORY( OBJECT_ID,
OBJECT_ID2,
OBJECT_TYPE_CODE,
SEQUENCE_NUM,
ACTION_TYPE,
ACTION_DATE,
ACTION_USER_ID,
ACTION_NOTE,
ACTION_REASON_CODE)
VALUES( p_OBJECT_ID,
p_OBJECT_ID2,
p_OBJECT_TYPE_CODE,
p_SEQUENCE_NUM,
p_ACTION_TYPE,
sysdate,
p_ACTION_USER_ID,
p_ACTION_NOTE,
p_ACTION_REASON_CODE);
END InsertRowHandler;
PROCEDURE UpdateRowHandler( p_OBJECT_ID IN NUMBER,
p_OBJECT_ID2 IN NUMBER,
p_OBJECT_TYPE_CODE IN VARCHAR2,
p_SEQUENCE_NUM IN NUMBER,
p_ACTION_TYPE IN VARCHAR2)
IS
BEGIN
UPDATE PON_ACTION_HISTORY
SET
ACTION_TYPE = p_action_type,
ACTION_DATE = sysdate
WHERE OBJECT_ID = p_object_id
and OBJECT_ID2 = p_object_id2
and OBJECT_TYPE_CODE = p_object_type_code
and SEQUENCE_NUM = p_sequence_num
and ACTION_TYPE is NULL;
END UpdateRowHandler;
select max(pah.sequence_num)
from PON_ACTION_HISTORY PAH
where PAH.OBJECT_ID = ln_objectid
and (PAH.OBJECT_ID2 = ln_objectid2 OR PAH.OBJECT_ID2 is null)
and PAH.OBJECT_TYPE_CODE = lv_type;
IF (ln_seq_number >= 0) THEN -- Insert into PON_ACTION_HISTORY with the same OBJECT_IDS
ln_new_seq_number := ln_seq_number + 1;
InsertRowHandler( p_OBJECT_ID => p_object_id,
p_OBJECT_ID2 => p_object_id2,
p_OBJECT_TYPE_CODE => p_object_type_code,
p_SEQUENCE_NUM => ln_new_seq_number,
p_ACTION_TYPE => p_action_type,
p_ACTION_USER_ID => p_action_user_id,
p_ACTION_NOTE => p_action_note,
p_ACTION_REASON_CODE => p_action_reason_code);
ELSIF (p_continue = 'F') THEN -- We are just going to update the existing row.
UpdateRowHandler( p_OBJECT_ID => p_object_id,
p_OBJECT_ID2 => p_object_id2,
p_OBJECT_TYPE_CODE => p_object_type_code,
p_SEQUENCE_NUM => ln_seq_number,
p_ACTION_TYPE => p_action_type);
InsertRowHandler( p_OBJECT_ID => p_object_id,
p_OBJECT_ID2 => p_object_id2,
p_OBJECT_TYPE_CODE => p_object_type_code,
p_SEQUENCE_NUM => ln_new_seq_number,
p_ACTION_TYPE => p_action_type,
p_ACTION_USER_ID => p_action_user_id,
p_ACTION_NOTE => p_action_note,
p_ACTION_REASON_CODE => p_action_reason_code);
InsertRowHandler( p_OBJECT_ID => p_object_id,
p_OBJECT_ID2 => p_object_id2,
p_OBJECT_TYPE_CODE => p_object_type_code,
p_SEQUENCE_NUM => 1,
p_ACTION_TYPE => NULL,
p_ACTION_USER_ID => p_action_user_id_next,
p_ACTION_NOTE => p_action_note,
p_ACTION_REASON_CODE => p_action_reason_code);
UpdateRowHandler( p_OBJECT_ID => p_object_id,
p_OBJECT_ID2 => p_object_id2,
p_OBJECT_TYPE_CODE => p_object_type_code,
p_SEQUENCE_NUM => ln_seq_number,
p_ACTION_TYPE => p_action_type);
InsertRowHandler( p_OBJECT_ID => p_object_id,
p_OBJECT_ID2 => p_object_id2,
p_OBJECT_TYPE_CODE => p_object_type_code,
p_SEQUENCE_NUM => ln_new_seq_number,
p_ACTION_TYPE => NULL,
p_ACTION_USER_ID => p_action_user_id_next,
p_ACTION_NOTE => p_action_note,
p_ACTION_REASON_CODE => p_action_reason_code);