DBA Data[Home] [Help]

PACKAGE BODY: APPS.LNS_CUSTOM_PAYMNT_SCHEDS_PKG

Source


1 PACKAGE BODY LNS_CUSTOM_PAYMNT_SCHEDS_PKG AS
2 /* $Header: LNS_CUST_TBLH_B.pls 120.0.12010000.2 2008/09/16 16:52:58 gparuchu ship $ */
3 
4 /* Insert_Row procedure */
5 PROCEDURE Insert_Row(
6 	X_CUSTOM_SCHEDULE_ID		IN OUT NOCOPY NUMBER
7 	,P_LOAN_ID		IN NUMBER
8 	,P_PAYMENT_NUMBER		IN NUMBER	DEFAULT NULL
9 	,P_DUE_DATE		IN DATE	DEFAULT NULL
10 	,P_PRINCIPAL_AMOUNT		IN NUMBER	DEFAULT NULL
11 	,P_INTEREST_AMOUNT		IN NUMBER	DEFAULT NULL
12 	,P_PRINCIPAL_PAID_TODATE		IN NUMBER	DEFAULT NULL
13 	,P_INTEREST_PAID_TODATE		IN NUMBER	DEFAULT NULL
14 	,P_OTHER_AMOUNT		IN NUMBER	DEFAULT NULL
15 	,P_INSTALLMENT_BEGIN_BALANCE		IN NUMBER	DEFAULT NULL
16 	,P_INSTALLMENT_END_BALANCE		IN NUMBER	DEFAULT NULL
17 	,P_CURRENT_TERM_PAYMENT		IN NUMBER	DEFAULT NULL
18 	,P_CREATED_BY		IN NUMBER	DEFAULT NULL
19 	,P_CREATION_DATE		IN DATE	DEFAULT NULL
20 	,P_LAST_UPDATED_BY		IN NUMBER	DEFAULT NULL
21 	,P_LAST_UPDATE_DATE		IN DATE	DEFAULT NULL
22 	,P_LAST_UPDATE_LOGIN		IN NUMBER	DEFAULT NULL
23 	,P_ATTRIBUTE_CATEGORY		IN VARCHAR2	DEFAULT NULL
24 	,P_ATTRIBUTE1		IN VARCHAR2	DEFAULT NULL
25 	,P_ATTRIBUTE2		IN VARCHAR2	DEFAULT NULL
26 	,P_ATTRIBUTE3		IN VARCHAR2	DEFAULT NULL
27 	,P_ATTRIBUTE4		IN VARCHAR2	DEFAULT NULL
28 	,P_ATTRIBUTE5		IN VARCHAR2	DEFAULT NULL
29 	,P_ATTRIBUTE6		IN VARCHAR2	DEFAULT NULL
30 	,P_ATTRIBUTE7		IN VARCHAR2	DEFAULT NULL
31 	,P_ATTRIBUTE8		IN VARCHAR2	DEFAULT NULL
32 	,P_ATTRIBUTE9		IN VARCHAR2	DEFAULT NULL
33 	,P_ATTRIBUTE10		IN VARCHAR2	DEFAULT NULL
34 	,P_ATTRIBUTE11		IN VARCHAR2	DEFAULT NULL
35 	,P_ATTRIBUTE12		IN VARCHAR2	DEFAULT NULL
36 	,P_ATTRIBUTE13		IN VARCHAR2	DEFAULT NULL
37 	,P_ATTRIBUTE14		IN VARCHAR2	DEFAULT NULL
38 	,P_ATTRIBUTE15		IN VARCHAR2	DEFAULT NULL
39 	,P_ATTRIBUTE16		IN VARCHAR2	DEFAULT NULL
40 	,P_ATTRIBUTE17		IN VARCHAR2	DEFAULT NULL
41 	,P_ATTRIBUTE18		IN VARCHAR2	DEFAULT NULL
42 	,P_ATTRIBUTE19		IN VARCHAR2	DEFAULT NULL
43 	,P_ATTRIBUTE20		IN VARCHAR2	DEFAULT NULL
44 	,P_OBJECT_VERSION_NUMBER		IN NUMBER	DEFAULT NULL
45 	,P_FEE_AMOUNT		IN NUMBER	DEFAULT NULL
46 	,P_LOCK_PRIN		IN VARCHAR2 DEFAULT NULL
47 	,P_LOCK_INT  		IN VARCHAR2 DEFAULT NULL
48 ) IS
49 BEGIN
50 	INSERT INTO LNS_CUSTOM_PAYMNT_SCHEDS
51 	(
52 		CUSTOM_SCHEDULE_ID
53 		,LOAN_ID
54 		,PAYMENT_NUMBER
55 		,DUE_DATE
56 		,PRINCIPAL_AMOUNT
57 		,INTEREST_AMOUNT
58 		,PRINCIPAL_PAID_TODATE
59 		,INTEREST_PAID_TODATE
60 		,OTHER_AMOUNT
61 		,INSTALLMENT_BEGIN_BALANCE
62 		,INSTALLMENT_END_BALANCE
63 		,CURRENT_TERM_PAYMENT
64 		,CREATED_BY
65 		,CREATION_DATE
66 		,LAST_UPDATED_BY
67 		,LAST_UPDATE_DATE
68 		,LAST_UPDATE_LOGIN
69 		,ATTRIBUTE_CATEGORY
70 		,ATTRIBUTE1
71 		,ATTRIBUTE2
72 		,ATTRIBUTE3
73 		,ATTRIBUTE4
74 		,ATTRIBUTE5
75 		,ATTRIBUTE6
76 		,ATTRIBUTE7
77 		,ATTRIBUTE8
78 		,ATTRIBUTE9
79 		,ATTRIBUTE10
80 		,ATTRIBUTE11
81 		,ATTRIBUTE12
82 		,ATTRIBUTE13
83 		,ATTRIBUTE14
84 		,ATTRIBUTE15
85 		,ATTRIBUTE16
86 		,ATTRIBUTE17
87 		,ATTRIBUTE18
88 		,ATTRIBUTE19
89 		,ATTRIBUTE20
90 		,OBJECT_VERSION_NUMBER
91 		,FEE_AMOUNT
92 		,LOCK_PRIN
93 		,LOCK_INT
94 	) VALUES (
95 		DECODE(X_CUSTOM_SCHEDULE_ID, FND_API.G_MISS_NUM, LNS_CUSTOM_PAYMNT_SCHEDS_S.NEXTVAL, NULL, LNS_CUSTOM_PAYMNT_SCHEDS_S.NEXTVAL, X_CUSTOM_SCHEDULE_ID)
96 		,DECODE(P_LOAN_ID, FND_API.G_MISS_NUM, NULL, P_LOAN_ID)
97 		,DECODE(P_PAYMENT_NUMBER, FND_API.G_MISS_NUM, NULL, P_PAYMENT_NUMBER)
98 		,DECODE(P_DUE_DATE, FND_API.G_MISS_DATE, NULL, P_DUE_DATE)
99 		,DECODE(P_PRINCIPAL_AMOUNT, FND_API.G_MISS_NUM, NULL, P_PRINCIPAL_AMOUNT)
100 		,DECODE(P_INTEREST_AMOUNT, FND_API.G_MISS_NUM, NULL, P_INTEREST_AMOUNT)
101 		,DECODE(P_PRINCIPAL_PAID_TODATE, FND_API.G_MISS_NUM, NULL, P_PRINCIPAL_PAID_TODATE)
102 		,DECODE(P_INTEREST_PAID_TODATE, FND_API.G_MISS_NUM, NULL, P_INTEREST_PAID_TODATE)
103 		,DECODE(P_OTHER_AMOUNT, FND_API.G_MISS_NUM, NULL, P_OTHER_AMOUNT)
104 		,DECODE(P_INSTALLMENT_BEGIN_BALANCE, FND_API.G_MISS_NUM, NULL, P_INSTALLMENT_BEGIN_BALANCE)
105 		,DECODE(P_INSTALLMENT_END_BALANCE, FND_API.G_MISS_NUM, NULL, P_INSTALLMENT_END_BALANCE)
106 		,DECODE(P_CURRENT_TERM_PAYMENT, FND_API.G_MISS_NUM, NULL, P_CURRENT_TERM_PAYMENT)
107 		,LNS_UTILITY_PUB.CREATED_BY
108 		,LNS_UTILITY_PUB.CREATION_DATE
109 		,LNS_UTILITY_PUB.LAST_UPDATED_BY
110 		,LNS_UTILITY_PUB.LAST_UPDATE_DATE
111 		,LNS_UTILITY_PUB.LAST_UPDATE_LOGIN
112 		,DECODE(P_ATTRIBUTE_CATEGORY, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE_CATEGORY)
113 		,DECODE(P_ATTRIBUTE1, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE1)
114 		,DECODE(P_ATTRIBUTE2, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE2)
115 		,DECODE(P_ATTRIBUTE3, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE3)
116 		,DECODE(P_ATTRIBUTE4, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE4)
117 		,DECODE(P_ATTRIBUTE5, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE5)
118 		,DECODE(P_ATTRIBUTE6, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE6)
119 		,DECODE(P_ATTRIBUTE7, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE7)
120 		,DECODE(P_ATTRIBUTE8, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE8)
121 		,DECODE(P_ATTRIBUTE9, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE9)
122 		,DECODE(P_ATTRIBUTE10, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE10)
123 		,DECODE(P_ATTRIBUTE11, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE11)
124 		,DECODE(P_ATTRIBUTE12, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE12)
125 		,DECODE(P_ATTRIBUTE13, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE13)
126 		,DECODE(P_ATTRIBUTE14, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE14)
127 		,DECODE(P_ATTRIBUTE15, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE15)
128 		,DECODE(P_ATTRIBUTE16, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE16)
129 		,DECODE(P_ATTRIBUTE17, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE17)
130 		,DECODE(P_ATTRIBUTE18, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE18)
131 		,DECODE(P_ATTRIBUTE19, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE19)
132 		,DECODE(P_ATTRIBUTE20, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE20)
133 		,DECODE(P_OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, NULL, P_OBJECT_VERSION_NUMBER)
134 		,DECODE(P_FEE_AMOUNT, FND_API.G_MISS_NUM, NULL, P_FEE_AMOUNT)
135 		,DECODE(P_LOCK_PRIN, FND_API.G_MISS_CHAR, NULL, P_LOCK_PRIN)
136 		,DECODE(P_LOCK_INT, FND_API.G_MISS_CHAR, NULL, P_LOCK_INT)
137 	) RETURNING
138 		 CUSTOM_SCHEDULE_ID
139 	 INTO
140 		 X_CUSTOM_SCHEDULE_ID;
141 END Insert_Row;
142 
143 /* Update_Row procedure */
144 PROCEDURE Update_Row(
145 	P_CUSTOM_SCHEDULE_ID		IN NUMBER
146 	,P_LOAN_ID		IN NUMBER	DEFAULT NULL
147 	,P_PAYMENT_NUMBER		IN NUMBER	DEFAULT NULL
148 	,P_DUE_DATE		IN DATE	DEFAULT NULL
149 	,P_PRINCIPAL_AMOUNT		IN NUMBER	DEFAULT NULL
150 	,P_INTEREST_AMOUNT		IN NUMBER	DEFAULT NULL
151 	,P_PRINCIPAL_PAID_TODATE		IN NUMBER	DEFAULT NULL
152 	,P_INTEREST_PAID_TODATE		IN NUMBER	DEFAULT NULL
153 	,P_OTHER_AMOUNT		IN NUMBER	DEFAULT NULL
154 	,P_INSTALLMENT_BEGIN_BALANCE		IN NUMBER	DEFAULT NULL
155 	,P_INSTALLMENT_END_BALANCE		IN NUMBER	DEFAULT NULL
156 	,P_CURRENT_TERM_PAYMENT		IN NUMBER	DEFAULT NULL
157 	,P_LAST_UPDATED_BY		IN NUMBER	DEFAULT NULL
158 	,P_LAST_UPDATE_DATE		IN DATE	DEFAULT NULL
159 	,P_LAST_UPDATE_LOGIN		IN NUMBER	DEFAULT NULL
160 	,P_ATTRIBUTE_CATEGORY		IN VARCHAR2	DEFAULT NULL
161 	,P_ATTRIBUTE1		IN VARCHAR2	DEFAULT NULL
162 	,P_ATTRIBUTE2		IN VARCHAR2	DEFAULT NULL
163 	,P_ATTRIBUTE3		IN VARCHAR2	DEFAULT NULL
164 	,P_ATTRIBUTE4		IN VARCHAR2	DEFAULT NULL
165 	,P_ATTRIBUTE5		IN VARCHAR2	DEFAULT NULL
166 	,P_ATTRIBUTE6		IN VARCHAR2	DEFAULT NULL
167 	,P_ATTRIBUTE7		IN VARCHAR2	DEFAULT NULL
168 	,P_ATTRIBUTE8		IN VARCHAR2	DEFAULT NULL
169 	,P_ATTRIBUTE9		IN VARCHAR2	DEFAULT NULL
170 	,P_ATTRIBUTE10		IN VARCHAR2	DEFAULT NULL
171 	,P_ATTRIBUTE11		IN VARCHAR2	DEFAULT NULL
172 	,P_ATTRIBUTE12		IN VARCHAR2	DEFAULT NULL
173 	,P_ATTRIBUTE13		IN VARCHAR2	DEFAULT NULL
174 	,P_ATTRIBUTE14		IN VARCHAR2	DEFAULT NULL
175 	,P_ATTRIBUTE15		IN VARCHAR2	DEFAULT NULL
176 	,P_ATTRIBUTE16		IN VARCHAR2	DEFAULT NULL
177 	,P_ATTRIBUTE17		IN VARCHAR2	DEFAULT NULL
178 	,P_ATTRIBUTE18		IN VARCHAR2	DEFAULT NULL
179 	,P_ATTRIBUTE19		IN VARCHAR2	DEFAULT NULL
180 	,P_ATTRIBUTE20		IN VARCHAR2	DEFAULT NULL
181 	,P_OBJECT_VERSION_NUMBER		IN NUMBER	DEFAULT NULL
182 	,P_FEE_AMOUNT		IN NUMBER	DEFAULT NULL
183 	,P_LOCK_PRIN		IN VARCHAR2 DEFAULT NULL
184 	,P_LOCK_INT  		IN VARCHAR2 DEFAULT NULL
185 ) IS
186 BEGIN
187 	UPDATE LNS_CUSTOM_PAYMNT_SCHEDS SET
188 		LOAN_ID = DECODE(P_LOAN_ID, NULL, LOAN_ID, FND_API.G_MISS_NUM, NULL, P_LOAN_ID)
189 		,PAYMENT_NUMBER = DECODE(P_PAYMENT_NUMBER, NULL, PAYMENT_NUMBER, FND_API.G_MISS_NUM, NULL, P_PAYMENT_NUMBER)
190 		,DUE_DATE = DECODE(P_DUE_DATE, NULL, DUE_DATE, FND_API.G_MISS_DATE, NULL, P_DUE_DATE)
191 		,PRINCIPAL_AMOUNT = DECODE(P_PRINCIPAL_AMOUNT, NULL, PRINCIPAL_AMOUNT, FND_API.G_MISS_NUM, NULL, P_PRINCIPAL_AMOUNT)
192 		,INTEREST_AMOUNT = DECODE(P_INTEREST_AMOUNT, NULL, INTEREST_AMOUNT, FND_API.G_MISS_NUM, NULL, P_INTEREST_AMOUNT)
193 		,PRINCIPAL_PAID_TODATE = DECODE(P_PRINCIPAL_PAID_TODATE, NULL, PRINCIPAL_PAID_TODATE, FND_API.G_MISS_NUM, NULL, P_PRINCIPAL_PAID_TODATE)
194 		,INTEREST_PAID_TODATE = DECODE(P_INTEREST_PAID_TODATE, NULL, INTEREST_PAID_TODATE, FND_API.G_MISS_NUM, NULL, P_INTEREST_PAID_TODATE)
195 		,OTHER_AMOUNT = DECODE(P_OTHER_AMOUNT, NULL, OTHER_AMOUNT, FND_API.G_MISS_NUM, NULL, P_OTHER_AMOUNT)
196 		,INSTALLMENT_BEGIN_BALANCE = DECODE(P_INSTALLMENT_BEGIN_BALANCE, NULL, INSTALLMENT_BEGIN_BALANCE, FND_API.G_MISS_NUM, NULL, P_INSTALLMENT_BEGIN_BALANCE)
197 		,INSTALLMENT_END_BALANCE = DECODE(P_INSTALLMENT_END_BALANCE, NULL, INSTALLMENT_END_BALANCE, FND_API.G_MISS_NUM, NULL, P_INSTALLMENT_END_BALANCE)
198 		,CURRENT_TERM_PAYMENT = DECODE(P_CURRENT_TERM_PAYMENT, NULL, CURRENT_TERM_PAYMENT, FND_API.G_MISS_NUM, NULL, P_CURRENT_TERM_PAYMENT)
199 		,LAST_UPDATED_BY = LNS_UTILITY_PUB.LAST_UPDATED_BY
200 		,LAST_UPDATE_DATE = LNS_UTILITY_PUB.LAST_UPDATE_DATE
201 		,LAST_UPDATE_LOGIN = LNS_UTILITY_PUB.LAST_UPDATE_LOGIN
202 		,ATTRIBUTE_CATEGORY = DECODE(P_ATTRIBUTE_CATEGORY, NULL, ATTRIBUTE_CATEGORY, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE_CATEGORY)
203 		,ATTRIBUTE1 = DECODE(P_ATTRIBUTE1, NULL, ATTRIBUTE1, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE1)
204 		,ATTRIBUTE2 = DECODE(P_ATTRIBUTE2, NULL, ATTRIBUTE2, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE2)
205 		,ATTRIBUTE3 = DECODE(P_ATTRIBUTE3, NULL, ATTRIBUTE3, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE3)
206 		,ATTRIBUTE4 = DECODE(P_ATTRIBUTE4, NULL, ATTRIBUTE4, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE4)
207 		,ATTRIBUTE5 = DECODE(P_ATTRIBUTE5, NULL, ATTRIBUTE5, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE5)
208 		,ATTRIBUTE6 = DECODE(P_ATTRIBUTE6, NULL, ATTRIBUTE6, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE6)
209 		,ATTRIBUTE7 = DECODE(P_ATTRIBUTE7, NULL, ATTRIBUTE7, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE7)
210 		,ATTRIBUTE8 = DECODE(P_ATTRIBUTE8, NULL, ATTRIBUTE8, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE8)
211 		,ATTRIBUTE9 = DECODE(P_ATTRIBUTE9, NULL, ATTRIBUTE9, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE9)
212 		,ATTRIBUTE10 = DECODE(P_ATTRIBUTE10, NULL, ATTRIBUTE10, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE10)
213 		,ATTRIBUTE11 = DECODE(P_ATTRIBUTE11, NULL, ATTRIBUTE11, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE11)
214 		,ATTRIBUTE12 = DECODE(P_ATTRIBUTE12, NULL, ATTRIBUTE12, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE12)
215 		,ATTRIBUTE13 = DECODE(P_ATTRIBUTE13, NULL, ATTRIBUTE13, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE13)
216 		,ATTRIBUTE14 = DECODE(P_ATTRIBUTE14, NULL, ATTRIBUTE14, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE14)
217 		,ATTRIBUTE15 = DECODE(P_ATTRIBUTE15, NULL, ATTRIBUTE15, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE15)
218 		,ATTRIBUTE16 = DECODE(P_ATTRIBUTE16, NULL, ATTRIBUTE16, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE16)
219 		,ATTRIBUTE17 = DECODE(P_ATTRIBUTE17, NULL, ATTRIBUTE17, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE17)
220 		,ATTRIBUTE18 = DECODE(P_ATTRIBUTE18, NULL, ATTRIBUTE18, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE18)
221 		,ATTRIBUTE19 = DECODE(P_ATTRIBUTE19, NULL, ATTRIBUTE19, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE19)
222 		,ATTRIBUTE20 = DECODE(P_ATTRIBUTE20, NULL, ATTRIBUTE20, FND_API.G_MISS_CHAR, NULL, P_ATTRIBUTE20)
223 		,OBJECT_VERSION_NUMBER = DECODE(P_OBJECT_VERSION_NUMBER, NULL, OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, NULL, P_OBJECT_VERSION_NUMBER)
224 		,FEE_AMOUNT = DECODE(P_FEE_AMOUNT, NULL, FEE_AMOUNT, FND_API.G_MISS_NUM, NULL, P_FEE_AMOUNT)
225 		,LOCK_PRIN = DECODE(P_LOCK_PRIN, NULL, LOCK_PRIN, FND_API.G_MISS_CHAR, NULL, P_LOCK_PRIN)
226 		,LOCK_INT = DECODE(P_LOCK_INT, NULL, LOCK_INT, FND_API.G_MISS_CHAR, NULL, P_LOCK_INT)
227 	 WHERE CUSTOM_SCHEDULE_ID = P_CUSTOM_SCHEDULE_ID;
228 
229 	if (sql%notfound) then
230 		raise no_data_found;
231 	end if;
232 END Update_Row;
233 
234 /* Delete_Row procedure */
235 PROCEDURE Delete_Row(P_CUSTOM_SCHEDULE_ID IN NUMBER) IS
236 BEGIN
237 	DELETE FROM LNS_CUSTOM_PAYMNT_SCHEDS
238 		WHERE CUSTOM_SCHEDULE_ID = P_CUSTOM_SCHEDULE_ID;
239 
240 	if (sql%notfound) then
241 		raise no_data_found;
242 	end if;
243 END Delete_Row;
244 
245 /* Lock_Row procedure */
246 PROCEDURE Lock_Row(
247 	P_CUSTOM_SCHEDULE_ID		IN NUMBER
248 	,P_LOAN_ID		IN NUMBER	DEFAULT NULL
249 	,P_PAYMENT_NUMBER		IN NUMBER	DEFAULT NULL
250 	,P_DUE_DATE		IN DATE	DEFAULT NULL
251 	,P_PRINCIPAL_AMOUNT		IN NUMBER	DEFAULT NULL
252 	,P_INTEREST_AMOUNT		IN NUMBER	DEFAULT NULL
253 	,P_PRINCIPAL_PAID_TODATE		IN NUMBER	DEFAULT NULL
254 	,P_INTEREST_PAID_TODATE		IN NUMBER	DEFAULT NULL
255 	,P_OTHER_AMOUNT		IN NUMBER	DEFAULT NULL
256 	,P_INSTALLMENT_BEGIN_BALANCE		IN NUMBER	DEFAULT NULL
257 	,P_INSTALLMENT_END_BALANCE		IN NUMBER	DEFAULT NULL
258 	,P_CURRENT_TERM_PAYMENT		IN NUMBER	DEFAULT NULL
259 	,P_CREATED_BY		IN NUMBER	DEFAULT NULL
260 	,P_CREATION_DATE		IN DATE	DEFAULT NULL
261 	,P_LAST_UPDATED_BY		IN NUMBER	DEFAULT NULL
262 	,P_LAST_UPDATE_DATE		IN DATE	DEFAULT NULL
263 	,P_LAST_UPDATE_LOGIN		IN NUMBER	DEFAULT NULL
264 	,P_ATTRIBUTE_CATEGORY		IN VARCHAR2	DEFAULT NULL
265 	,P_ATTRIBUTE1		IN VARCHAR2	DEFAULT NULL
266 	,P_ATTRIBUTE2		IN VARCHAR2	DEFAULT NULL
267 	,P_ATTRIBUTE3		IN VARCHAR2	DEFAULT NULL
268 	,P_ATTRIBUTE4		IN VARCHAR2	DEFAULT NULL
269 	,P_ATTRIBUTE5		IN VARCHAR2	DEFAULT NULL
270 	,P_ATTRIBUTE6		IN VARCHAR2	DEFAULT NULL
271 	,P_ATTRIBUTE7		IN VARCHAR2	DEFAULT NULL
272 	,P_ATTRIBUTE8		IN VARCHAR2	DEFAULT NULL
273 	,P_ATTRIBUTE9		IN VARCHAR2	DEFAULT NULL
274 	,P_ATTRIBUTE10		IN VARCHAR2	DEFAULT NULL
275 	,P_ATTRIBUTE11		IN VARCHAR2	DEFAULT NULL
276 	,P_ATTRIBUTE12		IN VARCHAR2	DEFAULT NULL
277 	,P_ATTRIBUTE13		IN VARCHAR2	DEFAULT NULL
278 	,P_ATTRIBUTE14		IN VARCHAR2	DEFAULT NULL
279 	,P_ATTRIBUTE15		IN VARCHAR2	DEFAULT NULL
280 	,P_ATTRIBUTE16		IN VARCHAR2	DEFAULT NULL
281 	,P_ATTRIBUTE17		IN VARCHAR2	DEFAULT NULL
282 	,P_ATTRIBUTE18		IN VARCHAR2	DEFAULT NULL
283 	,P_ATTRIBUTE19		IN VARCHAR2	DEFAULT NULL
284 	,P_ATTRIBUTE20		IN VARCHAR2	DEFAULT NULL
285 	,P_OBJECT_VERSION_NUMBER		IN NUMBER	DEFAULT NULL
286 	,P_FEE_AMOUNT		IN NUMBER	DEFAULT NULL
287 	,P_LOCK_PRIN		IN VARCHAR2 DEFAULT NULL
288 	,P_LOCK_INT  		IN VARCHAR2 DEFAULT NULL
289 ) IS
290 	CURSOR C IS SELECT * FROM LNS_CUSTOM_PAYMNT_SCHEDS
291 		WHERE CUSTOM_SCHEDULE_ID = P_CUSTOM_SCHEDULE_ID
292 		FOR UPDATE of CUSTOM_SCHEDULE_ID NOWAIT;
293 	Recinfo C%ROWTYPE;
294 BEGIN
295 	OPEN C;
296 	FETCH C INTO Recinfo;
297 	IF (C%NOTFOUND) THEN
298 		CLOSE C;
299 		FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
300 		APP_EXCEPTION.Raise_Exception;
301 	END IF;
302 	CLOSE C;
303 
304 	IF (
305 		(Recinfo.CUSTOM_SCHEDULE_ID = P_CUSTOM_SCHEDULE_ID)
306 		AND ( (Recinfo.LOAN_ID = P_LOAN_ID)
307 			OR ( (Recinfo.LOAN_ID IS NULL)
308 				AND (P_LOAN_ID IS NULL)))
312 		AND ( (Recinfo.DUE_DATE = P_DUE_DATE)
309 		AND ( (Recinfo.PAYMENT_NUMBER = P_PAYMENT_NUMBER)
310 			OR ( (Recinfo.PAYMENT_NUMBER IS NULL)
311 				AND (P_PAYMENT_NUMBER IS NULL)))
313 			OR ( (Recinfo.DUE_DATE IS NULL)
314 				AND (P_DUE_DATE IS NULL)))
315 		AND ( (Recinfo.PRINCIPAL_AMOUNT = P_PRINCIPAL_AMOUNT)
316 			OR ( (Recinfo.PRINCIPAL_AMOUNT IS NULL)
317 				AND (P_PRINCIPAL_AMOUNT IS NULL)))
318 		AND ( (Recinfo.INTEREST_AMOUNT = P_INTEREST_AMOUNT)
319 			OR ( (Recinfo.INTEREST_AMOUNT IS NULL)
320 				AND (P_INTEREST_AMOUNT IS NULL)))
321 		AND ( (Recinfo.PRINCIPAL_PAID_TODATE = P_PRINCIPAL_PAID_TODATE)
322 			OR ( (Recinfo.PRINCIPAL_PAID_TODATE IS NULL)
323 				AND (P_PRINCIPAL_PAID_TODATE IS NULL)))
324 		AND ( (Recinfo.INTEREST_PAID_TODATE = P_INTEREST_PAID_TODATE)
325 			OR ( (Recinfo.INTEREST_PAID_TODATE IS NULL)
326 				AND (P_INTEREST_PAID_TODATE IS NULL)))
327 		AND ( (Recinfo.OTHER_AMOUNT = P_OTHER_AMOUNT)
328 			OR ( (Recinfo.OTHER_AMOUNT IS NULL)
329 				AND (P_OTHER_AMOUNT IS NULL)))
330 		AND ( (Recinfo.INSTALLMENT_BEGIN_BALANCE = P_INSTALLMENT_BEGIN_BALANCE)
331 			OR ( (Recinfo.INSTALLMENT_BEGIN_BALANCE IS NULL)
332 				AND (P_INSTALLMENT_BEGIN_BALANCE IS NULL)))
333 		AND ( (Recinfo.INSTALLMENT_END_BALANCE = P_INSTALLMENT_END_BALANCE)
334 			OR ( (Recinfo.INSTALLMENT_END_BALANCE IS NULL)
335 				AND (P_INSTALLMENT_END_BALANCE IS NULL)))
336 		AND ( (Recinfo.CURRENT_TERM_PAYMENT = P_CURRENT_TERM_PAYMENT)
337 			OR ( (Recinfo.CURRENT_TERM_PAYMENT IS NULL)
338 				AND (P_CURRENT_TERM_PAYMENT IS NULL)))
339 		AND ( (Recinfo.CREATED_BY = P_CREATED_BY)
340 			OR ( (Recinfo.CREATED_BY IS NULL)
341 				AND (P_CREATED_BY IS NULL)))
342 		AND ( (Recinfo.CREATION_DATE = P_CREATION_DATE)
343 			OR ( (Recinfo.CREATION_DATE IS NULL)
344 				AND (P_CREATION_DATE IS NULL)))
345 		AND ( (Recinfo.LAST_UPDATED_BY = P_LAST_UPDATED_BY)
346 			OR ( (Recinfo.LAST_UPDATED_BY IS NULL)
347 				AND (P_LAST_UPDATED_BY IS NULL)))
348 		AND ( (Recinfo.LAST_UPDATE_DATE = P_LAST_UPDATE_DATE)
349 			OR ( (Recinfo.LAST_UPDATE_DATE IS NULL)
350 				AND (P_LAST_UPDATE_DATE IS NULL)))
351 		AND ( (Recinfo.LAST_UPDATE_LOGIN = P_LAST_UPDATE_LOGIN)
352 			OR ( (Recinfo.LAST_UPDATE_LOGIN IS NULL)
353 				AND (P_LAST_UPDATE_LOGIN IS NULL)))
354 		AND ( (Recinfo.ATTRIBUTE_CATEGORY = P_ATTRIBUTE_CATEGORY)
355 			OR ( (Recinfo.ATTRIBUTE_CATEGORY IS NULL)
356 				AND (P_ATTRIBUTE_CATEGORY IS NULL)))
357 		AND ( (Recinfo.ATTRIBUTE1 = P_ATTRIBUTE1)
358 			OR ( (Recinfo.ATTRIBUTE1 IS NULL)
359 				AND (P_ATTRIBUTE1 IS NULL)))
360 		AND ( (Recinfo.ATTRIBUTE2 = P_ATTRIBUTE2)
361 			OR ( (Recinfo.ATTRIBUTE2 IS NULL)
362 				AND (P_ATTRIBUTE2 IS NULL)))
363 		AND ( (Recinfo.ATTRIBUTE3 = P_ATTRIBUTE3)
364 			OR ( (Recinfo.ATTRIBUTE3 IS NULL)
365 				AND (P_ATTRIBUTE3 IS NULL)))
366 		AND ( (Recinfo.ATTRIBUTE4 = P_ATTRIBUTE4)
367 			OR ( (Recinfo.ATTRIBUTE4 IS NULL)
368 				AND (P_ATTRIBUTE4 IS NULL)))
369 		AND ( (Recinfo.ATTRIBUTE5 = P_ATTRIBUTE5)
370 			OR ( (Recinfo.ATTRIBUTE5 IS NULL)
371 				AND (P_ATTRIBUTE5 IS NULL)))
372 		AND ( (Recinfo.ATTRIBUTE6 = P_ATTRIBUTE6)
373 			OR ( (Recinfo.ATTRIBUTE6 IS NULL)
374 				AND (P_ATTRIBUTE6 IS NULL)))
375 		AND ( (Recinfo.ATTRIBUTE7 = P_ATTRIBUTE7)
376 			OR ( (Recinfo.ATTRIBUTE7 IS NULL)
377 				AND (P_ATTRIBUTE7 IS NULL)))
378 		AND ( (Recinfo.ATTRIBUTE8 = P_ATTRIBUTE8)
379 			OR ( (Recinfo.ATTRIBUTE8 IS NULL)
380 				AND (P_ATTRIBUTE8 IS NULL)))
381 		AND ( (Recinfo.ATTRIBUTE9 = P_ATTRIBUTE9)
382 			OR ( (Recinfo.ATTRIBUTE9 IS NULL)
383 				AND (P_ATTRIBUTE9 IS NULL)))
384 		AND ( (Recinfo.ATTRIBUTE10 = P_ATTRIBUTE10)
385 			OR ( (Recinfo.ATTRIBUTE10 IS NULL)
386 				AND (P_ATTRIBUTE10 IS NULL)))
387 		AND ( (Recinfo.ATTRIBUTE11 = P_ATTRIBUTE11)
388 			OR ( (Recinfo.ATTRIBUTE11 IS NULL)
389 				AND (P_ATTRIBUTE11 IS NULL)))
390 		AND ( (Recinfo.ATTRIBUTE12 = P_ATTRIBUTE12)
391 			OR ( (Recinfo.ATTRIBUTE12 IS NULL)
392 				AND (P_ATTRIBUTE12 IS NULL)))
393 		AND ( (Recinfo.ATTRIBUTE13 = P_ATTRIBUTE13)
394 			OR ( (Recinfo.ATTRIBUTE13 IS NULL)
395 				AND (P_ATTRIBUTE13 IS NULL)))
396 		AND ( (Recinfo.ATTRIBUTE14 = P_ATTRIBUTE14)
397 			OR ( (Recinfo.ATTRIBUTE14 IS NULL)
398 				AND (P_ATTRIBUTE14 IS NULL)))
399 		AND ( (Recinfo.ATTRIBUTE15 = P_ATTRIBUTE15)
400 			OR ( (Recinfo.ATTRIBUTE15 IS NULL)
401 				AND (P_ATTRIBUTE15 IS NULL)))
402 		AND ( (Recinfo.ATTRIBUTE16 = P_ATTRIBUTE16)
403 			OR ( (Recinfo.ATTRIBUTE16 IS NULL)
404 				AND (P_ATTRIBUTE16 IS NULL)))
405 		AND ( (Recinfo.ATTRIBUTE17 = P_ATTRIBUTE17)
406 			OR ( (Recinfo.ATTRIBUTE17 IS NULL)
407 				AND (P_ATTRIBUTE17 IS NULL)))
408 		AND ( (Recinfo.ATTRIBUTE18 = P_ATTRIBUTE18)
409 			OR ( (Recinfo.ATTRIBUTE18 IS NULL)
410 				AND (P_ATTRIBUTE18 IS NULL)))
411 		AND ( (Recinfo.ATTRIBUTE19 = P_ATTRIBUTE19)
412 			OR ( (Recinfo.ATTRIBUTE19 IS NULL)
413 				AND (P_ATTRIBUTE19 IS NULL)))
414 		AND ( (Recinfo.ATTRIBUTE20 = P_ATTRIBUTE20)
415 			OR ( (Recinfo.ATTRIBUTE20 IS NULL)
416 				AND (P_ATTRIBUTE20 IS NULL)))
417 		AND ( (Recinfo.OBJECT_VERSION_NUMBER = P_OBJECT_VERSION_NUMBER)
418 			OR ( (Recinfo.OBJECT_VERSION_NUMBER IS NULL)
419 				AND (P_OBJECT_VERSION_NUMBER IS NULL)))
420 		AND ( (Recinfo.FEE_AMOUNT = P_FEE_AMOUNT)
421 			OR ( (Recinfo.FEE_AMOUNT IS NULL)
422 				AND (P_FEE_AMOUNT IS NULL)))
423 		AND ( (Recinfo.LOCK_PRIN = P_LOCK_PRIN)
424 			OR ( (Recinfo.LOCK_PRIN IS NULL)
425 				AND (P_LOCK_PRIN IS NULL)))
426 		AND ( (Recinfo.LOCK_INT = P_LOCK_INT)
427 			OR ( (Recinfo.LOCK_INT IS NULL)
428 				AND (P_LOCK_INT IS NULL)))
429 	   ) THEN
430 		return;
431 	ELSE
432 		FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
433 		APP_EXCEPTION.Raise_Exception;
434 	END IF;
435 END Lock_Row;
436 END;
437