[Home] [Help]
PACKAGE BODY: APPS.LNS_TERMS_PKG
Source
1 PACKAGE BODY LNS_TERMS_PKG AS
2 /*$Header: LNS_TERMS_TBLH_B.pls 120.16.12020000.2 2012/07/19 21:00:33 scherkas ship $ */
3
4 PROCEDURE Insert_Row (
5 X_TERM_ID IN OUT NOCOPY NUMBER,
6 X_LOAN_ID IN NUMBER,
7 X_DAY_COUNT_METHOD IN VARCHAR2,
8 X_BASED_ON_BALANCE IN VARCHAR2,
9 X_FIRST_RATE_CHANGE_DATE IN DATE,
10 X_NEXT_RATE_CHANGE_DATE IN DATE,
11 X_PERCENT_INCREASE IN NUMBER,
12 X_PERCENT_INCREASE_TERM IN VARCHAR2,
13 X_PAYMENT_APPLICATION_ORDER IN VARCHAR2,
14 X_PREPAY_PENALTY_FLAG IN VARCHAR2,
15 X_PREPAY_PENALTY_DATE IN DATE,
16 X_CEILING_RATE IN NUMBER,
17 X_FLOOR_RATE IN NUMBER,
18 X_DELINQUENCY_THRESHOLD_NUMBER IN NUMBER,
19 X_DELINQUENCY_THRESHOLD_AMOUNT IN NUMBER,
20 X_CALCULATION_METHOD IN VARCHAR2,
21 X_REAMORTIZE_UNDER_PAYMENT IN VARCHAR2,
22 X_REAMORTIZE_OVER_PAYMENT IN VARCHAR2,
23 X_REAMORTIZE_WITH_INTEREST IN VARCHAR2,
24 X_LOAN_PAYMENT_FREQUENCY IN VARCHAR2,
25 X_INTEREST_COMPOUNDING_FREQ IN VARCHAR2,
26 X_OBJECT_VERSION_NUMBER IN NUMBER,
27 X_AMORTIZATION_FREQUENCY IN VARCHAR2,
28 X_NUMBER_GRACE_DAYS IN NUMBER,
29 X_RATE_TYPE IN VARCHAR2,
30 X_INDEX_NAME IN VARCHAR2,
31 X_ADJUSTMENT_FREQUENCY IN NUMBER,
32 X_ADJUSTMENT_FREQUENCY_TYPE IN VARCHAR2,
33 X_FIXED_RATE_PERIOD IN NUMBER,
34 X_FIXED_RATE_PERIOD_TYPE IN VARCHAR2,
35 X_FIRST_PAYMENT_DATE IN DATE,
36 X_NEXT_PAYMENT_DUE_DATE IN DATE,
37 X_OPEN_FIRST_PAYMENT_DATE IN DATE,
38 X_OPEN_PAYMENT_FREQUENCY IN VARCHAR2,
39 X_OPEN_NEXT_PAYMENT_DATE IN DATE,
40 X_LOCK_IN_DATE IN DATE,
41 X_LOCK_TO_DATE IN DATE,
42 X_RATE_CHANGE_FREQUENCY IN VARCHAR2,
43 X_INDEX_RATE_ID IN NUMBER,
44 X_PERCENT_INCREASE_LIFE IN NUMBER,
45 X_FIRST_PERCENT_INCREASE IN NUMBER,
46 X_OPEN_PERCENT_INCREASE IN NUMBER,
47 X_OPEN_PERCENT_INCREASE_LIFE IN NUMBER,
48 X_OPEN_FIRST_PERCENT_INCREASE IN NUMBER,
49 X_PMT_APPL_ORDER_SCOPE IN VARCHAR2,
50 X_OPEN_CEILING_RATE IN NUMBER,
51 X_OPEN_FLOOR_RATE IN NUMBER,
52 X_OPEN_INDEX_DATE IN DATE,
53 X_TERM_INDEX_DATE IN DATE,
54 X_OPEN_PROJECTED_RATE IN NUMBER,
55 X_TERM_PROJECTED_RATE IN NUMBER,
56 X_PAYMENT_CALC_METHOD IN VARCHAR2,
57 X_CUSTOM_CALC_METHOD IN VARCHAR2,
58 X_ORIG_PAY_CALC_METHOD IN VARCHAR2,
59 X_PRIN_FIRST_PAY_DATE IN DATE,
60 X_PRIN_PAYMENT_FREQUENCY IN VARCHAR2,
61 X_PENAL_INT_RATE IN NUMBER,
62 X_PENAL_INT_GRACE_DAYS IN NUMBER,
63 X_CALC_ADD_INT_UNPAID_PRIN IN VARCHAR2,
64 X_CALC_ADD_INT_UNPAID_INT IN VARCHAR2,
65 X_REAMORTIZE_ON_FUNDING IN VARCHAR2,
66 X_DEFAULT_THRESHOLD_AMOUNT IN NUMBER,
67 X_CUSTOM_SCHED_DESC IN VARCHAR2,
68 X_CAPITALIZE_INT IN VARCHAR2,
69 X_CALC_EARLY_PAY_CR IN VARCHAR2,
70 X_FLUCTUATE_EQ_PAY_AMOUNT IN VARCHAR2
71
72 ) IS
73
74 BEGIN
75
76 INSERT INTO LNS_TERMS
77 (
78 TERM_ID
79 ,LOAN_ID
80 ,LAST_UPDATE_DATE
81 ,LAST_UPDATED_BY
82 ,LAST_UPDATE_LOGIN
83 ,CREATION_DATE
84 ,CREATED_BY
85 ,OBJECT_VERSION_NUMBER
86 ,DAY_COUNT_METHOD
87 ,BASED_ON_BALANCE
88 ,FIRST_RATE_CHANGE_DATE
89 ,NEXT_RATE_CHANGE_DATE
90 ,PERCENT_INCREASE
91 ,PERCENT_INCREASE_TERM
92 ,PAYMENT_APPLICATION_ORDER
93 ,PREPAY_PENALTY_FLAG
94 ,PREPAY_PENALTY_DATE
95 ,CEILING_RATE
96 ,FLOOR_RATE
97 ,DELINQUENCY_THRESHOLD_NUMBER
98 ,DELINQUENCY_THRESHOLD_AMOUNT
99 ,CALCULATION_METHOD
100 ,REAMORTIZE_UNDER_PAYMENT
101 ,REAMORTIZE_OVER_PAYMENT
102 ,REAMORTIZE_WITH_INTEREST
103 ,LOAN_PAYMENT_FREQUENCY
104 ,INTEREST_COMPOUNDING_FREQ
105 ,AMORTIZATION_FREQUENCY
106 ,NUMBER_GRACE_DAYS
107 ,RATE_TYPE
108 ,INDEX_NAME
109 ,ADJUSTMENT_FREQUENCY
110 ,ADJUSTMENT_FREQUENCY_TYPE
111 ,FIXED_RATE_PERIOD
112 ,FIXED_RATE_PERIOD_TYPE
113 ,FIRST_PAYMENT_DATE
114 ,NEXT_PAYMENT_DUE_DATE
115 ,OPEN_FIRST_PAYMENT_DATE
116 ,OPEN_PAYMENT_FREQUENCY
117 ,OPEN_NEXT_PAYMENT_DATE
118 ,LOCK_IN_DATE
119 ,LOCK_TO_DATE
120 ,RATE_CHANGE_FREQUENCY
121 ,INDEX_RATE_ID
122 ,PERCENT_INCREASE_LIFE
123 ,FIRST_PERCENT_INCREASE
124 ,OPEN_PERCENT_INCREASE
125 ,OPEN_PERCENT_INCREASE_LIFE
126 ,OPEN_FIRST_PERCENT_INCREASE
127 ,PMT_APPL_ORDER_SCOPE
128 ,OPEN_CEILING_RATE
129 ,OPEN_FLOOR_RATE
130 ,OPEN_INDEX_DATE
131 ,TERM_INDEX_DATE
132 ,OPEN_PROJECTED_RATE
133 ,TERM_PROJECTED_RATE
134 ,PAYMENT_CALC_METHOD
135 ,CUSTOM_CALC_METHOD
136 ,ORIG_PAY_CALC_METHOD
137 ,PRIN_FIRST_PAY_DATE
138 ,PRIN_PAYMENT_FREQUENCY
139 ,PENAL_INT_RATE
140 ,PENAL_INT_GRACE_DAYS
141 ,CALC_ADD_INT_UNPAID_PRIN
142 ,CALC_ADD_INT_UNPAID_INT
143 ,REAMORTIZE_ON_FUNDING
144 ,DEFAULT_THRESHOLD_AMOUNT
145 ,CUSTOM_SCHED_DESC
146 ,CAPITALIZE_INT
147 ,CALC_EARLY_PAY_CR
148 ,FLUCTUATE_EQ_PAY_AMOUNT
149 ) VALUES (
150 DECODE( X_TERM_ID, FND_API.G_MISS_NUM, LNS_TERMS_S.NEXTVAL, NULL, LNS_TERMS_S.NEXTVAL, X_TERM_ID )
151 ,DECODE( X_LOAN_ID, FND_API.G_MISS_NUM, NULL, X_LOAN_ID )
152 ,LNS_UTILITY_PUB.LAST_UPDATE_DATE
153 ,LNS_UTILITY_PUB.LAST_UPDATED_BY
154 ,LNS_UTILITY_PUB.LAST_UPDATE_LOGIN
155 ,LNS_UTILITY_PUB.CREATION_DATE
156 ,LNS_UTILITY_PUB.CREATED_BY
157 ,DECODE( X_OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, NULL, X_OBJECT_VERSION_NUMBER )
158 ,DECODE( X_DAY_COUNT_METHOD, FND_API.G_MISS_CHAR, NULL, X_DAY_COUNT_METHOD )
159 ,DECODE( X_BASED_ON_BALANCE, FND_API.G_MISS_CHAR, NULL, X_BASED_ON_BALANCE )
160 ,DECODE( X_FIRST_RATE_CHANGE_DATE, FND_API.G_MISS_DATE, NULL, X_FIRST_RATE_CHANGE_DATE )
161 ,DECODE( X_NEXT_RATE_CHANGE_DATE, FND_API.G_MISS_DATE, NULL, X_NEXT_RATE_CHANGE_DATE )
162 ,DECODE( X_PERCENT_INCREASE, FND_API.G_MISS_NUM, NULL, X_PERCENT_INCREASE )
163 ,DECODE( X_PERCENT_INCREASE_TERM, FND_API.G_MISS_CHAR, NULL, X_PERCENT_INCREASE_TERM )
164 ,DECODE( X_PAYMENT_APPLICATION_ORDER, FND_API.G_MISS_CHAR, NULL, X_PAYMENT_APPLICATION_ORDER )
165 ,DECODE( X_PREPAY_PENALTY_FLAG, FND_API.G_MISS_CHAR, NULL, X_PREPAY_PENALTY_FLAG )
166 ,DECODE( X_PREPAY_PENALTY_DATE, FND_API.G_MISS_DATE, NULL, X_PREPAY_PENALTY_DATE )
167 ,DECODE( X_CEILING_RATE, FND_API.G_MISS_NUM, NULL, X_CEILING_RATE )
168 ,DECODE( X_FLOOR_RATE, FND_API.G_MISS_NUM, NULL, X_FLOOR_RATE )
169 ,DECODE( X_DELINQUENCY_THRESHOLD_NUMBER, FND_API.G_MISS_NUM, NULL, X_DELINQUENCY_THRESHOLD_NUMBER )
170 ,DECODE( X_DELINQUENCY_THRESHOLD_AMOUNT, FND_API.G_MISS_NUM, NULL, X_DELINQUENCY_THRESHOLD_AMOUNT )
171 ,DECODE( X_CALCULATION_METHOD, FND_API.G_MISS_CHAR, NULL, X_CALCULATION_METHOD )
172 ,DECODE( X_REAMORTIZE_UNDER_PAYMENT, FND_API.G_MISS_CHAR, NULL, X_REAMORTIZE_UNDER_PAYMENT )
173 ,DECODE( X_REAMORTIZE_OVER_PAYMENT, FND_API.G_MISS_CHAR, NULL, X_REAMORTIZE_OVER_PAYMENT )
174 ,DECODE( X_REAMORTIZE_WITH_INTEREST, FND_API.G_MISS_CHAR, NULL, X_REAMORTIZE_WITH_INTEREST )
175 ,DECODE( X_LOAN_PAYMENT_FREQUENCY, FND_API.G_MISS_CHAR, NULL, X_LOAN_PAYMENT_FREQUENCY )
176 ,DECODE( X_INTEREST_COMPOUNDING_FREQ, FND_API.G_MISS_CHAR, NULL, X_INTEREST_COMPOUNDING_FREQ )
177 ,DECODE( X_AMORTIZATION_FREQUENCY, FND_API.G_MISS_CHAR, NULL, X_AMORTIZATION_FREQUENCY )
178 ,DECODE( X_NUMBER_GRACE_DAYS, FND_API.G_MISS_NUM, NULL, X_NUMBER_GRACE_DAYS )
179 ,DECODE( X_RATE_TYPE, FND_API.G_MISS_CHAR, NULL, X_RATE_TYPE )
180 ,DECODE( X_INDEX_NAME, FND_API.G_MISS_CHAR, NULL, X_INDEX_NAME )
181 ,DECODE( X_ADJUSTMENT_FREQUENCY, FND_API.G_MISS_NUM, NULL, X_ADJUSTMENT_FREQUENCY )
182 ,DECODE( X_ADJUSTMENT_FREQUENCY_TYPE, FND_API.G_MISS_CHAR, NULL, X_ADJUSTMENT_FREQUENCY_TYPE )
183 ,DECODE( X_FIXED_RATE_PERIOD, FND_API.G_MISS_NUM, NULL, X_FIXED_RATE_PERIOD )
184 ,DECODE( X_FIXED_RATE_PERIOD_TYPE, FND_API.G_MISS_CHAR, NULL, X_FIXED_RATE_PERIOD_TYPE )
185 ,DECODE( X_FIRST_PAYMENT_DATE, FND_API.G_MISS_DATE, NULL, X_FIRST_PAYMENT_DATE )
186 ,DECODE( X_NEXT_PAYMENT_DUE_DATE, FND_API.G_MISS_DATE, NULL, X_NEXT_PAYMENT_DUE_DATE )
187 ,DECODE( X_OPEN_FIRST_PAYMENT_DATE, FND_API.G_MISS_DATE, NULL, X_OPEN_FIRST_PAYMENT_DATE )
188 ,DECODE( X_OPEN_PAYMENT_FREQUENCY, FND_API.G_MISS_CHAR, NULL, X_OPEN_PAYMENT_FREQUENCY )
189 ,DECODE( X_OPEN_NEXT_PAYMENT_DATE, FND_API.G_MISS_DATE, NULL, X_OPEN_NEXT_PAYMENT_DATE )
190 ,DECODE( X_LOCK_IN_DATE, FND_API.G_MISS_DATE, NULL, X_LOCK_IN_DATE )
191 ,DECODE( X_LOCK_TO_DATE, FND_API.G_MISS_DATE, NULL, X_LOCK_TO_DATE )
192 ,DECODE( X_RATE_CHANGE_FREQUENCY, FND_API.G_MISS_CHAR, NULL, X_RATE_CHANGE_FREQUENCY )
193 ,DECODE( X_INDEX_RATE_ID, FND_API.G_MISS_NUM, NULL, X_INDEX_RATE_ID )
194 ,DECODE( X_PERCENT_INCREASE_LIFE, FND_API.G_MISS_NUM, NULL, X_PERCENT_INCREASE_LIFE )
195 ,DECODE( X_FIRST_PERCENT_INCREASE, FND_API.G_MISS_NUM, NULL, X_FIRST_PERCENT_INCREASE )
196 ,DECODE( X_OPEN_PERCENT_INCREASE, FND_API.G_MISS_NUM, NULL, X_OPEN_PERCENT_INCREASE )
197 ,DECODE( X_OPEN_PERCENT_INCREASE_LIFE, FND_API.G_MISS_NUM, NULL, X_OPEN_PERCENT_INCREASE_LIFE )
198 ,DECODE( X_OPEN_FIRST_PERCENT_INCREASE, FND_API.G_MISS_NUM, NULL, X_OPEN_FIRST_PERCENT_INCREASE )
199 ,DECODE( X_PMT_APPL_ORDER_SCOPE, FND_API.G_MISS_CHAR, NULL, X_PMT_APPL_ORDER_SCOPE )
200 ,DECODE( X_OPEN_CEILING_RATE, FND_API.G_MISS_NUM, NULL, X_OPEN_CEILING_RATE )
201 ,DECODE( X_OPEN_FLOOR_RATE, FND_API.G_MISS_NUM, NULL, X_OPEN_FLOOR_RATE )
202 ,DECODE( X_OPEN_INDEX_DATE, FND_API.G_MISS_DATE, NULL, X_OPEN_INDEX_DATE )
203 ,DECODE( X_TERM_INDEX_DATE, FND_API.G_MISS_DATE, NULL, X_TERM_INDEX_DATE )
204 ,DECODE( X_OPEN_PROJECTED_RATE, FND_API.G_MISS_NUM, NULL, X_OPEN_PROJECTED_RATE )
205 ,DECODE( X_TERM_PROJECTED_RATE, FND_API.G_MISS_NUM, NULL, X_TERM_PROJECTED_RATE )
206 ,DECODE( X_PAYMENT_CALC_METHOD, FND_API.G_MISS_CHAR, NULL, X_PAYMENT_CALC_METHOD )
207 ,DECODE( X_CUSTOM_CALC_METHOD, FND_API.G_MISS_CHAR, NULL, X_CUSTOM_CALC_METHOD )
208 ,DECODE( X_ORIG_PAY_CALC_METHOD, FND_API.G_MISS_CHAR, NULL, X_ORIG_PAY_CALC_METHOD )
209 ,DECODE( X_PRIN_FIRST_PAY_DATE, FND_API.G_MISS_DATE, NULL, X_PRIN_FIRST_PAY_DATE )
210 ,DECODE( X_PRIN_PAYMENT_FREQUENCY, FND_API.G_MISS_CHAR, NULL, X_PRIN_PAYMENT_FREQUENCY )
211 ,DECODE( X_PENAL_INT_RATE, FND_API.G_MISS_NUM, NULL, X_PENAL_INT_RATE )
212 ,DECODE( X_PENAL_INT_GRACE_DAYS, FND_API.G_MISS_NUM, NULL, X_PENAL_INT_GRACE_DAYS )
213 ,DECODE( X_CALC_ADD_INT_UNPAID_PRIN, FND_API.G_MISS_CHAR, NULL, X_CALC_ADD_INT_UNPAID_PRIN)
214 ,DECODE( X_CALC_ADD_INT_UNPAID_INT, FND_API.G_MISS_CHAR, NULL, X_CALC_ADD_INT_UNPAID_INT)
215 ,DECODE( X_REAMORTIZE_ON_FUNDING, FND_API.G_MISS_CHAR, NULL, X_REAMORTIZE_ON_FUNDING)
216 ,DECODE( X_DEFAULT_THRESHOLD_AMOUNT, FND_API.G_MISS_NUM, NULL, X_DEFAULT_THRESHOLD_AMOUNT )
217 ,DECODE( X_CUSTOM_SCHED_DESC, FND_API.G_MISS_CHAR, NULL, X_CUSTOM_SCHED_DESC)
218 ,DECODE( X_CAPITALIZE_INT, FND_API.G_MISS_CHAR, NULL, X_CAPITALIZE_INT)
219 ,DECODE( X_CALC_EARLY_PAY_CR, FND_API.G_MISS_CHAR, NULL, X_CALC_EARLY_PAY_CR)
220 ,DECODE( X_FLUCTUATE_EQ_PAY_AMOUNT, FND_API.G_MISS_CHAR, NULL, X_FLUCTUATE_EQ_PAY_AMOUNT)
221
222 ) RETURNING
223 TERM_ID
224 INTO
225 X_TERM_ID;
226
227 END Insert_Row;
228
229 PROCEDURE Update_Row(
230 X_Rowid IN OUT NOCOPY VARCHAR2,
231 X_TERM_ID IN NUMBER,
232 X_LOAN_ID IN NUMBER,
233 X_DAY_COUNT_METHOD IN VARCHAR2,
234 X_BASED_ON_BALANCE IN VARCHAR2,
235 X_FIRST_RATE_CHANGE_DATE IN DATE,
236 X_NEXT_RATE_CHANGE_DATE IN DATE,
237 X_PERCENT_INCREASE IN NUMBER,
238 X_PERCENT_INCREASE_TERM IN VARCHAR2,
239 X_PAYMENT_APPLICATION_ORDER IN VARCHAR2,
240 X_PREPAY_PENALTY_FLAG IN VARCHAR2,
241 X_PREPAY_PENALTY_DATE IN DATE,
242 X_CEILING_RATE IN NUMBER,
243 X_FLOOR_RATE IN NUMBER,
244 X_DELINQUENCY_THRESHOLD_NUMBER IN NUMBER,
245 X_DELINQUENCY_THRESHOLD_AMOUNT IN NUMBER,
246 X_CALCULATION_METHOD IN VARCHAR2,
247 X_REAMORTIZE_UNDER_PAYMENT IN VARCHAR2,
248 X_REAMORTIZE_OVER_PAYMENT IN VARCHAR2,
249 X_REAMORTIZE_WITH_INTEREST IN VARCHAR2,
250 X_LOAN_PAYMENT_FREQUENCY IN VARCHAR2,
251 X_INTEREST_COMPOUNDING_FREQ IN VARCHAR2,
252 X_OBJECT_VERSION_NUMBER IN NUMBER,
253 X_AMORTIZATION_FREQUENCY IN VARCHAR2,
254 X_NUMBER_GRACE_DAYS IN NUMBER,
255 X_RATE_TYPE IN VARCHAR2,
256 X_INDEX_NAME IN VARCHAR2,
257 X_ADJUSTMENT_FREQUENCY IN NUMBER,
258 X_ADJUSTMENT_FREQUENCY_TYPE IN VARCHAR2,
259 X_FIXED_RATE_PERIOD IN NUMBER,
260 X_FIXED_RATE_PERIOD_TYPE IN VARCHAR2,
261 X_FIRST_PAYMENT_DATE IN DATE,
262 X_NEXT_PAYMENT_DUE_DATE IN DATE,
263 X_OPEN_FIRST_PAYMENT_DATE IN DATE,
264 X_OPEN_PAYMENT_FREQUENCY IN VARCHAR2,
265 X_OPEN_NEXT_PAYMENT_DATE IN DATE,
266 X_LOCK_IN_DATE IN DATE,
267 X_LOCK_TO_DATE IN DATE,
268 X_RATE_CHANGE_FREQUENCY IN VARCHAR2,
269 X_INDEX_RATE_ID IN NUMBER,
270 X_PERCENT_INCREASE_LIFE IN NUMBER,
271 X_FIRST_PERCENT_INCREASE IN NUMBER,
272 X_OPEN_PERCENT_INCREASE IN NUMBER,
273 X_OPEN_PERCENT_INCREASE_LIFE IN NUMBER,
274 X_OPEN_FIRST_PERCENT_INCREASE IN NUMBER,
275 X_PMT_APPL_ORDER_SCOPE IN VARCHAR2,
276 X_OPEN_CEILING_RATE IN NUMBER,
277 X_OPEN_FLOOR_RATE IN NUMBER,
278 X_OPEN_INDEX_DATE IN DATE,
279 X_TERM_INDEX_DATE IN DATE,
280 X_OPEN_PROJECTED_RATE IN NUMBER,
281 X_TERM_PROJECTED_RATE IN NUMBER,
282 X_PAYMENT_CALC_METHOD IN VARCHAR2,
283 X_CUSTOM_CALC_METHOD IN VARCHAR2,
284 X_ORIG_PAY_CALC_METHOD IN VARCHAR2,
285 X_PRIN_FIRST_PAY_DATE IN DATE,
286 X_PRIN_PAYMENT_FREQUENCY IN VARCHAR2,
287 X_PENAL_INT_RATE IN NUMBER,
288 X_PENAL_INT_GRACE_DAYS IN NUMBER,
289 X_CALC_ADD_INT_UNPAID_PRIN IN VARCHAR2,
290 X_CALC_ADD_INT_UNPAID_INT IN VARCHAR2,
291 X_REAMORTIZE_ON_FUNDING IN VARCHAR2,
292 X_DEFAULT_THRESHOLD_AMOUNT IN NUMBER,
293 X_CUSTOM_SCHED_DESC IN VARCHAR2,
294 X_CAPITALIZE_INT IN VARCHAR2,
295 X_CALC_EARLY_PAY_CR IN VARCHAR2,
296 X_FLUCTUATE_EQ_PAY_AMOUNT IN VARCHAR2
297
298
299 ) IS
300 BEGIN
301 --Call to record history
302 LNS_LOAN_HISTORY_PUB.log_record_pre(
303 p_id => X_TERM_ID,
304 p_primary_key_name => 'TERM_ID',
305 p_table_name => 'LNS_TERMS'
306 );
307
308 UPDATE LNS_TERMS SET
309 TERM_ID = DECODE( X_TERM_ID, NULL, TERM_ID, FND_API.G_MISS_NUM, NULL, X_TERM_ID )
310 ,LOAN_ID = DECODE( X_LOAN_ID, NULL, LOAN_ID, FND_API.G_MISS_NUM, NULL, X_LOAN_ID )
311 ,LAST_UPDATE_DATE = LNS_UTILITY_PUB.LAST_UPDATE_DATE
312 ,LAST_UPDATED_BY = LNS_UTILITY_PUB.LAST_UPDATED_BY
313 ,LAST_UPDATE_LOGIN = LNS_UTILITY_PUB.LAST_UPDATE_LOGIN
314 ,OBJECT_VERSION_NUMBER = DECODE( X_OBJECT_VERSION_NUMBER, NULL, OBJECT_VERSION_NUMBER, FND_API.G_MISS_NUM, NULL, X_OBJECT_VERSION_NUMBER )
315 ,DAY_COUNT_METHOD = DECODE( X_DAY_COUNT_METHOD, NULL, DAY_COUNT_METHOD, FND_API.G_MISS_NUM, NULL, X_DAY_COUNT_METHOD )
316 ,BASED_ON_BALANCE = DECODE( X_BASED_ON_BALANCE, NULL, BASED_ON_BALANCE, FND_API.G_MISS_NUM, NULL, X_BASED_ON_BALANCE )
317 ,FIRST_RATE_CHANGE_DATE = DECODE( X_FIRST_RATE_CHANGE_DATE, NULL, FIRST_RATE_CHANGE_DATE, FND_API.G_MISS_NUM, NULL, X_FIRST_RATE_CHANGE_DATE )
318 ,NEXT_RATE_CHANGE_DATE = DECODE( X_NEXT_RATE_CHANGE_DATE, NULL, NEXT_RATE_CHANGE_DATE, FND_API.G_MISS_NUM, NULL, X_NEXT_RATE_CHANGE_DATE )
319 ,PERCENT_INCREASE = DECODE( X_PERCENT_INCREASE, NULL, PERCENT_INCREASE, FND_API.G_MISS_NUM, NULL, X_PERCENT_INCREASE )
320 ,PERCENT_INCREASE_TERM = DECODE( X_PERCENT_INCREASE_TERM, NULL, PERCENT_INCREASE_TERM, FND_API.G_MISS_NUM, NULL, X_PERCENT_INCREASE_TERM )
321 ,PAYMENT_APPLICATION_ORDER = DECODE( X_PAYMENT_APPLICATION_ORDER, NULL, PAYMENT_APPLICATION_ORDER, FND_API.G_MISS_NUM, NULL, X_PAYMENT_APPLICATION_ORDER )
322 ,PREPAY_PENALTY_FLAG = DECODE( X_PREPAY_PENALTY_FLAG, NULL, PREPAY_PENALTY_FLAG, FND_API.G_MISS_NUM, NULL, X_PREPAY_PENALTY_FLAG )
323 ,PREPAY_PENALTY_DATE = DECODE( X_PREPAY_PENALTY_DATE, NULL, PREPAY_PENALTY_DATE, FND_API.G_MISS_NUM, NULL, X_PREPAY_PENALTY_DATE )
324 ,CEILING_RATE = DECODE( X_CEILING_RATE, NULL, CEILING_RATE, FND_API.G_MISS_NUM, NULL, X_CEILING_RATE )
325 ,FLOOR_RATE = DECODE( X_FLOOR_RATE, NULL, FLOOR_RATE, FND_API.G_MISS_NUM, NULL, X_FLOOR_RATE )
326 ,DELINQUENCY_THRESHOLD_NUMBER = DECODE( X_DELINQUENCY_THRESHOLD_NUMBER, NULL, DELINQUENCY_THRESHOLD_NUMBER, FND_API.G_MISS_NUM, NULL, X_DELINQUENCY_THRESHOLD_NUMBER )
327 ,DELINQUENCY_THRESHOLD_AMOUNT = DECODE( X_DELINQUENCY_THRESHOLD_AMOUNT, NULL, DELINQUENCY_THRESHOLD_AMOUNT, FND_API.G_MISS_NUM, NULL, X_DELINQUENCY_THRESHOLD_AMOUNT )
328 ,CALCULATION_METHOD = DECODE( X_CALCULATION_METHOD, NULL, CALCULATION_METHOD, FND_API.G_MISS_NUM, NULL, X_CALCULATION_METHOD )
329 ,REAMORTIZE_UNDER_PAYMENT = DECODE( X_REAMORTIZE_UNDER_PAYMENT, NULL, REAMORTIZE_UNDER_PAYMENT, FND_API.G_MISS_NUM, NULL, X_REAMORTIZE_UNDER_PAYMENT )
330 ,REAMORTIZE_OVER_PAYMENT = DECODE( X_REAMORTIZE_OVER_PAYMENT, NULL, REAMORTIZE_OVER_PAYMENT, FND_API.G_MISS_NUM, NULL, X_REAMORTIZE_OVER_PAYMENT )
331 ,REAMORTIZE_WITH_INTEREST = DECODE( X_REAMORTIZE_WITH_INTEREST, NULL, REAMORTIZE_WITH_INTEREST, FND_API.G_MISS_NUM, NULL, X_REAMORTIZE_WITH_INTEREST )
332 ,LOAN_PAYMENT_FREQUENCY = DECODE( X_LOAN_PAYMENT_FREQUENCY, NULL, LOAN_PAYMENT_FREQUENCY, FND_API.G_MISS_NUM, NULL, X_LOAN_PAYMENT_FREQUENCY )
333 ,INTEREST_COMPOUNDING_FREQ = DECODE( X_INTEREST_COMPOUNDING_FREQ, NULL, INTEREST_COMPOUNDING_FREQ, FND_API.G_MISS_NUM, NULL, X_INTEREST_COMPOUNDING_FREQ )
334 ,AMORTIZATION_FREQUENCY = DECODE( X_AMORTIZATION_FREQUENCY, NULL, AMORTIZATION_FREQUENCY, FND_API.G_MISS_NUM, NULL, X_AMORTIZATION_FREQUENCY )
335 ,NUMBER_GRACE_DAYS = DECODE( X_NUMBER_GRACE_DAYS, NULL, NUMBER_GRACE_DAYS, FND_API.G_MISS_NUM, NULL, X_NUMBER_GRACE_DAYS )
336 ,RATE_TYPE = DECODE( X_RATE_TYPE, NULL, RATE_TYPE, FND_API.G_MISS_NUM, NULL, X_RATE_TYPE )
337 ,INDEX_NAME = DECODE( X_INDEX_NAME, NULL, INDEX_NAME, FND_API.G_MISS_NUM, NULL, X_INDEX_NAME )
338 ,ADJUSTMENT_FREQUENCY = DECODE( X_ADJUSTMENT_FREQUENCY, NULL, ADJUSTMENT_FREQUENCY, FND_API.G_MISS_NUM, NULL, X_ADJUSTMENT_FREQUENCY )
339 ,ADJUSTMENT_FREQUENCY_TYPE = DECODE( X_ADJUSTMENT_FREQUENCY_TYPE, NULL, ADJUSTMENT_FREQUENCY_TYPE, FND_API.G_MISS_NUM, NULL, X_ADJUSTMENT_FREQUENCY_TYPE )
340 ,FIXED_RATE_PERIOD = DECODE( X_FIXED_RATE_PERIOD, NULL, FIXED_RATE_PERIOD, FND_API.G_MISS_NUM, NULL, X_FIXED_RATE_PERIOD )
341 ,FIXED_RATE_PERIOD_TYPE = DECODE( X_FIXED_RATE_PERIOD_TYPE, NULL, FIXED_RATE_PERIOD_TYPE, FND_API.G_MISS_NUM, NULL, X_FIXED_RATE_PERIOD_TYPE )
342 ,FIRST_PAYMENT_DATE = DECODE( X_FIRST_PAYMENT_DATE, NULL, FIRST_PAYMENT_DATE, FND_API.G_MISS_NUM, NULL, X_FIRST_PAYMENT_DATE )
343 ,NEXT_PAYMENT_DUE_DATE = DECODE( X_NEXT_PAYMENT_DUE_DATE, NULL, NEXT_PAYMENT_DUE_DATE, FND_API.G_MISS_NUM, NULL, X_NEXT_PAYMENT_DUE_DATE )
344 ,OPEN_FIRST_PAYMENT_DATE = DECODE( X_OPEN_FIRST_PAYMENT_DATE, NULL, OPEN_FIRST_PAYMENT_DATE, FND_API.G_MISS_NUM, NULL, X_OPEN_FIRST_PAYMENT_DATE )
345 ,OPEN_PAYMENT_FREQUENCY = DECODE( X_OPEN_PAYMENT_FREQUENCY, NULL, OPEN_PAYMENT_FREQUENCY, FND_API.G_MISS_NUM, NULL, X_OPEN_PAYMENT_FREQUENCY )
346 ,OPEN_NEXT_PAYMENT_DATE = DECODE( X_OPEN_NEXT_PAYMENT_DATE, NULL, OPEN_NEXT_PAYMENT_DATE, FND_API.G_MISS_NUM, NULL, X_OPEN_NEXT_PAYMENT_DATE )
347 ,LOCK_IN_DATE = DECODE( X_LOCK_IN_DATE, NULL, LOCK_IN_DATE, FND_API.G_MISS_DATE, NULL, X_LOCK_IN_DATE )
348 ,LOCK_TO_DATE = DECODE( X_LOCK_TO_DATE, NULL, LOCK_TO_DATE, FND_API.G_MISS_DATE, NULL, X_LOCK_TO_DATE )
349 ,RATE_CHANGE_FREQUENCY = DECODE( X_RATE_CHANGE_FREQUENCY, NULL, RATE_CHANGE_FREQUENCY, FND_API.G_MISS_NUM, NULL, X_RATE_CHANGE_FREQUENCY )
350 ,INDEX_RATE_ID = DECODE( X_INDEX_RATE_ID, NULL, INDEX_RATE_ID, FND_API.G_MISS_NUM, NULL, X_INDEX_RATE_ID )
351 ,PERCENT_INCREASE_LIFE = DECODE( X_PERCENT_INCREASE_LIFE, NULL, PERCENT_INCREASE_LIFE, FND_API.G_MISS_NUM, NULL, X_PERCENT_INCREASE_LIFE )
352 ,FIRST_PERCENT_INCREASE = DECODE( X_FIRST_PERCENT_INCREASE, NULL, FIRST_PERCENT_INCREASE, FND_API.G_MISS_NUM, NULL, X_FIRST_PERCENT_INCREASE )
353 ,OPEN_PERCENT_INCREASE = DECODE( X_OPEN_PERCENT_INCREASE, NULL, OPEN_PERCENT_INCREASE, FND_API.G_MISS_NUM, NULL, X_OPEN_PERCENT_INCREASE )
354 ,OPEN_PERCENT_INCREASE_LIFE = DECODE( X_OPEN_PERCENT_INCREASE_LIFE, NULL, OPEN_PERCENT_INCREASE_LIFE, FND_API.G_MISS_NUM, NULL, X_OPEN_PERCENT_INCREASE_LIFE )
355 ,OPEN_FIRST_PERCENT_INCREASE = DECODE( X_OPEN_FIRST_PERCENT_INCREASE, NULL, OPEN_FIRST_PERCENT_INCREASE, FND_API.G_MISS_NUM, NULL, X_OPEN_FIRST_PERCENT_INCREASE )
356 ,PMT_APPL_ORDER_SCOPE = DECODE( X_PMT_APPL_ORDER_SCOPE, NULL, PMT_APPL_ORDER_SCOPE, FND_API.G_MISS_CHAR, NULL, X_PMT_APPL_ORDER_SCOPE )
357 ,OPEN_CEILING_RATE = DECODE( X_OPEN_CEILING_RATE, NULL, OPEN_CEILING_RATE, FND_API.G_MISS_NUM, NULL, X_OPEN_CEILING_RATE )
358 ,OPEN_FLOOR_RATE = DECODE( X_OPEN_FLOOR_RATE, NULL, OPEN_FLOOR_RATE, FND_API.G_MISS_NUM, NULL, X_OPEN_FLOOR_RATE )
359 ,OPEN_INDEX_DATE = DECODE( X_OPEN_INDEX_DATE, NULL, OPEN_INDEX_DATE, FND_API.G_MISS_DATE, NULL, X_OPEN_INDEX_DATE )
360 ,TERM_INDEX_DATE = DECODE( X_TERM_INDEX_DATE, NULL, TERM_INDEX_DATE, FND_API.G_MISS_DATE, NULL, X_TERM_INDEX_DATE )
361 ,OPEN_PROJECTED_RATE = DECODE( X_OPEN_PROJECTED_RATE, NULL, OPEN_PROJECTED_RATE, FND_API.G_MISS_NUM, NULL, X_OPEN_PROJECTED_RATE )
362 ,TERM_PROJECTED_RATE = DECODE( X_TERM_PROJECTED_RATE, NULL, TERM_PROJECTED_RATE, FND_API.G_MISS_NUM, NULL, X_TERM_PROJECTED_RATE )
363 ,PAYMENT_CALC_METHOD = DECODE( X_PAYMENT_CALC_METHOD, NULL, PAYMENT_CALC_METHOD, FND_API.G_MISS_CHAR, NULL, X_PAYMENT_CALC_METHOD )
364 ,CUSTOM_CALC_METHOD = DECODE( X_CUSTOM_CALC_METHOD, NULL, CUSTOM_CALC_METHOD, FND_API.G_MISS_CHAR, NULL, X_CUSTOM_CALC_METHOD )
365 ,ORIG_PAY_CALC_METHOD = DECODE( X_ORIG_PAY_CALC_METHOD, NULL, ORIG_PAY_CALC_METHOD, FND_API.G_MISS_CHAR, NULL, X_ORIG_PAY_CALC_METHOD )
366 ,PRIN_FIRST_PAY_DATE = DECODE( X_PRIN_FIRST_PAY_DATE, NULL, PRIN_FIRST_PAY_DATE, FND_API.G_MISS_NUM, NULL, X_PRIN_FIRST_PAY_DATE )
367 ,PRIN_PAYMENT_FREQUENCY = DECODE( X_PRIN_PAYMENT_FREQUENCY, NULL, PRIN_PAYMENT_FREQUENCY, FND_API.G_MISS_NUM, NULL, X_PRIN_PAYMENT_FREQUENCY )
368 ,PENAL_INT_RATE = DECODE( X_PENAL_INT_RATE, NULL, PENAL_INT_RATE, FND_API.G_MISS_NUM, NULL, X_PENAL_INT_RATE )
369 ,PENAL_INT_GRACE_DAYS = DECODE( X_PENAL_INT_GRACE_DAYS, NULL, PENAL_INT_GRACE_DAYS, FND_API.G_MISS_NUM, NULL, X_PENAL_INT_GRACE_DAYS )
370 ,CALC_ADD_INT_UNPAID_PRIN = DECODE( X_CALC_ADD_INT_UNPAID_PRIN, NULL, CALC_ADD_INT_UNPAID_PRIN, FND_API.G_MISS_CHAR, NULL, X_CALC_ADD_INT_UNPAID_PRIN)
371 ,CALC_ADD_INT_UNPAID_INT = DECODE( X_CALC_ADD_INT_UNPAID_INT, NULL, CALC_ADD_INT_UNPAID_INT, FND_API.G_MISS_CHAR, NULL, X_CALC_ADD_INT_UNPAID_INT)
372 ,REAMORTIZE_ON_FUNDING = DECODE( X_REAMORTIZE_ON_FUNDING, NULL, REAMORTIZE_ON_FUNDING, FND_API.G_MISS_CHAR, NULL, X_REAMORTIZE_ON_FUNDING)
373 ,DEFAULT_THRESHOLD_AMOUNT = DECODE( X_DEFAULT_THRESHOLD_AMOUNT, NULL, DEFAULT_THRESHOLD_AMOUNT, FND_API.G_MISS_NUM, NULL, X_DEFAULT_THRESHOLD_AMOUNT )
374 ,CUSTOM_SCHED_DESC = DECODE( X_CUSTOM_SCHED_DESC, NULL, CUSTOM_SCHED_DESC, FND_API.G_MISS_CHAR, NULL, X_CUSTOM_SCHED_DESC)
375 ,CAPITALIZE_INT = DECODE( X_CAPITALIZE_INT, NULL, CAPITALIZE_INT, FND_API.G_MISS_CHAR, NULL, X_CAPITALIZE_INT)
376 ,CALC_EARLY_PAY_CR = DECODE( X_CALC_EARLY_PAY_CR, NULL, CALC_EARLY_PAY_CR, FND_API.G_MISS_CHAR, NULL, X_CALC_EARLY_PAY_CR)
377 ,FLUCTUATE_EQ_PAY_AMOUNT = DECODE( X_FLUCTUATE_EQ_PAY_AMOUNT, NULL, FLUCTUATE_EQ_PAY_AMOUNT, FND_API.G_MISS_CHAR, NULL, X_FLUCTUATE_EQ_PAY_AMOUNT)
378
379
380 WHERE ROWID = X_Rowid;
381
382 IF (SQL%NOTFOUND) THEN
383 RAISE NO_DATA_FOUND;
384 END IF;
385
386 --Call to record history
387 LNS_LOAN_HISTORY_PUB.log_record_post(
388 p_id => X_TERM_ID,
389 p_primary_key_name => 'TERM_ID',
390 p_table_name => 'LNS_TERMS',
391 p_loan_id => X_LOAN_ID
392 );
393 END Update_Row;
394
395 PROCEDURE Lock_Row(
396 X_Rowid IN VARCHAR2,
397 X_TERM_ID IN NUMBER,
398 X_LOAN_ID IN NUMBER,
399 X_DAY_COUNT_METHOD IN VARCHAR2,
400 X_BASED_ON_BALANCE IN VARCHAR2,
401 X_FIRST_RATE_CHANGE_DATE IN DATE,
402 X_NEXT_RATE_CHANGE_DATE IN DATE,
403 X_PERCENT_INCREASE IN NUMBER,
404 X_PERCENT_INCREASE_TERM IN VARCHAR2,
405 X_PAYMENT_APPLICATION_ORDER IN VARCHAR2,
406 X_PREPAY_PENALTY_FLAG IN VARCHAR2,
407 X_PREPAY_PENALTY_DATE IN DATE,
408 X_CEILING_RATE IN NUMBER,
409 X_FLOOR_RATE IN NUMBER,
410 X_DELINQUENCY_THRESHOLD_NUMBER IN NUMBER,
411 X_DELINQUENCY_THRESHOLD_AMOUNT IN NUMBER,
412 X_CALCULATION_METHOD IN VARCHAR2,
413 X_REAMORTIZE_UNDER_PAYMENT IN VARCHAR2,
414 X_REAMORTIZE_OVER_PAYMENT IN VARCHAR2,
415 X_REAMORTIZE_WITH_INTEREST IN VARCHAR2,
416 X_LOAN_PAYMENT_FREQUENCY IN VARCHAR2,
417 X_INTEREST_COMPOUNDING_FREQ IN VARCHAR2,
418 X_CREATED_BY IN NUMBER,
419 X_CREATION_DATE IN DATE,
420 X_LAST_UPDATED_BY IN NUMBER,
421 X_LAST_UPDATE_DATE IN DATE,
422 X_LAST_UPDATE_LOGIN IN NUMBER,
423 X_OBJECT_VERSION_NUMBER IN NUMBER,
424 X_AMORTIZATION_FREQUENCY IN VARCHAR2,
425 X_NUMBER_GRACE_DAYS IN NUMBER,
426 X_RATE_TYPE IN VARCHAR2,
427 X_INDEX_NAME IN VARCHAR2,
428 X_ADJUSTMENT_FREQUENCY IN NUMBER,
429 X_ADJUSTMENT_FREQUENCY_TYPE IN VARCHAR2,
430 X_FIXED_RATE_PERIOD IN NUMBER,
431 X_FIXED_RATE_PERIOD_TYPE IN VARCHAR2,
432 X_FIRST_PAYMENT_DATE IN DATE,
433 X_NEXT_PAYMENT_DUE_DATE IN DATE,
434 X_OPEN_FIRST_PAYMENT_DATE IN DATE,
435 X_OPEN_PAYMENT_FREQUENCY IN VARCHAR2,
436 X_OPEN_NEXT_PAYMENT_DATE IN DATE,
437 X_LOCK_IN_DATE IN DATE,
438 X_LOCK_TO_DATE IN DATE,
439 X_RATE_CHANGE_FREQUENCY IN VARCHAR2,
440 X_INDEX_RATE_ID IN NUMBER,
441 X_PERCENT_INCREASE_LIFE IN NUMBER,
442 X_FIRST_PERCENT_INCREASE IN NUMBER,
443 X_OPEN_PERCENT_INCREASE IN NUMBER,
444 X_OPEN_PERCENT_INCREASE_LIFE IN NUMBER,
445 X_OPEN_FIRST_PERCENT_INCREASE IN NUMBER,
446 X_PMT_APPL_ORDER_SCOPE IN VARCHAR2,
447 X_OPEN_CEILING_RATE IN NUMBER,
448 X_OPEN_FLOOR_RATE IN NUMBER,
449 X_OPEN_INDEX_DATE IN DATE,
450 X_TERM_INDEX_DATE IN DATE,
451 X_OPEN_PROJECTED_RATE IN NUMBER,
452 X_TERM_PROJECTED_RATE IN NUMBER,
453 X_PAYMENT_CALC_METHOD IN VARCHAR2,
454 X_CUSTOM_CALC_METHOD IN VARCHAR2,
455 X_ORIG_PAY_CALC_METHOD IN VARCHAR2,
456 X_PRIN_FIRST_PAY_DATE IN DATE,
457 X_PRIN_PAYMENT_FREQUENCY IN VARCHAR2,
458 X_PENAL_INT_RATE IN NUMBER,
459 X_PENAL_INT_GRACE_DAYS IN NUMBER,
460 X_CALC_ADD_INT_UNPAID_PRIN IN VARCHAR2,
461 X_CALC_ADD_INT_UNPAID_INT IN VARCHAR2,
462 X_REAMORTIZE_ON_FUNDING IN VARCHAR2,
463 X_DEFAULT_THRESHOLD_AMOUNT IN NUMBER,
464 X_CUSTOM_SCHED_DESC IN VARCHAR2,
465 X_CAPITALIZE_INT IN VARCHAR2,
466 X_CALC_EARLY_PAY_CR IN VARCHAR2,
467 X_FLUCTUATE_EQ_PAY_AMOUNT IN VARCHAR2
468
469 ) IS
470 CURSOR C IS SELECT * FROM LNS_TERMS
471 WHERE rowid = x_rowid
472 FOR UPDATE of LOAN_ID NOWAIT;
473 Recinfo C%ROWTYPE;
474 BEGIN
475 OPEN C;
476 FETCH C INTO Recinfo;
477 IF (C%NOTFOUND) THEN
478 CLOSE C;
479 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
480 APP_EXCEPTION.Raise_Exception;
481 END IF;
482 CLOSE C;
483
484 IF (
485 (Recinfo.TERM_ID = X_TERM_ID)
486 AND ( (Recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
487 OR ( (Recinfo.OBJECT_VERSION_NUMBER IS NULL)
488 AND (X_OBJECT_VERSION_NUMBER IS NULL)))
489 ) THEN
490 return;
491 ELSE
492 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
493 APP_EXCEPTION.Raise_Exception;
494 END IF;
495 END Lock_Row;
496
497
498 PROCEDURE Select_Row (
499 X_TERM_ID IN OUT NOCOPY NUMBER,
500 X_LOAN_ID OUT NOCOPY NUMBER,
501 X_DAY_COUNT_METHOD OUT NOCOPY VARCHAR2,
502 X_BASED_ON_BALANCE OUT NOCOPY VARCHAR2,
503 X_FIRST_RATE_CHANGE_DATE OUT NOCOPY DATE,
504 X_NEXT_RATE_CHANGE_DATE OUT NOCOPY DATE,
505 X_PERCENT_INCREASE OUT NOCOPY NUMBER,
506 X_PERCENT_INCREASE_TERM OUT NOCOPY VARCHAR2,
507 X_PAYMENT_APPLICATION_ORDER OUT NOCOPY VARCHAR2,
508 X_PREPAY_PENALTY_FLAG OUT NOCOPY VARCHAR2,
509 X_PREPAY_PENALTY_DATE OUT NOCOPY DATE,
510 X_CEILING_RATE OUT NOCOPY NUMBER,
511 X_FLOOR_RATE OUT NOCOPY NUMBER,
512 X_DELINQUENCY_THRESHOLD_NUMBER OUT NOCOPY NUMBER,
513 X_DELINQUENCY_THRESHOLD_AMOUNT OUT NOCOPY NUMBER,
514 X_CALCULATION_METHOD OUT NOCOPY VARCHAR2,
515 X_REAMORTIZE_UNDER_PAYMENT OUT NOCOPY VARCHAR2,
516 X_REAMORTIZE_OVER_PAYMENT OUT NOCOPY VARCHAR2,
517 X_REAMORTIZE_WITH_INTEREST OUT NOCOPY VARCHAR2,
518 X_LOAN_PAYMENT_FREQUENCY OUT NOCOPY VARCHAR2,
519 X_INTEREST_COMPOUNDING_FREQ OUT NOCOPY VARCHAR2,
520 X_AMORTIZATION_FREQUENCY OUT NOCOPY VARCHAR2,
521 X_NUMBER_GRACE_DAYS OUT NOCOPY NUMBER,
522 X_RATE_TYPE OUT NOCOPY VARCHAR2,
523 X_INDEX_NAME OUT NOCOPY VARCHAR2,
524 X_ADJUSTMENT_FREQUENCY OUT NOCOPY NUMBER,
525 X_ADJUSTMENT_FREQUENCY_TYPE OUT NOCOPY VARCHAR2,
526 X_FIXED_RATE_PERIOD OUT NOCOPY NUMBER,
527 X_FIXED_RATE_PERIOD_TYPE OUT NOCOPY VARCHAR2,
528 X_FIRST_PAYMENT_DATE OUT NOCOPY DATE,
529 X_NEXT_PAYMENT_DUE_DATE OUT NOCOPY DATE,
530 X_OPEN_FIRST_PAYMENT_DATE OUT NOCOPY DATE,
531 X_OPEN_PAYMENT_FREQUENCY OUT NOCOPY VARCHAR2,
532 X_OPEN_NEXT_PAYMENT_DATE OUT NOCOPY DATE,
533 X_LOCK_IN_DATE OUT NOCOPY DATE,
534 X_LOCK_TO_DATE OUT NOCOPY DATE,
535 X_RATE_CHANGE_FREQUENCY OUT NOCOPY VARCHAR2,
536 X_INDEX_RATE_ID OUT NOCOPY NUMBER,
537 X_PERCENT_INCREASE_LIFE OUT NOCOPY NUMBER,
538 X_FIRST_PERCENT_INCREASE OUT NOCOPY NUMBER,
539 X_OPEN_PERCENT_INCREASE OUT NOCOPY NUMBER,
540 X_OPEN_PERCENT_INCREASE_LIFE OUT NOCOPY NUMBER,
541 X_OPEN_FIRST_PERCENT_INCREASE OUT NOCOPY NUMBER,
542 X_PMT_APPL_ORDER_SCOPE OUT NOCOPY VARCHAR2,
543 X_OPEN_CEILING_RATE OUT NOCOPY NUMBER,
544 X_OPEN_FLOOR_RATE OUT NOCOPY NUMBER,
545 X_OPEN_INDEX_DATE OUT NOCOPY DATE,
546 X_TERM_INDEX_DATE OUT NOCOPY DATE,
547 X_OPEN_PROJECTED_RATE OUT NOCOPY NUMBER,
548 X_TERM_PROJECTED_RATE OUT NOCOPY NUMBER,
549 X_PAYMENT_CALC_METHOD OUT NOCOPY VARCHAR2,
550 X_CUSTOM_CALC_METHOD OUT NOCOPY VARCHAR2,
551 X_ORIG_PAY_CALC_METHOD OUT NOCOPY VARCHAR2,
552 X_PRIN_FIRST_PAY_DATE OUT NOCOPY DATE,
553 X_PRIN_PAYMENT_FREQUENCY OUT NOCOPY VARCHAR2,
554 X_PENAL_INT_RATE OUT NOCOPY NUMBER,
555 X_PENAL_INT_GRACE_DAYS OUT NOCOPY NUMBER,
556 X_CALC_ADD_INT_UNPAID_PRIN OUT NOCOPY VARCHAR2,
557 X_CALC_ADD_INT_UNPAID_INT OUT NOCOPY VARCHAR2,
558 X_REAMORTIZE_ON_FUNDING OUT NOCOPY VARCHAR2,
559 X_DEFAULT_THRESHOLD_AMOUNT OUT NOCOPY NUMBER,
560 X_CUSTOM_SCHED_DESC OUT NOCOPY VARCHAR2,
561 X_CAPITALIZE_INT OUT NOCOPY VARCHAR2,
562 X_CALC_EARLY_PAY_CR OUT NOCOPY VARCHAR2,
563 X_FLUCTUATE_EQ_PAY_AMOUNT OUT NOCOPY VARCHAR2
564
565
566 ) IS
567
568 BEGIN
569
570 SELECT
571 NVL( TERM_ID, FND_API.G_MISS_NUM ),
572 NVL( LOAN_ID, FND_API.G_MISS_NUM ),
573 NVL( DAY_COUNT_METHOD, FND_API.G_MISS_CHAR ),
574 NVL( BASED_ON_BALANCE, FND_API.G_MISS_CHAR ),
575 NVL( FIRST_RATE_CHANGE_DATE, FND_API.G_MISS_DATE ),
576 NVL( NEXT_RATE_CHANGE_DATE, FND_API.G_MISS_DATE ),
577 NVL( PERCENT_INCREASE, FND_API.G_MISS_NUM ),
578 NVL( PERCENT_INCREASE_TERM, FND_API.G_MISS_CHAR ),
579 NVL( PAYMENT_APPLICATION_ORDER, FND_API.G_MISS_CHAR ),
580 NVL( PREPAY_PENALTY_FLAG, FND_API.G_MISS_CHAR ),
581 NVL( PREPAY_PENALTY_DATE, FND_API.G_MISS_DATE ),
582 NVL( CEILING_RATE, FND_API.G_MISS_NUM ),
583 NVL( FLOOR_RATE, FND_API.G_MISS_NUM ),
584 NVL( DELINQUENCY_THRESHOLD_NUMBER, FND_API.G_MISS_NUM ),
585 NVL( DELINQUENCY_THRESHOLD_AMOUNT, FND_API.G_MISS_NUM ),
586 NVL( CALCULATION_METHOD, FND_API.G_MISS_CHAR ),
587 NVL( REAMORTIZE_UNDER_PAYMENT, FND_API.G_MISS_CHAR ),
588 NVL( REAMORTIZE_OVER_PAYMENT, FND_API.G_MISS_CHAR ),
589 NVL( REAMORTIZE_WITH_INTEREST, FND_API.G_MISS_CHAR ),
590 NVL( LOAN_PAYMENT_FREQUENCY, FND_API.G_MISS_CHAR ),
591 NVL( INTEREST_COMPOUNDING_FREQ, FND_API.G_MISS_CHAR ),
592 NVL( AMORTIZATION_FREQUENCY, FND_API.G_MISS_CHAR ),
593 NVL( NUMBER_GRACE_DAYS, FND_API.G_MISS_NUM ),
594 NVL( RATE_TYPE, FND_API.G_MISS_CHAR ),
595 NVL( INDEX_NAME, FND_API.G_MISS_CHAR ),
596 NVL( ADJUSTMENT_FREQUENCY, FND_API.G_MISS_NUM ),
597 NVL( ADJUSTMENT_FREQUENCY_TYPE, FND_API.G_MISS_CHAR ),
598 NVL( FIXED_RATE_PERIOD, FND_API.G_MISS_NUM ),
599 NVL( FIXED_RATE_PERIOD_TYPE, FND_API.G_MISS_CHAR ),
600 NVL( FIRST_PAYMENT_DATE, FND_API.G_MISS_DATE ),
601 NVL( NEXT_PAYMENT_DUE_DATE, FND_API.G_MISS_DATE ),
602 NVL( OPEN_FIRST_PAYMENT_DATE, FND_API.G_MISS_DATE ),
603 NVL( OPEN_PAYMENT_FREQUENCY, FND_API.G_MISS_CHAR ),
604 NVL( OPEN_NEXT_PAYMENT_DATE, FND_API.G_MISS_DATE ),
605 NVL( LOCK_IN_DATE, FND_API.G_MISS_DATE ),
606 NVL( LOCK_TO_DATE, FND_API.G_MISS_DATE ),
607 NVL( RATE_CHANGE_FREQUENCY, FND_API.G_MISS_CHAR ),
608 NVL( INDEX_RATE_ID, FND_API.G_MISS_NUM ),
609 NVL( PERCENT_INCREASE_LIFE, FND_API.G_MISS_NUM ),
610 NVL( FIRST_PERCENT_INCREASE, FND_API.G_MISS_NUM ),
611 NVL( OPEN_PERCENT_INCREASE, FND_API.G_MISS_NUM ),
612 NVL( OPEN_PERCENT_INCREASE_LIFE, FND_API.G_MISS_NUM ),
613 NVL( OPEN_FIRST_PERCENT_INCREASE, FND_API.G_MISS_NUM ),
614 NVL( PMT_APPL_ORDER_SCOPE, FND_API.G_MISS_CHAR ),
615 NVL( OPEN_CEILING_RATE, FND_API.G_MISS_NUM ),
616 NVL( OPEN_FLOOR_RATE, FND_API.G_MISS_NUM ),
617 NVL( OPEN_INDEX_DATE, FND_API.G_MISS_DATE ),
618 NVL( TERM_INDEX_DATE, FND_API.G_MISS_DATE ),
619 NVL( OPEN_PROJECTED_RATE, FND_API.G_MISS_NUM ),
620 NVL( TERM_PROJECTED_RATE, FND_API.G_MISS_NUM ),
621 NVL( PAYMENT_CALC_METHOD, FND_API.G_MISS_CHAR),
622 NVL( CUSTOM_CALC_METHOD, FND_API.G_MISS_CHAR ),
623 NVL( ORIG_PAY_CALC_METHOD, FND_API.G_MISS_CHAR ),
624 NVL( PRIN_FIRST_PAY_DATE, FND_API.G_MISS_DATE ),
625 NVL( PRIN_PAYMENT_FREQUENCY, FND_API.G_MISS_CHAR ),
626 NVL( PENAL_INT_RATE, FND_API.G_MISS_NUM ),
627 NVL( PENAL_INT_GRACE_DAYS, FND_API.G_MISS_NUM ),
628 NVL( CALC_ADD_INT_UNPAID_PRIN, FND_API.G_MISS_CHAR ),
629 NVL( CALC_ADD_INT_UNPAID_INT, FND_API.G_MISS_CHAR ),
630 NVL( REAMORTIZE_ON_FUNDING, FND_API.G_MISS_CHAR ),
631 NVL( DEFAULT_THRESHOLD_AMOUNT, FND_API.G_MISS_NUM ),
632 NVL( CUSTOM_SCHED_DESC, FND_API.G_MISS_CHAR ),
633 NVL( CAPITALIZE_INT, FND_API.G_MISS_CHAR ),
634 NVL( CALC_EARLY_PAY_CR, FND_API.G_MISS_CHAR ),
635 NVL( FLUCTUATE_EQ_PAY_AMOUNT, FND_API.G_MISS_CHAR )
636
637 INTO
638 X_TERM_ID,
639 X_LOAN_ID,
640 X_DAY_COUNT_METHOD,
641 X_BASED_ON_BALANCE,
642 X_FIRST_RATE_CHANGE_DATE,
643 X_NEXT_RATE_CHANGE_DATE,
644 X_PERCENT_INCREASE,
645 X_PERCENT_INCREASE_TERM,
646 X_PAYMENT_APPLICATION_ORDER,
647 X_PREPAY_PENALTY_FLAG,
648 X_PREPAY_PENALTY_DATE,
649 X_CEILING_RATE,
650 X_FLOOR_RATE,
651 X_DELINQUENCY_THRESHOLD_NUMBER,
652 X_DELINQUENCY_THRESHOLD_AMOUNT,
653 X_CALCULATION_METHOD,
654 X_REAMORTIZE_UNDER_PAYMENT,
655 X_REAMORTIZE_OVER_PAYMENT,
656 X_REAMORTIZE_WITH_INTEREST,
657 X_LOAN_PAYMENT_FREQUENCY,
658 X_INTEREST_COMPOUNDING_FREQ,
659 X_AMORTIZATION_FREQUENCY,
660 X_NUMBER_GRACE_DAYS,
661 X_RATE_TYPE,
662 X_INDEX_NAME,
663 X_ADJUSTMENT_FREQUENCY,
664 X_ADJUSTMENT_FREQUENCY_TYPE,
665 X_FIXED_RATE_PERIOD,
666 X_FIXED_RATE_PERIOD_TYPE,
667 X_FIRST_PAYMENT_DATE,
668 X_NEXT_PAYMENT_DUE_DATE,
669 X_OPEN_FIRST_PAYMENT_DATE,
670 X_OPEN_PAYMENT_FREQUENCY,
671 X_OPEN_NEXT_PAYMENT_DATE,
672 X_LOCK_IN_DATE,
673 X_LOCK_TO_DATE,
674 X_RATE_CHANGE_FREQUENCY,
675 X_INDEX_RATE_ID,
676 X_PERCENT_INCREASE_LIFE,
677 X_FIRST_PERCENT_INCREASE,
678 X_OPEN_PERCENT_INCREASE,
679 X_OPEN_PERCENT_INCREASE_LIFE,
680 X_OPEN_FIRST_PERCENT_INCREASE,
681 X_PMT_APPL_ORDER_SCOPE,
682 X_OPEN_CEILING_RATE,
683 X_OPEN_FLOOR_RATE,
684 X_OPEN_INDEX_DATE,
685 X_TERM_INDEX_DATE,
686 X_OPEN_PROJECTED_RATE,
687 X_TERM_PROJECTED_RATE,
688 X_PAYMENT_CALC_METHOD,
689 X_CUSTOM_CALC_METHOD,
690 X_ORIG_PAY_CALC_METHOD,
691 X_PRIN_FIRST_PAY_DATE,
692 X_PRIN_PAYMENT_FREQUENCY,
693 X_PENAL_INT_RATE,
694 X_PENAL_INT_GRACE_DAYS,
695 X_CALC_ADD_INT_UNPAID_PRIN,
696 X_CALC_ADD_INT_UNPAID_INT,
697 X_REAMORTIZE_ON_FUNDING,
698 X_DEFAULT_THRESHOLD_AMOUNT,
699 X_CUSTOM_SCHED_DESC,
700 X_CAPITALIZE_INT,
701 X_CALC_EARLY_PAY_CR,
702 X_FLUCTUATE_EQ_PAY_AMOUNT
703 FROM LNS_TERMS
704 WHERE TERM_ID = X_TERM_ID;
705
706 EXCEPTION
707 WHEN NO_DATA_FOUND THEN
708 FND_MESSAGE.SET_NAME( 'LNS', 'LNS_API_NO_RECORD' );
709 FND_MESSAGE.SET_TOKEN( 'RECORD', 'loan_terms_rec');
710 FND_MESSAGE.SET_TOKEN( 'VALUE', TO_CHAR( X_TERM_ID ) );
711 FND_MSG_PUB.ADD;
712 RAISE FND_API.G_EXC_ERROR;
713
714 END Select_Row;
715
716 PROCEDURE Delete_Row (
717 X_TERM_ID IN NUMBER
718 ) IS
719
720 BEGIN
721
722 DELETE FROM LNS_TERMS
723 WHERE TERM_ID = X_TERM_ID;
724
725 IF ( SQL%NOTFOUND ) THEN
726 RAISE NO_DATA_FOUND;
727 END IF;
728
729 END Delete_Row;
730
731 END LNS_TERMS_PKG;