The following lines contain the word 'select', 'insert', 'update' or 'delete':
SELECT timer_id, timer_message_code,
next_timer,start_time
FROM xnp_timer_registry
WHERE reference_id = p_reference_id
AND (timer_message_code = p_timer_message_code
OR next_timer = p_timer_message_code
)
AND status = 'ACTIVE';
SELECT timer_message_code
FROM xnp_timer_registry
WHERE reference_id = p_reference_id
AND status = 'ACTIVE' ;
SELECT status
FROM xnp_timer_registry
WHERE timer_id = p_timer_id;
SELECT timer_id, status FROM xnp_timer_registry
WHERE reference_id = p_reference_id
AND timer_message_code = p_timer_message_code
ORDER BY status ASC;
PROCEDURE update_timer_status
(
p_reference_id IN VARCHAR2
,p_timer_message_code IN VARCHAR2
,p_status IN VARCHAR2
,x_error_code OUT NOCOPY NUMBER
,x_error_message OUT NOCOPY VARCHAR2
)
IS
-- Fixed as part of Bug 1351421
-- Logic changed for performance.
-- The timer status will be returned ordered by
-- status asc (ACTIVE, EXPIRED, REMOVED)
-- Only the first record will be processed.
CURSOR c_update_timer_status IS
SELECT *
FROM xnp_timer_registry
WHERE reference_id = p_reference_id
AND timer_message_code = p_timer_message_code
ORDER BY status ASC
FOR UPDATE OF status;
OPEN c_update_timer_status;
FETCH c_update_timer_status INTO v_Timer_Registry;
IF c_update_timer_status%NOTFOUND THEN
x_error_code := xnp_errors.g_timer_not_found;
UPDATE xnp_timer_registry
SET status = p_status
WHERE CURRENT OF c_update_timer_status;
CLOSE c_update_timer_status;
END update_timer_status;
PROCEDURE update_timer_status
(
p_timer_id IN NUMBER
,p_status IN VARCHAR2
,x_error_code OUT NOCOPY NUMBER
,x_error_message OUT NOCOPY VARCHAR2
)
IS
CURSOR c_update_timer_status IS
SELECT *
FROM xnp_timer_registry
WHERE timer_id = p_timer_id
FOR UPDATE OF status;
OPEN c_update_timer_status;
FETCH c_update_timer_status INTO v_Timer_Registry;
IF c_update_timer_status%NOTFOUND THEN
x_error_code := xnp_errors.g_timer_not_found;
UPDATE xnp_timer_registry
SET status = p_status
WHERE CURRENT OF c_update_timer_status;
CLOSE c_update_timer_status;
IF c_update_timer_status%ISOPEN
THEN
close c_update_timer_status;
END update_timer_status;
xnp_timer_core.update_timer_status(
p_timer_id => p_timer_id
,p_status => 'REMOVED'
,x_error_code => x_error_code
,x_error_message => x_error_message
);
SELECT msg_id INTO l_message_id
FROM aq$xnp_in_tmr_qtab
WHERE user_data = l_message ;
xnp_message.update_status(p_msg_id=>p_timer_id
,p_status=>'PROCESSED'
,p_error_desc=>'Timer Removed') ;
SELECT timer_id FROM xnp_timer_registry
WHERE reference_id = p_reference_id
AND (timer_message_code = p_timer_message_code
OR next_timer = p_timer_message_code)
AND status = 'ACTIVE'
FOR UPDATE OF status ;
SELECT timer_id FROM xnp_timer_registry
WHERE order_id = p_order_id
AND status = 'ACTIVE';
SELECT timer_id FROM xnp_timer_registry
WHERE wi_instance_id = p_workitem_instance_id
AND status = 'ACTIVE';
SELECT next_timer
FROM xnp_timer_registry
WHERE timer_id = p_timer_id ;
SELECT timer_id, timer_message_code,
next_timer
FROM xnp_timer_registry
WHERE reference_id = p_reference_id
AND (timer_message_code = p_timer_message_code
OR next_timer = p_timer_message_code
)
AND status = 'ACTIVE';
SELECT timer_message_code
FROM xnp_timer_registry
WHERE reference_id = p_reference_id
AND status = 'ACTIVE' ;
SELECT timer_message_code
FROM xnp_timer_publishers
WHERE source_message_code = p_message_code ;
SELECT jeopardy_enabled_flag
FROM xdp_order_headers
WHERE order_id = p_order_id;