The following lines contain the word 'select', 'insert', 'update' or 'delete':
PROCEDURE INSERT_ROW
( X_ROWID IN OUT NOCOPY VARCHAR2
, X_ASSIGNMENT_TYPE IN VARCHAR2
, X_ATTRIBUTE_CODE IN VARCHAR2
, X_SEQUENCE_NUMBER IN NUMBER
, X_PROMPT 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 PJM_TASK_ATTR_USAGES_B
WHERE ASSIGNMENT_TYPE = X_ASSIGNMENT_TYPE
AND ATTRIBUTE_CODE = X_ATTRIBUTE_CODE;
INSERT INTO PJM_TASK_ATTR_USAGES_B
( ASSIGNMENT_TYPE
, ATTRIBUTE_CODE
, SEQUENCE_NUMBER
, CREATION_DATE
, CREATED_BY
, LAST_UPDATE_DATE
, LAST_UPDATED_BY
, LAST_UPDATE_LOGIN
) VALUES
( X_ASSIGNMENT_TYPE
, X_ATTRIBUTE_CODE
, X_SEQUENCE_NUMBER
, X_CREATION_DATE
, X_CREATED_BY
, X_LAST_UPDATE_DATE
, X_LAST_UPDATED_BY
, X_LAST_UPDATE_LOGIN
);
INSERT INTO PJM_TASK_ATTR_USAGES_TL
( ASSIGNMENT_TYPE
, ATTRIBUTE_CODE
, CREATION_DATE
, CREATED_BY
, LAST_UPDATE_DATE
, LAST_UPDATED_BY
, LAST_UPDATE_LOGIN
, PROMPT
, LANGUAGE
, SOURCE_LANG
)
SELECT X_ASSIGNMENT_TYPE
, X_ATTRIBUTE_CODE
, X_CREATION_DATE
, X_CREATED_BY
, X_LAST_UPDATE_DATE
, X_LAST_UPDATED_BY
, X_LAST_UPDATE_LOGIN
, DECODE(A.LANGUAGE , USERENV('LANG') , X_PROMPT , A.ATTRIBUTE_NAME)
, A.LANGUAGE
, A.SOURCE_LANG
FROM FND_LANGUAGES L
, PJM_TASK_ATTRIBUTES_TL A
WHERE L.INSTALLED_FLAG IN ( 'I' , 'B' )
AND A.LANGUAGE = L.LANGUAGE_CODE
AND A.ASSIGNMENT_TYPE = X_ASSIGNMENT_TYPE
AND A.ATTRIBUTE_CODE = X_ATTRIBUTE_CODE
AND NOT EXISTS (
SELECT NULL
FROM PJM_TASK_ATTR_USAGES_TL T
WHERE T.ASSIGNMENT_TYPE = X_ASSIGNMENT_TYPE
AND T.ATTRIBUTE_CODE = X_ATTRIBUTE_CODE
AND T.LANGUAGE = L.LANGUAGE_CODE);
END INSERT_ROW;
SELECT SEQUENCE_NUMBER
FROM PJM_TASK_ATTR_USAGES_B
WHERE ASSIGNMENT_TYPE = X_ASSIGNMENT_TYPE
AND ATTRIBUTE_CODE = X_ATTRIBUTE_CODE
FOR UPDATE OF ASSIGNMENT_TYPE NOWAIT;
SELECT PROMPT , DECODE(LANGUAGE , USERENV('LANG') , 'Y' , 'N') BASELANG
FROM PJM_TASK_ATTR_USAGES_TL
WHERE ASSIGNMENT_TYPE = X_ASSIGNMENT_TYPE
AND ATTRIBUTE_CODE = X_ATTRIBUTE_CODE
AND USERENV('LANG') IN ( LANGUAGE , SOURCE_LANG )
FOR UPDATE OF ASSIGNMENT_TYPE NOWAIT;
FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
PROCEDURE UPDATE_ROW
( X_ASSIGNMENT_TYPE IN VARCHAR2
, X_ATTRIBUTE_CODE IN VARCHAR2
, X_SEQUENCE_NUMBER IN NUMBER
, X_PROMPT IN VARCHAR2
, X_LAST_UPDATE_DATE IN DATE
, X_LAST_UPDATED_BY IN NUMBER
, X_LAST_UPDATE_LOGIN IN NUMBER
) IS
BEGIN
UPDATE PJM_TASK_ATTR_USAGES_B
SET SEQUENCE_NUMBER = X_SEQUENCE_NUMBER
, LAST_UPDATE_DATE = X_LAST_UPDATE_DATE
, LAST_UPDATED_BY = X_LAST_UPDATED_BY
, LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
WHERE ASSIGNMENT_TYPE = X_ASSIGNMENT_TYPE
AND ATTRIBUTE_CODE = X_ATTRIBUTE_CODE;
UPDATE PJM_TASK_ATTR_USAGES_TL
SET PROMPT = X_PROMPT
, LAST_UPDATE_DATE = X_LAST_UPDATE_DATE
, LAST_UPDATED_BY = X_LAST_UPDATED_BY
, LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
, SOURCE_LANG = USERENV('LANG')
WHERE ASSIGNMENT_TYPE = X_ASSIGNMENT_TYPE
AND ATTRIBUTE_CODE = X_ATTRIBUTE_CODE
AND USERENV('LANG') IN ( LANGUAGE , SOURCE_LANG );
END UPDATE_ROW;
PROCEDURE DELETE_ROW
( X_ASSIGNMENT_TYPE IN VARCHAR2
, X_ATTRIBUTE_CODE IN VARCHAR2
) IS
BEGIN
DELETE FROM PJM_TASK_ATTR_USAGES_TL
WHERE ASSIGNMENT_TYPE = X_ASSIGNMENT_TYPE
AND ATTRIBUTE_CODE = X_ATTRIBUTE_CODE;
DELETE FROM PJM_TASK_ATTR_USAGES_B
WHERE ASSIGNMENT_TYPE = X_ASSIGNMENT_TYPE
AND ATTRIBUTE_CODE = X_ATTRIBUTE_CODE;
END DELETE_ROW;
DELETE FROM PJM_TASK_ATTR_USAGES_TL T
WHERE NOT EXISTS (
SELECT NULL
FROM PJM_TASK_ATTR_USAGES_B B
WHERE B.ASSIGNMENT_TYPE = T.ASSIGNMENT_TYPE
AND B.ATTRIBUTE_CODE = T.ATTRIBUTE_CODE
);
UPDATE PJM_TASK_ATTR_USAGES_TL T
SET ( PROMPT ) = (
SELECT B.PROMPT
FROM PJM_TASK_ATTR_USAGES_TL B
WHERE B.ASSIGNMENT_TYPE = T.ASSIGNMENT_TYPE
AND B.ATTRIBUTE_CODE = T.ATTRIBUTE_CODE
AND B.LANGUAGE = T.SOURCE_LANG)
WHERE ( T.ASSIGNMENT_TYPE
, T.ATTRIBUTE_CODE
, T.LANGUAGE
) IN (
SELECT SUBT.ASSIGNMENT_TYPE
, SUBT.ATTRIBUTE_CODE
, SUBT.LANGUAGE
FROM PJM_TASK_ATTR_USAGES_TL SUBB
, PJM_TASK_ATTR_USAGES_TL SUBT
WHERE SUBB.ASSIGNMENT_TYPE = SUBT.ASSIGNMENT_TYPE
AND SUBB.ATTRIBUTE_CODE = SUBT.ATTRIBUTE_CODE
AND SUBB.LANGUAGE = SUBT.SOURCE_LANG
AND (SUBB.PROMPT <> SUBT.PROMPT
OR (SUBB.PROMPT IS NULL AND SUBT.PROMPT IS NOT NULL)
OR (SUBB.PROMPT IS NOT NULL AND SUBT.PROMPT IS NULL)
));
INSERT INTO PJM_TASK_ATTR_USAGES_TL
( ASSIGNMENT_TYPE
, ATTRIBUTE_CODE
, CREATION_DATE
, CREATED_BY
, LAST_UPDATE_DATE
, LAST_UPDATED_BY
, LAST_UPDATE_LOGIN
, PROMPT
, LANGUAGE
, SOURCE_LANG
)
SELECT A.ASSIGNMENT_TYPE
, A.ATTRIBUTE_CODE
, A.CREATION_DATE
, A.CREATED_BY
, A.LAST_UPDATE_DATE
, A.LAST_UPDATED_BY
, A.LAST_UPDATE_LOGIN
, A.ATTRIBUTE_NAME
, A.LANGUAGE
, A.SOURCE_LANG
FROM PJM_TASK_ATTRIBUTES_TL A
, PJM_TASK_ATTR_USAGES_B B
, FND_LANGUAGES L
WHERE L.INSTALLED_FLAG IN ( 'I' , 'B' )
AND A.LANGUAGE = L.LANGUAGE_CODE
AND B.ASSIGNMENT_TYPE = A.ASSIGNMENT_TYPE
AND B.ATTRIBUTE_CODE = A.ATTRIBUTE_CODE
AND NOT EXISTS (
SELECT NULL
FROM PJM_TASK_ATTR_USAGES_TL T
WHERE T.ASSIGNMENT_TYPE = B.ASSIGNMENT_TYPE
AND T.ATTRIBUTE_CODE = B.ATTRIBUTE_CODE
AND T.LANGUAGE = L.LANGUAGE_CODE
);