The following lines contain the word 'select', 'insert', 'update' or 'delete':
SELECT system_number_id
FROM PA_SYSTEM_NUMBERS
WHERE p_object1_pk1_value = object1_pk1_value
FOR UPDATE of system_number_id NOWAIT; */
SELECT system_number_id, next_number
from PA_SYSTEM_NUMBERS
where system_number_id = p_system_number_id;
SELECT system_number_id, next_number
from PA_SYSTEM_NUMBERS
where p_object1_pk1_value = object1_pk1_value
and p_object1_type = object1_type
and nvl(p_object2_pk1_value,0) = nvl(object2_pk1_value,0)
and nvl(p_object2_type,' ') = nvl(object2_type,' ')
FOR UPDATE of next_number NOWAIT;
INSERT_ROW (
p_object1_pk1_value
,p_object1_type
,p_object2_pk1_value
,p_object2_type
,NULL
,x_next_number
,x_system_number_id
,x_return_status
,x_msg_count
,x_msg_data);
UPDATE_ROW (
l_system_id,null,null,null,null,l_next_number+1,x_return_status,x_msg_count,x_msg_data);
procedure INSERT_ROW (
p_object1_pk1_value IN NUMBER
,p_object1_type IN VARCHAR2
,p_object2_pk1_value IN NUMBER := NULL
,p_object2_type IN VARCHAR2 := NULL
,p_next_number IN NUMBER := NULL
,x_next_number OUT NOCOPY NUMBER
,x_system_number_id OUT NOCOPY NUMBER
,x_return_status OUT NOCOPY VARCHAR2
,x_msg_count OUT NOCOPY NUMBER
,x_msg_data OUT NOCOPY VARCHAR2
) is
l_system_id NUMBER;
cursor C is select ROWID from PA_SYSTEM_NUMBERS
where system_number_id = l_system_id;
SELECT pa.pa_system_numbers_s.nextval */
SELECT pa_system_numbers_s.nextval
INTO l_system_id
FROM DUAL;
insert into PA_SYSTEM_NUMBERS (
system_number_id
,object1_pk1_value
,object1_type
,object2_pk1_value
,object2_type
,next_number
,LAST_UPDATED_BY
,CREATED_BY
,CREATION_DATE
,LAST_UPDATE_DATE
,LAST_UPDATE_LOGIN
) VALUES (
l_system_id
,p_object1_pk1_value
,p_object1_type
,p_object2_pk1_value
,p_object2_type
,l_next_number+1
,fnd_global.user_id
,fnd_global.user_id
,sysdate
,sysdate
,fnd_global.user_id
);
,p_msg_name => 'PA_UPDATE_FAILED');
end INSERT_ROW;
procedure UPDATE_ROW (
p_system_number_id IN NUMBER := NULL
,p_object1_pk1_value IN NUMBER := NULL
,p_object1_type IN VARCHAR2 := NULL
,p_object2_pk1_value IN NUMBER := NULL
,p_object2_type IN VARCHAR2 := NULL
,p_next_number IN NUMBER := NULL
,x_return_status OUT NOCOPY VARCHAR2
,x_msg_count OUT NOCOPY NUMBER
,x_msg_data OUT NOCOPY VARCHAR2
) is
begin
x_return_status := FND_API.G_RET_STS_SUCCESS;
update PA_SYSTEM_NUMBERS set
object1_pk1_value = Nvl(p_object1_pk1_value,object1_pk1_value)
,object1_type = Nvl(p_object1_type,object1_type)
,object2_pk1_value = Nvl(p_object2_pk1_value,object2_pk1_value)
,object2_type = Nvl(p_object2_type,object2_type)
,next_number = Nvl(p_next_number,next_number)
,LAST_UPDATED_BY = fnd_global.user_id
,LAST_UPDATE_DATE = sysdate
,LAST_UPDATE_LOGIN = fnd_global.login_id
where system_number_id = nvl(p_system_number_id,0)
OR (object1_pk1_value = p_object1_pk1_value AND
p_object1_type = p_object1_type AND
nvl(object2_pk1_value, 0) = nvl(p_object2_pk1_value,0) AND
nvl(p_object2_type,' ') = nvl(p_object2_type,' ') );
end UPDATE_ROW;
procedure DELETE_ROW (
p_system_number_id IN NUMBER := NULL
,p_object1_pk1_value IN NUMBER := NULL
,p_object1_type IN VARCHAR2 := NULL
,p_object2_pk1_value IN NUMBER := NULL
,p_object2_type IN VARCHAR2 := NULL
,x_return_status OUT NOCOPY VARCHAR2
,x_msg_count OUT NOCOPY NUMBER
,x_msg_data OUT NOCOPY VARCHAR2
) is
begin
x_return_status := FND_API.G_RET_STS_SUCCESS;
DELETE FROM PA_SYSTEM_NUMBERS
where system_number_id = nvl(p_system_number_id,0)
OR (object1_pk1_value = p_object1_pk1_value AND
p_object1_type = p_object1_type AND
nvl(object2_pk1_value, 0) = nvl(p_object2_pk1_value,0) AND
nvl(p_object2_type,' ') = nvl(p_object2_type,' ') );
end DELETE_ROW;