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