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