The following lines contain the word 'select', 'insert', 'update' or 'delete':
SELECT count(*)
INTO l_seq_count
FROM psb_budget_year_types
WHERE sequence_number = p_year_type_seq
AND ((p_year_type_id IS NULL ) OR
( budget_year_type_id <> p_year_type_id)) ;
SELECT max(decode(year_category_type, 'PY', sequence_number)),
min(decode(year_category_type, 'PP', sequence_number)),
min(decode(year_category_type, 'CY', sequence_number)),
1
FROM psb_budget_year_types
GROUP BY 1 ;
SELECT count(*)
INTO l_cy_count
FROM psb_budget_year_types
WHERE year_category_type = 'CY'
AND ((p_year_type_id IS NULL) OR
(budget_year_type_id <> p_year_type_id));
SELECT 1
INTO l_dummy
FROM dual
WHERE NOT EXISTS
(SELECT 1
FROM psb_budget_periods
WHERE budget_year_type_id = p_year_type_id);
FND_MESSAGE.Set_Name('PSB', 'PSB_CANNOT_DELETE_YTP');
SELECT count(*)
INTO l_seq_count
FROM psb_budget_year_types
WHERE name = p_name
AND ((p_year_type_id IS NULL ) OR
( budget_year_type_id <> p_year_type_id)) ;
procedure INSERT_ROW
( p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
p_commit IN VARCHAR2 := FND_API.G_FALSE,
p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
p_return_status OUT NOCOPY VARCHAR2,
p_msg_count OUT NOCOPY NUMBER,
p_msg_data OUT NOCOPY VARCHAR2,
--
p_ROWID in OUT NOCOPY VARCHAR2,
p_BUDGET_YEAR_TYPE_ID in NUMBER,
p_YEAR_CATEGORY_TYPE in VARCHAR2,
p_SEQUENCE_NUMBER in NUMBER,
p_NAME in VARCHAR2,
p_DESCRIPTION in VARCHAR2,
p_CREATION_DATE in DATE,
p_CREATED_BY in NUMBER,
p_LAST_UPDATE_DATE in DATE,
p_LAST_UPDATED_BY in NUMBER,
p_LAST_UPDATE_LOGIN in NUMBER
) is
l_api_name CONSTANT VARCHAR2(30) := 'INSERT_ROW';
cursor C is select ROWID from PSB_BUDGET_YEAR_TYPES
where BUDGET_YEAR_TYPE_ID = p_BUDGET_YEAR_TYPE_ID
;
insert into PSB_BUDGET_YEAR_TYPES (
BUDGET_YEAR_TYPE_ID,
YEAR_CATEGORY_TYPE,
NAME,
SEQUENCE_NUMBER,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN
) values (
p_BUDGET_YEAR_TYPE_ID,
p_YEAR_CATEGORY_TYPE,
p_NAME,
p_SEQUENCE_NUMBER,
p_CREATION_DATE,
p_CREATED_BY,
p_LAST_UPDATE_DATE,
p_LAST_UPDATED_BY,
p_LAST_UPDATE_LOGIN
);
insert into PSB_BUDGET_YEAR_TYPES_TL (
BUDGET_YEAR_TYPE_ID,
NAME,
DESCRIPTION,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN,
CREATED_BY,
CREATION_DATE,
LANGUAGE,
SOURCE_LANG
) select
p_BUDGET_YEAR_TYPE_ID,
p_NAME,
p_DESCRIPTION,
p_LAST_UPDATE_DATE,
p_LAST_UPDATED_BY,
p_LAST_UPDATE_LOGIN,
p_CREATED_BY,
p_CREATION_DATE,
L.LANGUAGE_CODE,
userenv('LANG')
from FND_LANGUAGES L
where L.INSTALLED_FLAG in ('I', 'B')
and not exists
(select NULL
from PSB_BUDGET_YEAR_TYPES_TL T
where T.BUDGET_YEAR_TYPE_ID = p_BUDGET_YEAR_TYPE_ID
and T.LANGUAGE = L.LANGUAGE_CODE);
end INSERT_ROW;
cursor c is select
YEAR_CATEGORY_TYPE,
SEQUENCE_NUMBER
from PSB_BUDGET_YEAR_TYPES
where BUDGET_YEAR_TYPE_ID = p_BUDGET_YEAR_TYPE_ID
for update of BUDGET_YEAR_TYPE_ID nowait;
cursor c1 is select
NAME,
DESCRIPTION,
decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
from PSB_BUDGET_YEAR_TYPES_TL
where BUDGET_YEAR_TYPE_ID = p_BUDGET_YEAR_TYPE_ID
and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
for update of BUDGET_YEAR_TYPE_ID nowait;
fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
procedure UPDATE_ROW
( p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
p_commit IN VARCHAR2 := FND_API.G_FALSE,
p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
p_return_status OUT NOCOPY VARCHAR2,
p_msg_count OUT NOCOPY NUMBER,
p_msg_data OUT NOCOPY VARCHAR2,
--
p_BUDGET_YEAR_TYPE_ID in NUMBER,
p_YEAR_CATEGORY_TYPE in VARCHAR2,
p_SEQUENCE_NUMBER in NUMBER,
p_NAME in VARCHAR2,
p_DESCRIPTION in VARCHAR2,
p_LAST_UPDATE_DATE in DATE,
p_LAST_UPDATED_BY in NUMBER,
p_LAST_UPDATE_LOGIN in NUMBER
) is
l_api_name CONSTANT VARCHAR2(30) := 'UPDATE_ROW';
update PSB_BUDGET_YEAR_TYPES set
YEAR_CATEGORY_TYPE = p_YEAR_CATEGORY_TYPE,
SEQUENCE_NUMBER = p_SEQUENCE_NUMBER,
LAST_UPDATE_DATE = p_LAST_UPDATE_DATE,
LAST_UPDATED_BY = p_LAST_UPDATED_BY,
LAST_UPDATE_LOGIN = p_LAST_UPDATE_LOGIN
where BUDGET_YEAR_TYPE_ID = p_BUDGET_YEAR_TYPE_ID;
update PSB_BUDGET_YEAR_TYPES_TL set
NAME = p_NAME,
DESCRIPTION = p_DESCRIPTION,
LAST_UPDATE_DATE = p_LAST_UPDATE_DATE,
LAST_UPDATED_BY = p_LAST_UPDATED_BY,
LAST_UPDATE_LOGIN = p_LAST_UPDATE_LOGIN,
SOURCE_LANG = userenv('LANG')
where BUDGET_YEAR_TYPE_ID = p_BUDGET_YEAR_TYPE_ID
and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
end UPDATE_ROW;
procedure DELETE_ROW
( p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
p_commit IN VARCHAR2 := FND_API.G_FALSE,
p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
p_return_status OUT NOCOPY VARCHAR2,
p_msg_count OUT NOCOPY NUMBER,
p_msg_data OUT NOCOPY VARCHAR2,
p_BUDGET_YEAR_TYPE_ID in NUMBER
) is
l_api_name CONSTANT VARCHAR2(30) := 'DELETE_ROW';
delete from PSB_BUDGET_YEAR_TYPES_TL
where BUDGET_YEAR_TYPE_ID = p_BUDGET_YEAR_TYPE_ID;
delete from PSB_BUDGET_YEAR_TYPES
where BUDGET_YEAR_TYPE_ID = p_BUDGET_YEAR_TYPE_ID;
end DELETE_ROW;
delete from PSB_BUDGET_YEAR_TYPES_TL T
where not exists
(select NULL
from PSB_BUDGET_YEAR_TYPES B
where B.BUDGET_YEAR_TYPE_ID = T.BUDGET_YEAR_TYPE_ID
);
update PSB_BUDGET_YEAR_TYPES_TL T set (
NAME,
DESCRIPTION
) = (select
B.NAME,
B.DESCRIPTION
from PSB_BUDGET_YEAR_TYPES_TL B
where B.BUDGET_YEAR_TYPE_ID = T.BUDGET_YEAR_TYPE_ID
and B.LANGUAGE = T.SOURCE_LANG)
where (
T.BUDGET_YEAR_TYPE_ID,
T.LANGUAGE
) in (select
SUBT.BUDGET_YEAR_TYPE_ID,
SUBT.LANGUAGE
from PSB_BUDGET_YEAR_TYPES_TL SUBB, PSB_BUDGET_YEAR_TYPES_TL SUBT
where SUBB.BUDGET_YEAR_TYPE_ID = SUBT.BUDGET_YEAR_TYPE_ID
and SUBB.LANGUAGE = SUBT.SOURCE_LANG
and (SUBB.NAME <> SUBT.NAME
or SUBB.DESCRIPTION <> SUBT.DESCRIPTION
));
insert into PSB_BUDGET_YEAR_TYPES_TL (
BUDGET_YEAR_TYPE_ID,
NAME,
DESCRIPTION,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN,
CREATED_BY,
CREATION_DATE,
LANGUAGE,
SOURCE_LANG
) select
B.BUDGET_YEAR_TYPE_ID,
B.NAME,
B.DESCRIPTION,
B.LAST_UPDATE_DATE,
B.LAST_UPDATED_BY,
B.LAST_UPDATE_LOGIN,
B.CREATED_BY,
B.CREATION_DATE,
L.LANGUAGE_CODE,
B.SOURCE_LANG
from PSB_BUDGET_YEAR_TYPES_TL B, FND_LANGUAGES L
where L.INSTALLED_FLAG in ('I', 'B')
and B.LANGUAGE = userenv('LANG')
and not exists
(select NULL
from PSB_BUDGET_YEAR_TYPES_TL T
where T.BUDGET_YEAR_TYPE_ID = B.BUDGET_YEAR_TYPE_ID
and T.LANGUAGE = L.LANGUAGE_CODE);