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