DBA Data[Home] [Help]

PACKAGE BODY: APPS.LNS_FEE_ASSIGNMENTS_PKG

Source


1 PACKAGE BODY LNS_FEE_ASSIGNMENTS_PKG AS
2 /* $Header: LNS_FASGM_TBLH_B.pls 120.6 2010/06/28 10:34:57 gparuchu ship $ */
3 
4 /* Insert_Row procedure */
5 PROCEDURE Insert_Row(
6 	X_FEE_ASSIGNMENT_ID		IN OUT NOCOPY NUMBER
7 	,P_LOAN_ID		IN NUMBER
8 	,P_FEE_ID		IN NUMBER
9 	,P_FEE_TYPE		IN VARCHAR2
10 	,P_FEE		IN NUMBER
11 	,P_FEE_BASIS		IN VARCHAR2
12 	,P_NUMBER_GRACE_DAYS		IN NUMBER
13 	,P_CREATED_BY		IN NUMBER
14 	,P_CREATION_DATE		IN DATE
15 	,P_LAST_UPDATED_BY		IN NUMBER
16 	,P_LAST_UPDATE_DATE		IN DATE
17 	,P_LAST_UPDATE_LOGIN		IN NUMBER
18 	,P_OBJECT_VERSION_NUMBER		IN NUMBER
19 	,P_COLLECTED_THIRD_PARTY_FLAG		IN VARCHAR2
20 	,P_BILLING_OPTION		IN VARCHAR2
21 	,P_RATE_TYPE		IN VARCHAR2
22 	,P_BEGIN_INSTALLMENT_NUMBER		IN NUMBER
23 	,P_END_INSTALLMENT_NUMBER		IN NUMBER
24 	,P_NUMBER_OF_PAYMENTS		IN NUMBER
25 	,P_START_DATE_ACTIVE		IN DATE
26 	,P_END_DATE_ACTIVE		IN DATE
27 	,P_DISB_HEADER_ID		IN NUMBER
28 	,P_DELETE_DISABLED_FLAG		IN VARCHAR2
29 	,P_OPEN_PHASE_FLAG		IN VARCHAR2
30 	,P_PHASE			IN VARCHAR2
31 	,P_CUSTOM_PROCEDURE		IN VARCHAR2
32 ) IS
33 BEGIN
34 	INSERT INTO LNS_FEE_ASSIGNMENTS
35 	(
36 		FEE_ASSIGNMENT_ID
37 		,LOAN_ID
38 		,FEE_ID
39 		,FEE_TYPE
40 		,FEE
41 		,FEE_BASIS
42 		,NUMBER_GRACE_DAYS
43 		,CREATED_BY
44 		,CREATION_DATE
45 		,LAST_UPDATED_BY
46 		,LAST_UPDATE_DATE
47 		,LAST_UPDATE_LOGIN
48 		,OBJECT_VERSION_NUMBER
49 		,COLLECTED_THIRD_PARTY_FLAG
50 		,BILLING_OPTION
51 		,RATE_TYPE
52 		,BEGIN_INSTALLMENT_NUMBER
53 		,END_INSTALLMENT_NUMBER
54 		,NUMBER_OF_PAYMENTS
55 		,START_DATE_ACTIVE
56 		,END_DATE_ACTIVE
57 		,DISB_HEADER_ID
58 		,DELETE_DISABLED_FLAG
59 		,OPEN_PHASE_FLAG
60 		,PHASE
61 		,CUSTOM_PROCEDURE
62 	) VALUES (
63 		DECODE(X_FEE_ASSIGNMENT_ID, FND_API.G_MISS_NUM, LNS_FEE_ASSIGNMENTS_S.NEXTVAL, NULL, LNS_FEE_ASSIGNMENTS_S.NEXTVAL, X_FEE_ASSIGNMENT_ID)
64 		,DECODE(P_LOAN_ID, FND_API.G_MISS_NUM, NULL, P_LOAN_ID)
65 		,DECODE(P_FEE_ID, FND_API.G_MISS_NUM, NULL, P_FEE_ID)
66 		,DECODE(P_FEE_TYPE, FND_API.G_MISS_CHAR, NULL, P_FEE_TYPE)
67 		,DECODE(P_FEE, FND_API.G_MISS_NUM, NULL, P_FEE)
68 		,DECODE(P_FEE_BASIS, FND_API.G_MISS_CHAR, NULL, P_FEE_BASIS)
69 		,DECODE(P_NUMBER_GRACE_DAYS, FND_API.G_MISS_NUM, NULL, P_NUMBER_GRACE_DAYS)
70 		,LNS_UTILITY_PUB.CREATED_BY
71 		,LNS_UTILITY_PUB.CREATION_DATE
72 		,LNS_UTILITY_PUB.LAST_UPDATED_BY
73 		,LNS_UTILITY_PUB.LAST_UPDATE_DATE
74 		,LNS_UTILITY_PUB.LAST_UPDATE_LOGIN
75 		,DECODE(P_OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, NULL, P_OBJECT_VERSION_NUMBER)
76 		,DECODE(P_COLLECTED_THIRD_PARTY_FLAG, FND_API.G_MISS_CHAR, NULL, P_COLLECTED_THIRD_PARTY_FLAG)
77 		,DECODE(P_BILLING_OPTION, FND_API.G_MISS_CHAR, NULL, P_BILLING_OPTION)
78 		,DECODE(P_RATE_TYPE, FND_API.G_MISS_CHAR, NULL, P_RATE_TYPE)
79 		,DECODE(P_BEGIN_INSTALLMENT_NUMBER, FND_API.G_MISS_NUM, NULL, P_BEGIN_INSTALLMENT_NUMBER)
80 		,DECODE(P_END_INSTALLMENT_NUMBER, FND_API.G_MISS_NUM, NULL, P_END_INSTALLMENT_NUMBER)
81 		,DECODE(P_NUMBER_OF_PAYMENTS, FND_API.G_MISS_NUM, NULL, P_NUMBER_OF_PAYMENTS)
82 		,DECODE(P_START_DATE_ACTIVE, FND_API.G_MISS_DATE, NULL, P_START_DATE_ACTIVE)
83 		,DECODE(P_END_DATE_ACTIVE, FND_API.G_MISS_DATE, NULL, P_END_DATE_ACTIVE)
84 		,DECODE(P_DISB_HEADER_ID, FND_API.G_MISS_NUM, NULL, P_DISB_HEADER_ID)
85 		,DECODE(P_DELETE_DISABLED_FLAG, FND_API.G_MISS_CHAR, NULL, P_DELETE_DISABLED_FLAG )
86 		,DECODE(P_OPEN_PHASE_FLAG, FND_API.G_MISS_CHAR, NULL, P_OPEN_PHASE_FLAG )
87 		,DECODE(P_PHASE, FND_API.G_MISS_CHAR, NULL, P_PHASE )
88 		,DECODE(P_CUSTOM_PROCEDURE, FND_API.G_MISS_CHAR, NULL, P_CUSTOM_PROCEDURE )
89 	) RETURNING
90 		 FEE_ASSIGNMENT_ID
91 	 INTO
92 		 X_FEE_ASSIGNMENT_ID;
93 END Insert_Row;
94 
95 /* Update_Row procedure */
96 PROCEDURE Update_Row(
97 	P_FEE_ASSIGNMENT_ID		IN NUMBER
98 	,P_LOAN_ID		IN NUMBER
99 	,P_FEE_ID		IN NUMBER
100 	,P_FEE_TYPE		IN VARCHAR2
101 	,P_FEE		IN NUMBER
102 	,P_FEE_BASIS		IN VARCHAR2
103 	,P_NUMBER_GRACE_DAYS		IN NUMBER
104 	,P_LAST_UPDATED_BY		IN NUMBER
105 	,P_LAST_UPDATE_DATE		IN DATE
106 	,P_LAST_UPDATE_LOGIN		IN NUMBER
107 	,P_OBJECT_VERSION_NUMBER		IN NUMBER
108 	,P_COLLECTED_THIRD_PARTY_FLAG		IN VARCHAR2
109 	,P_BILLING_OPTION		IN VARCHAR2
110 	,P_RATE_TYPE		IN VARCHAR2
111 	,P_BEGIN_INSTALLMENT_NUMBER		IN NUMBER
112 	,P_END_INSTALLMENT_NUMBER		IN NUMBER
113 	,P_NUMBER_OF_PAYMENTS		IN NUMBER
114 	,P_START_DATE_ACTIVE		IN DATE
115 	,P_END_DATE_ACTIVE		IN DATE
116 	,P_DISB_HEADER_ID		IN NUMBER
117 	,P_DELETE_DISABLED_FLAG		IN VARCHAR2
118 	,P_OPEN_PHASE_FLAG		IN VARCHAR2
119 	,P_PHASE			IN VARCHAR2
120 	,P_CUSTOM_PROCEDURE		IN VARCHAR2
121 ) IS
122 BEGIN
123 	UPDATE LNS_FEE_ASSIGNMENTS SET
124 		LOAN_ID = DECODE(P_LOAN_ID, NULL, LOAN_ID, FND_API.G_MISS_NUM, NULL, P_LOAN_ID)
125 		,FEE_ID = DECODE(P_FEE_ID, NULL, FEE_ID, FND_API.G_MISS_NUM, NULL, P_FEE_ID)
126 		,FEE_TYPE = DECODE(P_FEE_TYPE, NULL, FEE_TYPE, FND_API.G_MISS_CHAR, NULL, P_FEE_TYPE)
127 		,FEE = DECODE(P_FEE, NULL, FEE, FND_API.G_MISS_NUM, NULL, P_FEE)
128 		,FEE_BASIS = DECODE(P_FEE_BASIS, NULL, FEE_BASIS, FND_API.G_MISS_CHAR, NULL, P_FEE_BASIS)
129 		,NUMBER_GRACE_DAYS = DECODE(P_NUMBER_GRACE_DAYS, NULL, NUMBER_GRACE_DAYS, FND_API.G_MISS_NUM, NULL, P_NUMBER_GRACE_DAYS)
130 		,LAST_UPDATED_BY = LNS_UTILITY_PUB.LAST_UPDATED_BY
131 		,LAST_UPDATE_DATE = LNS_UTILITY_PUB.LAST_UPDATE_DATE
132 		,LAST_UPDATE_LOGIN = LNS_UTILITY_PUB.LAST_UPDATE_LOGIN
133 		,OBJECT_VERSION_NUMBER = DECODE(P_OBJECT_VERSION_NUMBER, NULL, OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, NULL, P_OBJECT_VERSION_NUMBER)
134 		,COLLECTED_THIRD_PARTY_FLAG = DECODE(P_COLLECTED_THIRD_PARTY_FLAG, NULL, COLLECTED_THIRD_PARTY_FLAG, FND_API.G_MISS_CHAR, NULL, P_COLLECTED_THIRD_PARTY_FLAG)
135 		,BILLING_OPTION = DECODE(P_BILLING_OPTION, NULL, BILLING_OPTION, FND_API.G_MISS_CHAR, NULL, P_BILLING_OPTION)
136 		,RATE_TYPE = DECODE(P_RATE_TYPE, NULL, RATE_TYPE, FND_API.G_MISS_CHAR, NULL, P_RATE_TYPE)
137 		,BEGIN_INSTALLMENT_NUMBER = DECODE(P_BEGIN_INSTALLMENT_NUMBER, NULL, BEGIN_INSTALLMENT_NUMBER, FND_API.G_MISS_NUM, NULL, P_BEGIN_INSTALLMENT_NUMBER)
138 		,END_INSTALLMENT_NUMBER = DECODE(P_END_INSTALLMENT_NUMBER, NULL, END_INSTALLMENT_NUMBER, FND_API.G_MISS_NUM, NULL, P_END_INSTALLMENT_NUMBER)
139 		,NUMBER_OF_PAYMENTS = DECODE(P_NUMBER_OF_PAYMENTS, NULL, NUMBER_OF_PAYMENTS, FND_API.G_MISS_NUM, NULL, P_NUMBER_OF_PAYMENTS)
140 		,START_DATE_ACTIVE = DECODE(P_START_DATE_ACTIVE, NULL, START_DATE_ACTIVE, FND_API.G_MISS_DATE, NULL, P_START_DATE_ACTIVE)
141 		,END_DATE_ACTIVE = DECODE(P_END_DATE_ACTIVE, NULL, END_DATE_ACTIVE, FND_API.G_MISS_DATE, NULL, P_END_DATE_ACTIVE)
142 		,DISB_HEADER_ID = DECODE(P_DISB_HEADER_ID, NULL, DISB_HEADER_ID, FND_API.G_MISS_NUM, NULL, P_DISB_HEADER_ID)
143 		,DELETE_DISABLED_FLAG = DECODE(P_DELETE_DISABLED_FLAG , NULL, DELETE_DISABLED_FLAG , FND_API.G_MISS_CHAR, NULL, P_DELETE_DISABLED_FLAG )
144 		,OPEN_PHASE_FLAG = DECODE(P_OPEN_PHASE_FLAG , NULL, OPEN_PHASE_FLAG , FND_API.G_MISS_CHAR, NULL, P_OPEN_PHASE_FLAG )
145 		,PHASE = DECODE(P_PHASE , NULL, PHASE , FND_API.G_MISS_CHAR, NULL, P_PHASE )
146 		,CUSTOM_PROCEDURE = DECODE(P_CUSTOM_PROCEDURE , NULL, CUSTOM_PROCEDURE , FND_API.G_MISS_CHAR, NULL, P_CUSTOM_PROCEDURE )
147 	 WHERE FEE_ASSIGNMENT_ID = P_FEE_ASSIGNMENT_ID;
148 
149 	if (sql%notfound) then
150 		raise no_data_found;
151 	end if;
152 END Update_Row;
153 
154 /* Delete_Row procedure */
155 PROCEDURE Delete_Row(P_FEE_ASSIGNMENT_ID IN NUMBER) IS
156 BEGIN
157 	DELETE FROM LNS_FEE_ASSIGNMENTS
158 		WHERE FEE_ASSIGNMENT_ID = P_FEE_ASSIGNMENT_ID;
159 
160 	if (sql%notfound) then
161 		raise no_data_found;
162 	end if;
163 END Delete_Row;
164 
165 /* Lock_Row procedure */
166 PROCEDURE Lock_Row(
167 	P_FEE_ASSIGNMENT_ID		IN NUMBER
168 	,P_LOAN_ID		IN NUMBER
169 	,P_FEE_ID		IN NUMBER
170 	,P_FEE_TYPE		IN VARCHAR2
171 	,P_FEE		IN NUMBER
172 	,P_FEE_BASIS		IN VARCHAR2
173 	,P_NUMBER_GRACE_DAYS		IN NUMBER
174 	,P_CREATED_BY		IN NUMBER
175 	,P_CREATION_DATE		IN DATE
176 	,P_LAST_UPDATED_BY		IN NUMBER
177 	,P_LAST_UPDATE_DATE		IN DATE
178 	,P_LAST_UPDATE_LOGIN		IN NUMBER
179 	,P_OBJECT_VERSION_NUMBER		IN NUMBER
180 	,P_COLLECTED_THIRD_PARTY_FLAG		IN VARCHAR2
181 	,P_BILLING_OPTION		IN VARCHAR2
182 	,P_RATE_TYPE		IN VARCHAR2
183 	,P_BEGIN_INSTALLMENT_NUMBER		IN NUMBER
184 	,P_END_INSTALLMENT_NUMBER		IN NUMBER
185 	,P_NUMBER_OF_PAYMENTS		IN NUMBER
186 	,P_START_DATE_ACTIVE		IN DATE
187 	,P_END_DATE_ACTIVE		IN DATE
188 	,P_DISB_HEADER_ID		IN NUMBER
189 	,P_DELETE_DISABLED_FLAG		IN VARCHAR2
190 	,P_OPEN_PHASE_FLAG   		IN VARCHAR2
191 	,P_PHASE			IN VARCHAR2
192 	,P_CUSTOM_PROCEDURE		IN VARCHAR2
193 ) IS
194 	CURSOR C IS SELECT * FROM LNS_FEE_ASSIGNMENTS
195 		WHERE FEE_ASSIGNMENT_ID = P_FEE_ASSIGNMENT_ID
196 		FOR UPDATE of FEE_ASSIGNMENT_ID NOWAIT;
197 	Recinfo C%ROWTYPE;
198 BEGIN
199 	OPEN C;
200 	FETCH C INTO Recinfo;
201 	IF (C%NOTFOUND) THEN
202 		CLOSE C;
203 		FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
204 		APP_EXCEPTION.Raise_Exception;
205 	END IF;
206 	CLOSE C;
207 
208 	IF (
209 		(Recinfo.FEE_ASSIGNMENT_ID = P_FEE_ASSIGNMENT_ID)
210 		AND ( (Recinfo.LOAN_ID = P_LOAN_ID)
211 			OR ( (Recinfo.LOAN_ID IS NULL)
212 				AND (P_LOAN_ID IS NULL)))
213 		AND ( (Recinfo.FEE_ID = P_FEE_ID)
214 			OR ( (Recinfo.FEE_ID IS NULL)
215 				AND (P_FEE_ID IS NULL)))
216 		AND ( (Recinfo.FEE_TYPE = P_FEE_TYPE)
217 			OR ( (Recinfo.FEE_TYPE IS NULL)
218 				AND (P_FEE_TYPE IS NULL)))
219 		AND ( (Recinfo.FEE = P_FEE)
220 			OR ( (Recinfo.FEE IS NULL)
221 				AND (P_FEE IS NULL)))
222 		AND ( (Recinfo.FEE_BASIS = P_FEE_BASIS)
223 			OR ( (Recinfo.FEE_BASIS IS NULL)
224 				AND (P_FEE_BASIS IS NULL)))
225 		AND ( (Recinfo.NUMBER_GRACE_DAYS = P_NUMBER_GRACE_DAYS)
226 			OR ( (Recinfo.NUMBER_GRACE_DAYS IS NULL)
227 				AND (P_NUMBER_GRACE_DAYS IS NULL)))
228 		AND ( (Recinfo.CREATED_BY = P_CREATED_BY)
229 			OR ( (Recinfo.CREATED_BY IS NULL)
230 				AND (P_CREATED_BY IS NULL)))
231 		AND ( (Recinfo.CREATION_DATE = P_CREATION_DATE)
232 			OR ( (Recinfo.CREATION_DATE IS NULL)
233 				AND (P_CREATION_DATE IS NULL)))
234 		AND ( (Recinfo.LAST_UPDATED_BY = P_LAST_UPDATED_BY)
235 			OR ( (Recinfo.LAST_UPDATED_BY IS NULL)
236 				AND (P_LAST_UPDATED_BY IS NULL)))
237 		AND ( (Recinfo.LAST_UPDATE_DATE = P_LAST_UPDATE_DATE)
238 			OR ( (Recinfo.LAST_UPDATE_DATE IS NULL)
239 				AND (P_LAST_UPDATE_DATE IS NULL)))
240 		AND ( (Recinfo.LAST_UPDATE_LOGIN = P_LAST_UPDATE_LOGIN)
241 			OR ( (Recinfo.LAST_UPDATE_LOGIN IS NULL)
242 				AND (P_LAST_UPDATE_LOGIN IS NULL)))
243 		AND ( (Recinfo.OBJECT_VERSION_NUMBER = P_OBJECT_VERSION_NUMBER)
244 			OR ( (Recinfo.OBJECT_VERSION_NUMBER IS NULL)
245 				AND (P_OBJECT_VERSION_NUMBER IS NULL)))
246 		AND ( (Recinfo.COLLECTED_THIRD_PARTY_FLAG = P_COLLECTED_THIRD_PARTY_FLAG)
247 			OR ( (Recinfo.COLLECTED_THIRD_PARTY_FLAG IS NULL)
248 				AND (P_COLLECTED_THIRD_PARTY_FLAG IS NULL)))
249 		AND ( (Recinfo.BILLING_OPTION = P_BILLING_OPTION)
250 			OR ( (Recinfo.BILLING_OPTION IS NULL)
251 				AND (P_BILLING_OPTION IS NULL)))
252 		AND ( (Recinfo.RATE_TYPE = P_RATE_TYPE)
253 			OR ( (Recinfo.RATE_TYPE IS NULL)
254 				AND (P_RATE_TYPE IS NULL)))
255 		AND ( (Recinfo.BEGIN_INSTALLMENT_NUMBER = P_BEGIN_INSTALLMENT_NUMBER)
256 			OR ( (Recinfo.BEGIN_INSTALLMENT_NUMBER IS NULL)
257 				AND (P_BEGIN_INSTALLMENT_NUMBER IS NULL)))
258 		AND ( (Recinfo.END_INSTALLMENT_NUMBER = P_END_INSTALLMENT_NUMBER)
259 			OR ( (Recinfo.END_INSTALLMENT_NUMBER IS NULL)
260 				AND (P_END_INSTALLMENT_NUMBER IS NULL)))
261 		AND ( (Recinfo.NUMBER_OF_PAYMENTS = P_NUMBER_OF_PAYMENTS)
262 			OR ( (Recinfo.NUMBER_OF_PAYMENTS IS NULL)
263 				AND (P_NUMBER_OF_PAYMENTS IS NULL)))
264 		AND ( (Recinfo.START_DATE_ACTIVE = P_START_DATE_ACTIVE)
265 			OR ( (Recinfo.START_DATE_ACTIVE IS NULL)
266 				AND (P_START_DATE_ACTIVE IS NULL)))
267 		AND ( (Recinfo.END_DATE_ACTIVE = P_END_DATE_ACTIVE)
268 			OR ( (Recinfo.END_DATE_ACTIVE IS NULL)
269 				AND (P_END_DATE_ACTIVE IS NULL)))
270 		AND ( (Recinfo.DISB_HEADER_ID = P_DISB_HEADER_ID)
271                         OR ( (Recinfo.DISB_HEADER_ID IS NULL)
272                                 AND (P_DISB_HEADER_ID IS NULL)))
273 		AND ( (Recinfo.DELETE_DISABLED_FLAG = P_DELETE_DISABLED_FLAG )
274                         OR ( (Recinfo.DELETE_DISABLED_FLAG IS NULL)
275                                 AND (P_DELETE_DISABLED_FLAG IS NULL)))
276 		AND ( (Recinfo.OPEN_PHASE_FLAG = P_OPEN_PHASE_FLAG )
277                         OR ( (Recinfo.OPEN_PHASE_FLAG IS NULL)
278                                 AND (P_OPEN_PHASE_FLAG IS NULL)))
279 		AND ( (Recinfo.PHASE = P_PHASE )
280                         OR ( (Recinfo.PHASE IS NULL)
281                                 AND (P_PHASE IS NULL)))
282 		AND ( (Recinfo.CUSTOM_PROCEDURE = P_CUSTOM_PROCEDURE )
283                         OR ( (Recinfo.CUSTOM_PROCEDURE IS NULL)
284                                 AND (P_CUSTOM_PROCEDURE IS NULL)))
285 	   ) THEN
286 		return;
287 	ELSE
288 		FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
289 		APP_EXCEPTION.Raise_Exception;
290 	END IF;
291 END Lock_Row;
292 END;
293