1: PACKAGE BODY LNS_COND_ASSIGNMENTS_PKG AS
2: /* $Header: LNS_CASGM_TBLH_B.pls 120.2.12010000.7 2010/03/17 13:36:03 scherkas ship $ */
3:
4: /* Insert_Row procedure */
5: PROCEDURE Insert_Row(
25: ,P_OWNER_TABLE IN VARCHAR2
26: ) IS
27:
28: CURSOR l_insert is
29: SELECT ROWID FROM LNS_COND_ASSIGNMENTS
30: WHERE COND_ASSIGNMENT_ID = X_COND_ASSIGNMENT_ID ;
31:
32: l_rowid varchar2(2000);
33:
31:
32: l_rowid varchar2(2000);
33:
34: BEGIN
35: INSERT INTO LNS_COND_ASSIGNMENTS
36: (
37: COND_ASSIGNMENT_ID
38: ,LOAN_ID
39: ,CONDITION_ID
53: ,DELETE_DISABLED_FLAG
54: ,OWNER_OBJECT_ID
55: ,OWNER_TABLE
56: ) VALUES (
57: DECODE(X_COND_ASSIGNMENT_ID, FND_API.G_MISS_NUM, LNS_COND_ASSIGNMENTS_S.NEXTVAL, NULL, LNS_COND_ASSIGNMENTS_S.NEXTVAL, X_COND_ASSIGNMENT_ID)
58: ,DECODE(P_LOAN_ID, FND_API.G_MISS_NUM, NULL, P_LOAN_ID)
59: ,DECODE(P_CONDITION_ID, FND_API.G_MISS_NUM, NULL, P_CONDITION_ID)
60: ,DECODE(P_CONDITION_MET_FLAG, FND_API.G_MISS_CHAR, NULL, P_CONDITION_MET_FLAG)
61: ,DECODE(P_MANDATORY_FLAG, FND_API.G_MISS_CHAR, NULL, P_MANDATORY_FLAG)
77: COND_ASSIGNMENT_ID
78: INTO
79: X_COND_ASSIGNMENT_ID;
80:
81: INSERT INTO LNS_COND_ASSIGNMENTS_TL (
82: COND_ASSIGNMENT_ID
83: ,CONDITION_DESCRIPTION
84: ,LANGUAGE
85: ,SOURCE_LANG
102: where L.INSTALLED_FLAG in ('I', 'B')
103: AND L.LANGUAGE_CODE = userenv('LANG')
104: AND not exists
105: (select NULL
106: from LNS_COND_ASSIGNMENTS_TL T
107: where T.cond_assignment_id = x_cond_assignment_id
108: and T.LANGUAGE = L.LANGUAGE_CODE);
109:
110:
108: and T.LANGUAGE = L.LANGUAGE_CODE);
109:
110:
111:
112: INSERT INTO LNS_COND_ASSIGNMENTS_TL (
113: COND_ASSIGNMENT_ID
114: ,CONDITION_DESCRIPTION
115: ,LANGUAGE
116: ,SOURCE_LANG
133: where L.INSTALLED_FLAG in ('I', 'B')
134: and L.LANGUAGE_CODE <> userenv('LANG')
135: AND SourceTL.language = L.LANGUAGE_CODE
136: AND SourceTL.CONDITION_ID = (
137: SELECT CONDITION_ID FROM LNS_COND_ASSIGNMENTS
138: WHERE COND_ASSIGNMENT_ID = X_COND_ASSIGNMENT_ID
139: )
140: AND not exists
141: (select NULL
138: WHERE COND_ASSIGNMENT_ID = X_COND_ASSIGNMENT_ID
139: )
140: AND not exists
141: (select NULL
142: from LNS_COND_ASSIGNMENTS_TL T
143: where T.cond_assignment_id = x_cond_assignment_id
144: and T.LANGUAGE = L.LANGUAGE_CODE);
145:
146:
183: --So using LNS_NULL_NUM
184: LNS_NULL_NUM CONSTANT NUMBER := -999999999;
185:
186: BEGIN
187: UPDATE LNS_COND_ASSIGNMENTS SET
188: LOAN_ID = DECODE(P_LOAN_ID, NULL, LOAN_ID, FND_API.G_MISS_NUM, NULL, P_LOAN_ID)
189: ,CONDITION_ID = DECODE(P_CONDITION_ID, NULL, CONDITION_ID, FND_API.G_MISS_NUM, NULL, P_CONDITION_ID)
190: ,CONDITION_MET_FLAG = DECODE(P_CONDITION_MET_FLAG, NULL, CONDITION_MET_FLAG, FND_API.G_MISS_CHAR, NULL, P_CONDITION_MET_FLAG)
191: ,MANDATORY_FLAG = DECODE(P_MANDATORY_FLAG, NULL, MANDATORY_FLAG, FND_API.G_MISS_CHAR, NULL, P_MANDATORY_FLAG)
207: if (sql%notfound) then
208: raise no_data_found;
209: end if;
210:
211: UPDATE LNS_COND_ASSIGNMENTS_TL SET
212: CONDITION_DESCRIPTION = DECODE(P_CONDITION_DESCRIPTION, NULL, CONDITION_DESCRIPTION, FND_API.G_MISS_CHAR, NULL, P_CONDITION_DESCRIPTION)
213: ,LAST_UPDATE_DATE = sysdate
214: ,LAST_UPDATED_BY = fnd_global.user_id
215: ,LAST_UPDATE_LOGIN = fnd_global.user_id
227: /* Delete_Row procedure */
228: PROCEDURE Delete_Row(P_COND_ASSIGNMENT_ID IN NUMBER) IS
229: BEGIN
230:
231: DELETE FROM LNS_COND_ASSIGNMENTS_TL
232: WHERE COND_ASSIGNMENT_ID = P_COND_ASSIGNMENT_ID;
233:
234: if (sql%notfound) then
235: raise no_data_found;
234: if (sql%notfound) then
235: raise no_data_found;
236: end if;
237:
238: DELETE FROM LNS_COND_ASSIGNMENTS
239: WHERE COND_ASSIGNMENT_ID = P_COND_ASSIGNMENT_ID;
240:
241: if (sql%notfound) then
242: raise no_data_found;
265: ,P_DELETE_DISABLED_FLAG IN VARCHAR2
266: ,P_OWNER_OBJECT_ID IN NUMBER
267: ,P_OWNER_TABLE IN VARCHAR2
268: ) IS
269: CURSOR C IS SELECT * FROM LNS_COND_ASSIGNMENTS
270: WHERE COND_ASSIGNMENT_ID = P_COND_ASSIGNMENT_ID
271: FOR UPDATE of COND_ASSIGNMENT_ID NOWAIT;
272: Recinfo C%ROWTYPE;
273:
274: CURSOR C_TL IS
275: SELECT
276: CONDITION_DESCRIPTION
277: ,decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
278: FROM LNS_COND_ASSIGNMENTS_TL
279: WHERE COND_ASSIGNMENT_ID = P_COND_ASSIGNMENT_ID
280: AND userenv('LANG') in (LANGUAGE, SOURCE_LANG)
281: FOR UPDATE of COND_ASSIGNMENT_ID NOWAIT;
282: -- tlinfo C_TL%ROWTYPE;
376:
377: procedure ADD_LANGUAGE
378: is
379: begin
380: delete from LNS_COND_ASSIGNMENTS_TL T
381: where not exists
382: (select NULL
383: from LNS_COND_ASSIGNMENTS B
384: where B.COND_ASSIGNMENT_ID = T.COND_ASSIGNMENT_ID
379: begin
380: delete from LNS_COND_ASSIGNMENTS_TL T
381: where not exists
382: (select NULL
383: from LNS_COND_ASSIGNMENTS B
384: where B.COND_ASSIGNMENT_ID = T.COND_ASSIGNMENT_ID
385: );
386:
387: update LNS_COND_ASSIGNMENTS_TL T set (
383: from LNS_COND_ASSIGNMENTS B
384: where B.COND_ASSIGNMENT_ID = T.COND_ASSIGNMENT_ID
385: );
386:
387: update LNS_COND_ASSIGNMENTS_TL T set (
388: CONDITION_DESCRIPTION
389: ) = (select
390: B.CONDITION_DESCRIPTION
391: from LNS_COND_ASSIGNMENTS_TL B
387: update LNS_COND_ASSIGNMENTS_TL T set (
388: CONDITION_DESCRIPTION
389: ) = (select
390: B.CONDITION_DESCRIPTION
391: from LNS_COND_ASSIGNMENTS_TL B
392: where B.COND_ASSIGNMENT_ID = T.COND_ASSIGNMENT_ID
393: and B.LANGUAGE = T.SOURCE_LANG)
394: where (
395: T.COND_ASSIGNMENT_ID,
396: T.LANGUAGE
397: ) in (select
398: SUBT.COND_ASSIGNMENT_ID,
399: SUBT.LANGUAGE
400: from LNS_COND_ASSIGNMENTS_TL SUBB, LNS_COND_ASSIGNMENTS_TL SUBT
401: where SUBB.COND_ASSIGNMENT_ID = SUBT.COND_ASSIGNMENT_ID
402: and SUBB.LANGUAGE = SUBT.SOURCE_LANG
403: and (SUBB.CONDITION_DESCRIPTION <> SUBT.CONDITION_DESCRIPTION
404: or (SUBB.CONDITION_DESCRIPTION is null and SUBT.CONDITION_DESCRIPTION is not null)
404: or (SUBB.CONDITION_DESCRIPTION is null and SUBT.CONDITION_DESCRIPTION is not null)
405: or (SUBB.CONDITION_DESCRIPTION is not null and SUBT.CONDITION_DESCRIPTION is null)
406: ));
407:
408: insert into LNS_COND_ASSIGNMENTS_TL (
409: COND_ASSIGNMENT_ID,
410: CONDITION_DESCRIPTION,
411: LAST_UPDATE_DATE,
412: LAST_UPDATED_BY,
424: B.CREATED_BY,
425: B.LAST_UPDATE_LOGIN,
426: L.LANGUAGE_CODE,
427: B.SOURCE_LANG
428: from LNS_COND_ASSIGNMENTS_TL B, FND_LANGUAGES L
429: where L.INSTALLED_FLAG in ('I', 'B')
430: and B.LANGUAGE = userenv('LANG')
431: and not exists
432: (select NULL
429: where L.INSTALLED_FLAG in ('I', 'B')
430: and B.LANGUAGE = userenv('LANG')
431: and not exists
432: (select NULL
433: from LNS_COND_ASSIGNMENTS_TL T
434: where T.COND_ASSIGNMENT_ID = B.COND_ASSIGNMENT_ID
435: and T.LANGUAGE = L.LANGUAGE_CODE);
436:
437: end ADD_LANGUAGE;