The following lines contain the word 'select', 'insert', 'update' or 'delete':
| Procedure insert_row |
| |
+======================================================================*/
PROCEDURE insert_row
(x_rowid IN OUT NOCOPY VARCHAR2
,x_description_detail_id IN NUMBER
,x_amb_context_code IN VARCHAR2
,x_flexfield_segment_code IN VARCHAR2
,x_display_description_flag IN VARCHAR2
,x_description_prio_id IN NUMBER
,x_user_sequence IN NUMBER
,x_value_type_code IN VARCHAR2
,x_source_application_id IN NUMBER
,x_source_type_code IN VARCHAR2
,x_source_code IN VARCHAR2
,x_literal IN VARCHAR2
,x_creation_date IN DATE
,x_created_by IN NUMBER
,x_last_update_date IN DATE
,x_last_updated_by IN NUMBER
,x_last_update_login IN NUMBER)
IS
CURSOR c IS
SELECT rowid
FROM xla_descript_details_b
WHERE description_detail_id = x_description_detail_id
;
l_log_module := C_DEFAULT_MODULE||'.insert_row';
trace(p_msg => 'BEGIN of procedure insert_row',
p_module => l_log_module,
p_level => C_LEVEL_PROCEDURE);
INSERT INTO xla_descript_details_b
(creation_date
,created_by
,amb_context_code
,flexfield_segment_code
,display_description_flag
,description_detail_id
,description_prio_id
,user_sequence
,value_type_code
,source_application_id
,source_type_code
,source_code
,last_update_date
,last_updated_by
,last_update_login)
VALUES
(x_creation_date
,x_created_by
,x_amb_context_code
,x_flexfield_segment_code
,x_display_description_flag
,x_description_detail_id
,x_description_prio_id
,x_user_sequence
,x_value_type_code
,x_source_application_id
,x_source_type_code
,x_source_code
,x_last_update_date
,x_last_updated_by
,x_last_update_login)
;
INSERT INTO xla_descript_details_tl
(description_detail_id
,literal
,creation_date
,created_by
,last_update_date
,last_updated_by
,last_update_login
,amb_context_code
,language
,source_lang)
SELECT
x_description_detail_id
,x_literal
,x_creation_date
,x_created_by
,x_last_update_date
,x_last_updated_by
,x_last_update_login
,x_amb_context_code
,l.language_code
,USERENV('LANG')
FROM fnd_languages l
WHERE l.installed_flag IN ('I', 'B')
AND NOT EXISTS
(SELECT NULL
FROM xla_descript_details_tl t
WHERE t.description_detail_id = x_description_detail_id
AND t.language = l.language_code);
trace(p_msg => 'END of procedure insert_row',
p_module => l_log_module,
p_level => C_LEVEL_PROCEDURE);
END insert_row;
SELECT last_update_login
,amb_context_code
,flexfield_segment_code
,display_description_flag
,description_prio_id
,user_sequence
,value_type_code
,source_application_id
,source_type_code
,source_code
FROM xla_descript_details_b
WHERE description_detail_id = x_description_detail_id
FOR UPDATE OF description_detail_id NOWAIT;
SELECT description_detail_id
,literal
,DECODE(language , USERENV('LANG'), 'Y', 'N') baselang
FROM xla_descript_details_tl
WHERE description_detail_id = X_description_detail_id
AND USERENV('LANG') IN (language ,source_lang)
FOR UPDATE OF description_detail_id NOWAIT;
fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
| Procedure update_row |
| |
+======================================================================*/
PROCEDURE update_row
(x_description_detail_id IN NUMBER
,x_amb_context_code IN VARCHAR2
,x_flexfield_segment_code IN VARCHAR2
,x_display_description_flag IN VARCHAR2
,x_description_prio_id IN NUMBER
,x_user_sequence IN NUMBER
,x_value_type_code IN VARCHAR2
,x_source_application_id IN NUMBER
,x_source_type_code IN VARCHAR2
,x_source_code IN VARCHAR2
,x_literal IN VARCHAR2
,x_last_update_date IN DATE
,x_last_updated_by IN NUMBER
,x_last_update_login IN NUMBER)
IS
l_log_module VARCHAR2(240);
l_log_module := C_DEFAULT_MODULE||'.update_row';
trace(p_msg => 'BEGIN of procedure update_row',
p_module => l_log_module,
p_level => C_LEVEL_PROCEDURE);
UPDATE xla_descript_details_b
SET
last_update_date = x_last_update_date
,amb_context_code = x_amb_context_code
,flexfield_segment_code = x_flexfield_segment_code
,display_description_flag = x_display_description_flag
,description_prio_id = x_description_prio_id
,user_sequence = x_user_sequence
,value_type_code = x_value_type_code
,source_application_id = x_source_application_id
,source_type_code = x_source_type_code
,source_code = x_source_code
,last_updated_by = x_last_updated_by
,last_update_login = x_last_update_login
WHERE description_detail_id = X_description_detail_id;
UPDATE xla_descript_details_tl
SET
last_update_date = x_last_update_date
,literal = X_literal
,last_updated_by = x_last_updated_by
,last_update_login = x_last_update_login
,source_lang = USERENV('LANG')
WHERE description_detail_id = X_description_detail_id
AND USERENV('LANG') IN (language, source_lang);
trace(p_msg => 'END of procedure update_row',
p_module => l_log_module,
p_level => C_LEVEL_PROCEDURE);
END update_row;
| Procedure delete_row |
| |
+======================================================================*/
PROCEDURE delete_row
(x_description_detail_id IN NUMBER)
IS
l_log_module VARCHAR2(240);
l_log_module := C_DEFAULT_MODULE||'.delete_row';
trace(p_msg => 'BEGIN of procedure delete_row',
p_module => l_log_module,
p_level => C_LEVEL_PROCEDURE);
DELETE FROM xla_descript_details_tl
WHERE description_detail_id = x_description_detail_id;
DELETE FROM xla_descript_details_b
WHERE description_detail_id = x_description_detail_id;
trace(p_msg => 'END of procedure delete_row',
p_module => l_log_module,
p_level => C_LEVEL_PROCEDURE);
END delete_row;
DELETE FROM xla_descript_details_tl T
WHERE NOT EXISTS
(SELECT NULL
FROM xla_descript_details_b b
WHERE b.description_detail_id = t.description_detail_id);
UPDATE xla_descript_details_tl t
SET (literal)
= (SELECT b.literal
FROM xla_descript_details_tl b
WHERE b.description_detail_id = t.description_detail_id
AND b.language = t.source_lang)
WHERE (t.description_detail_id
,t.language)
IN (SELECT subt.description_detail_id
,subt.language
FROM xla_descript_details_tl subb
,xla_descript_details_tl subt
WHERE subb.description_detail_id = subt.description_detail_id
AND subb.language = subt.source_lang
AND (SUBB.literal <> SUBT.literal
OR (subb.literal IS NULL
AND subt.literal IS NOT NULL)
OR (subb.literal IS NOT NULL
AND subt.literal IS NULL)
))
;
INSERT INTO xla_descript_details_tl
(description_detail_id
,literal
,creation_date
,created_by
,last_update_date
,last_updated_by
,last_update_login
,amb_context_code
,language
,source_lang)
SELECT /*+ ORDERED */
b.description_detail_id
,b.literal
,b.creation_date
,b.created_by
,b.last_update_date
,b.last_updated_by
,b.last_update_login
,b.amb_context_code
,l.language_code
,b.source_lang
FROM xla_descript_details_tl b
,fnd_languages l
WHERE l.installed_flag IN ('I', 'B')
AND b.language = userenv('LANG')
AND NOT EXISTS
(SELECT NULL
FROM xla_descript_details_tl t
WHERE t.description_detail_id = b.description_detail_id
AND t.language = l.language_code);
,p_last_update_date IN VARCHAR2
,p_custom_mode IN VARCHAR2)
IS
CURSOR c_app_id IS
SELECT application_id
FROM fnd_application
WHERE application_short_name = p_application_short_name;
SELECT description_prio_id
FROM xla_desc_priorities
WHERE application_id = l_application_id
AND amb_context_code = p_amb_context_code
AND description_type_code = p_description_type_code
AND description_code = p_description_code
AND user_sequence = p_priority_num;
SELECT description_detail_id
FROM xla_descript_details_b
WHERE amb_context_code = p_amb_context_code
AND description_prio_id = l_description_prio_id
AND user_sequence = p_user_sequence;
f_ludate DATE; -- entity update date in file
db_ludate DATE; -- entity update date in db
f_ludate := nvl(to_date(p_last_update_date, 'YYYY/MM/DD'), sysdate);
SELECT last_updated_by, last_update_date
INTO db_luby, db_ludate
FROM xla_descript_details_tl
WHERE amb_context_code = p_amb_context_code
AND description_detail_id = l_description_detail_id
AND language = userenv('LANG');
UPDATE xla_descript_details_tl
SET literal = p_literal
,last_update_date = f_ludate
,last_updated_by = f_luby
,last_update_login = 0
,source_lang = userenv('LANG')
WHERE userenv('LANG') IN (language, source_lang)
AND amb_context_code = p_amb_context_code
AND description_detail_id = l_description_detail_id;