[Home] [Help]
PACKAGE BODY: APPS.CS_CONTRACTSTATS_PVT
Source
1 PACKAGE BODY CS_CONTRACTSTATS_PVT AS
2 /* $Header: csctcstb.pls 115.1 99/07/16 08:51:26 porting ship $ */
3 FUNCTION get_seq_id RETURN NUMBER IS
4 CURSOR get_seq_id_csr IS
5 SELECT CS_CONTRACT_STATUSES_S.nextval FROM SYS.DUAL;
6 l_seq_id NUMBER := 0;
7 BEGIN
8 OPEN get_seq_id_csr;
9 FETCH get_seq_id_csr INTO l_seq_id;
10 CLOSE get_seq_id_csr;
11 RETURN(l_seq_id);
12 END get_seq_id;
13
14
15 -- Validation
16 FUNCTION Validate_Item_Attributes
17 (
18 p_contractstats_rec IN ContractStats_Rec_Type
19 )
20 RETURN VARCHAR2
21 IS
22 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
23 BEGIN
24 IF p_contractstats_rec.name = TAPI_DEV_KIT.G_MISS_CHAR OR
25 p_contractstats_rec.name IS NULL
26 THEN
27 TAPI_DEV_KIT.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'name');
28 l_return_status := FND_API.G_RET_STS_ERROR;
29 ELSIF p_contractstats_rec.status_level = TAPI_DEV_KIT.G_MISS_NUM OR
30 p_contractstats_rec.status_level IS NULL
31 THEN
32 TAPI_DEV_KIT.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'status_level');
33 l_return_status := FND_API.G_RET_STS_ERROR;
34 ELSIF p_contractstats_rec.last_update_date = TAPI_DEV_KIT.G_MISS_DATE OR
35 p_contractstats_rec.last_update_date IS NULL
36 THEN
37 TAPI_DEV_KIT.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'last_update_date');
38 l_return_status := FND_API.G_RET_STS_ERROR;
39 ELSIF p_contractstats_rec.last_updated_by = TAPI_DEV_KIT.G_MISS_NUM OR
40 p_contractstats_rec.last_updated_by IS NULL
41 THEN
42 TAPI_DEV_KIT.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'last_updated_by');
43 l_return_status := FND_API.G_RET_STS_ERROR;
44 ELSIF p_contractstats_rec.creation_date = TAPI_DEV_KIT.G_MISS_DATE OR
45 p_contractstats_rec.creation_date IS NULL
46 THEN
47 TAPI_DEV_KIT.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'creation_date');
48 l_return_status := FND_API.G_RET_STS_ERROR;
49 ELSIF p_contractstats_rec.created_by = TAPI_DEV_KIT.G_MISS_NUM OR
50 p_contractstats_rec.created_by IS NULL
51 THEN
52 TAPI_DEV_KIT.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'created_by');
53 l_return_status := FND_API.G_RET_STS_ERROR;
54 END IF;
55 RETURN(l_return_status);
56 END Validate_Item_Attributes;
57
58
59 ----- Default
60 FUNCTION Default_Item_Attributes
61 (
62 p_contractstats_rec IN ContractStats_Rec_Type,
63 l_def_contractstats_rec OUT ContractStats_Rec_Type
64 )
65 RETURN VARCHAR2
66 IS
67 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
68 BEGIN
69 l_def_contractstats_rec := p_contractstats_rec;
70 l_def_contractstats_rec.OBJECT_VERSION_NUMBER := NVL(l_def_contractstats_rec.OBJECT_VERSION_NUMBER, 0) + 1;
71 RETURN(l_return_status);
72 End Default_Item_attributes;
73
74
75 FUNCTION Validate_Item_Record (
76 p_contractstats_rec IN ContractStats_Rec_Type
77 )
78 RETURN VARCHAR2 IS
79 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
80 BEGIN
81 RETURN (l_return_status);
82 END Validate_Item_Record;
83
84
85 PROCEDURE migrate (
86 p_from IN ContractStats_Val_Rec_Type,
87 p_to OUT ContractStats_Rec_Type
88 ) IS
89 BEGIN
90 p_to.contract_status_id := p_from.contract_status_id;
91 p_to.name := p_from.name;
92 p_to.description := p_from.description;
93 p_to.validate_contract := p_from.validate_contract;
94 p_to.status_level := p_from.status_level;
95 p_to.eligible_for_invoicing := p_from.eligible_for_invoicing;
96 p_to.update_allowed := p_from.update_allowed;
97 p_to.eligible_for_entitlements := p_from.eligible_for_entitlements;
98 p_to.terminated_flag := p_from.terminated_flag;
99 p_to.delete_allowed := p_from.delete_allowed;
100 p_to.last_update_date := p_from.last_update_date;
101 p_to.last_updated_by := p_from.last_updated_by;
102 p_to.creation_date := p_from.creation_date;
103 p_to.created_by := p_from.created_by;
104 p_to.last_update_login := p_from.last_update_login;
105 p_to.start_date_active := p_from.start_date_active;
106 p_to.end_date_active := p_from.end_date_active;
107 p_to.attribute1 := p_from.attribute1;
108 p_to.attribute2 := p_from.attribute2;
109 p_to.attribute3 := p_from.attribute3;
110 p_to.attribute4 := p_from.attribute4;
111 p_to.attribute5 := p_from.attribute5;
112 p_to.attribute6 := p_from.attribute6;
113 p_to.attribute7 := p_from.attribute7;
114 p_to.attribute8 := p_from.attribute8;
115 p_to.attribute9 := p_from.attribute9;
116 p_to.attribute10 := p_from.attribute10;
117 p_to.attribute11 := p_from.attribute11;
118 p_to.attribute12 := p_from.attribute12;
119 p_to.attribute13 := p_from.attribute13;
120 p_to.attribute14 := p_from.attribute14;
121 p_to.attribute15 := p_from.attribute15;
122 p_to.context := p_from.context;
123 p_to.object_version_number := p_from.object_version_number;
124 END migrate;
125 PROCEDURE migrate (
126 p_from IN ContractStats_Rec_Type,
127 p_to OUT ContractStats_Val_Rec_Type
128 ) IS
129 BEGIN
130 p_to.contract_status_id := p_from.contract_status_id;
131 p_to.name := p_from.name;
132 p_to.description := p_from.description;
133 p_to.validate_contract := p_from.validate_contract;
134 p_to.status_level := p_from.status_level;
135 p_to.eligible_for_invoicing := p_from.eligible_for_invoicing;
136 p_to.update_allowed := p_from.update_allowed;
137 p_to.eligible_for_entitlements := p_from.eligible_for_entitlements;
138 p_to.terminated_flag := p_from.terminated_flag;
139 p_to.delete_allowed := p_from.delete_allowed;
140 p_to.last_update_date := p_from.last_update_date;
141 p_to.last_updated_by := p_from.last_updated_by;
142 p_to.creation_date := p_from.creation_date;
143 p_to.created_by := p_from.created_by;
144 p_to.last_update_login := p_from.last_update_login;
145 p_to.start_date_active := p_from.start_date_active;
146 p_to.end_date_active := p_from.end_date_active;
147 p_to.attribute1 := p_from.attribute1;
148 p_to.attribute2 := p_from.attribute2;
149 p_to.attribute3 := p_from.attribute3;
150 p_to.attribute4 := p_from.attribute4;
151 p_to.attribute5 := p_from.attribute5;
152 p_to.attribute6 := p_from.attribute6;
153 p_to.attribute7 := p_from.attribute7;
154 p_to.attribute8 := p_from.attribute8;
155 p_to.attribute9 := p_from.attribute9;
156 p_to.attribute10 := p_from.attribute10;
157 p_to.attribute11 := p_from.attribute11;
158 p_to.attribute12 := p_from.attribute12;
159 p_to.attribute13 := p_from.attribute13;
160 p_to.attribute14 := p_from.attribute14;
161 p_to.attribute15 := p_from.attribute15;
162 p_to.context := p_from.context;
163 p_to.object_version_number := p_from.object_version_number;
164 END migrate;
165 PROCEDURE insert_row
166 (
167 p_api_version IN NUMBER,
168 p_init_msg_list IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
169 p_validation_level IN NUMBER,
170 p_commit IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
171 x_return_status OUT VARCHAR2,
172 x_msg_count OUT NUMBER,
173 x_msg_data OUT VARCHAR2,
174 p_contractstats_rec IN ContractStats_Rec_Type := G_MISS_CONTRACTSTATS_REC,
175 x_contract_status_id OUT NUMBER,
176 x_object_version_number OUT NUMBER) IS
177 l_api_name CONSTANT VARCHAR2(30) := 'insert_row';
178 l_api_version CONSTANT NUMBER := 1;
179 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
180 l_contractstats_rec ContractStats_Rec_Type;
181 l_def_contractstats_rec ContractStats_Rec_Type;
182 BEGIN
183 l_return_status := TAPI_DEV_KIT.START_ACTIVITY(l_api_name,
184 G_PKG_NAME,
185 l_api_version,
186 p_api_version,
187 p_init_msg_list,
188 '_Pvt',
189 x_return_status);
190 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
191 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
192 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
193 RAISE FND_API.G_EXC_ERROR;
194 END IF;
195 l_contractstats_rec := p_contractstats_rec;
196 --- Validate all non-missing attributes (Item Level Validation)
197 IF p_validation_level >= FND_API.G_VALID_LEVEL_FULL THEN
198 l_return_status := Validate_Item_Attributes
199 (
200 l_contractstats_rec ---- IN
201 );
202 --- If any errors happen abort API
203 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
204 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
205 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
206 RAISE FND_API.G_EXC_ERROR;
207 END IF;
208 END IF;
209 --- Defaulting item attributes
210 l_return_status := Default_Item_Attributes
211 (
212 l_contractstats_rec, ---- IN
213 l_def_contractstats_rec
214 );
215 --- If any errors happen abort API
216 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
217 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
218 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
219 RAISE FND_API.G_EXC_ERROR;
220 END IF;
221 IF (p_validation_level >= FND_API.G_VALID_LEVEL_FULL) THEN
222 l_return_status := Validate_Item_Record(l_def_contractstats_rec);
223 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
224 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
225 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
226 RAISE FND_API.G_EXC_ERROR;
227 END IF;
228 END IF;
229 -- Set primary key value
230 l_def_contractstats_rec.contract_status_id := get_seq_id;
231 INSERT INTO CS_CONTRACT_STATUSES(
232 contract_status_id,
233 name,
234 description,
235 validate_contract,
236 status_level,
237 eligible_for_invoicing,
238 update_allowed,
239 eligible_for_entitlements,
240 terminated_flag,
241 delete_allowed,
242 last_update_date,
243 last_updated_by,
244 creation_date,
245 created_by,
246 last_update_login,
247 start_date_active,
248 end_date_active,
249 attribute1,
250 attribute2,
251 attribute3,
252 attribute4,
253 attribute5,
254 attribute6,
255 attribute7,
256 attribute8,
257 attribute9,
258 attribute10,
259 attribute11,
260 attribute12,
261 attribute13,
262 attribute14,
263 attribute15,
264 context,
265 object_version_number)
266 VALUES (
267 l_def_contractstats_rec.contract_status_id,
268 l_def_contractstats_rec.name,
269 l_def_contractstats_rec.description,
270 l_def_contractstats_rec.validate_contract,
271 l_def_contractstats_rec.status_level,
272 l_def_contractstats_rec.eligible_for_invoicing,
273 l_def_contractstats_rec.update_allowed,
274 l_def_contractstats_rec.eligible_for_entitlements,
275 l_def_contractstats_rec.terminated_flag,
276 l_def_contractstats_rec.delete_allowed,
277 l_def_contractstats_rec.last_update_date,
278 l_def_contractstats_rec.last_updated_by,
279 l_def_contractstats_rec.creation_date,
283 l_def_contractstats_rec.end_date_active,
280 l_def_contractstats_rec.created_by,
281 l_def_contractstats_rec.last_update_login,
282 l_def_contractstats_rec.start_date_active,
284 l_def_contractstats_rec.attribute1,
285 l_def_contractstats_rec.attribute2,
286 l_def_contractstats_rec.attribute3,
287 l_def_contractstats_rec.attribute4,
288 l_def_contractstats_rec.attribute5,
289 l_def_contractstats_rec.attribute6,
290 l_def_contractstats_rec.attribute7,
291 l_def_contractstats_rec.attribute8,
292 l_def_contractstats_rec.attribute9,
293 l_def_contractstats_rec.attribute10,
294 l_def_contractstats_rec.attribute11,
295 l_def_contractstats_rec.attribute12,
296 l_def_contractstats_rec.attribute13,
297 l_def_contractstats_rec.attribute14,
298 l_def_contractstats_rec.attribute15,
299 l_def_contractstats_rec.context,
300 l_def_contractstats_rec.object_version_number);
301 -- Set OUT values
302 x_contract_status_id := l_def_contractstats_rec.contract_status_id;
303 x_object_version_number := l_def_contractstats_rec.OBJECT_VERSION_NUMBER;
304 TAPI_DEV_KIT.END_ACTIVITY(p_commit, x_msg_count, x_msg_data);
305 EXCEPTION
306 WHEN FND_API.G_EXC_ERROR THEN
307 x_return_status := TAPI_DEV_KIT.HANDLE_EXCEPTIONS
308 (
309 l_api_name,
310 G_PKG_NAME,
311 'FND_API.G_RET_STS_ERROR',
312 x_msg_count,
313 x_msg_data,
314 '_Pvt'
315 );
316 APP_EXCEPTION.RAISE_EXCEPTION;
317 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
318 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
319 (
320 l_api_name,
321 G_PKG_NAME,
322 'FND_API.G_RET_STS_UNEXP_ERROR',
323 x_msg_count,
324 x_msg_data,
325 '_Pvt'
326 );
327 APP_EXCEPTION.RAISE_EXCEPTION;
328 WHEN TAPI_DEV_KIT.G_EXC_DUP_VAL_ON_INDEX THEN
329 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
330 (
331 l_api_name,
332 G_PKG_NAME,
333 'TAPI_DEV_KIT.G_RET_STS_DUP_VAL_ON_INDEX',
334 x_msg_count,
335 x_msg_data,
336 '_Pvt'
337 );
338 APP_EXCEPTION.RAISE_EXCEPTION;
339 END insert_row;
340 PROCEDURE insert_row
341 (
342 p_api_version IN NUMBER,
343 p_init_msg_list IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
344 p_validation_level IN NUMBER,
345 p_commit IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
346 x_return_status OUT VARCHAR2,
347 x_msg_count OUT NUMBER,
348 x_msg_data OUT VARCHAR2,
349 p_name IN CS_CONTRACT_STATUSES.NAME%TYPE := NULL,
350 p_description IN CS_CONTRACT_STATUSES.DESCRIPTION%TYPE := NULL,
351 p_validate_contract IN CS_CONTRACT_STATUSES.VALIDATE_CONTRACT%TYPE := NULL,
352 p_status_level IN NUMBER := NULL,
353 p_eligible_for_invoicing IN CS_CONTRACT_STATUSES.ELIGIBLE_FOR_INVOICING%TYPE := NULL,
354 p_update_allowed IN CS_CONTRACT_STATUSES.UPDATE_ALLOWED%TYPE := NULL,
355 p_eligible_for_entitlements IN CS_CONTRACT_STATUSES.ELIGIBLE_FOR_ENTITLEMENTS%TYPE := NULL,
356 p_terminated_flag IN CS_CONTRACT_STATUSES.TERMINATED_FLAG%TYPE := NULL,
357 p_delete_allowed IN CS_CONTRACT_STATUSES.DELETE_ALLOWED%TYPE := NULL,
358 p_last_update_date IN CS_CONTRACT_STATUSES.LAST_UPDATE_DATE%TYPE := NULL,
359 p_last_updated_by IN NUMBER := NULL,
360 p_creation_date IN CS_CONTRACT_STATUSES.CREATION_DATE%TYPE := NULL,
361 p_created_by IN NUMBER := NULL,
362 p_last_update_login IN NUMBER := NULL,
363 p_start_date_active IN CS_CONTRACT_STATUSES.START_DATE_ACTIVE%TYPE := NULL,
364 p_end_date_active IN CS_CONTRACT_STATUSES.END_DATE_ACTIVE%TYPE := NULL,
365 p_attribute1 IN CS_CONTRACT_STATUSES.ATTRIBUTE1%TYPE := NULL,
366 p_attribute2 IN CS_CONTRACT_STATUSES.ATTRIBUTE2%TYPE := NULL,
367 p_attribute3 IN CS_CONTRACT_STATUSES.ATTRIBUTE3%TYPE := NULL,
368 p_attribute4 IN CS_CONTRACT_STATUSES.ATTRIBUTE4%TYPE := NULL,
369 p_attribute5 IN CS_CONTRACT_STATUSES.ATTRIBUTE5%TYPE := NULL,
370 p_attribute6 IN CS_CONTRACT_STATUSES.ATTRIBUTE6%TYPE := NULL,
371 p_attribute7 IN CS_CONTRACT_STATUSES.ATTRIBUTE7%TYPE := NULL,
372 p_attribute8 IN CS_CONTRACT_STATUSES.ATTRIBUTE8%TYPE := NULL,
373 p_attribute9 IN CS_CONTRACT_STATUSES.ATTRIBUTE9%TYPE := NULL,
374 p_attribute10 IN CS_CONTRACT_STATUSES.ATTRIBUTE10%TYPE := NULL,
375 p_attribute11 IN CS_CONTRACT_STATUSES.ATTRIBUTE11%TYPE := NULL,
376 p_attribute12 IN CS_CONTRACT_STATUSES.ATTRIBUTE12%TYPE := NULL,
377 p_attribute13 IN CS_CONTRACT_STATUSES.ATTRIBUTE13%TYPE := NULL,
378 p_attribute14 IN CS_CONTRACT_STATUSES.ATTRIBUTE14%TYPE := NULL,
379 p_attribute15 IN CS_CONTRACT_STATUSES.ATTRIBUTE15%TYPE := NULL,
380 p_context IN CS_CONTRACT_STATUSES.CONTEXT%TYPE := NULL,
381 p_object_version_number IN NUMBER := NULL,
382 x_contract_status_id OUT NUMBER,
383 x_object_version_number OUT NUMBER) IS
384 l_api_name CONSTANT VARCHAR2(30) := 'insert_row';
385 l_api_version CONSTANT NUMBER := 1;
386 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
387 l_contractstats_rec ContractStats_Rec_Type;
388 BEGIN
389 l_return_status := TAPI_DEV_KIT.START_ACTIVITY(l_api_name,
393 p_init_msg_list,
390 G_PKG_NAME,
391 l_api_version,
392 p_api_version,
394 '_Pvt',
395 x_return_status);
396 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
397 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
398 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
399 RAISE FND_API.G_EXC_ERROR;
400 END IF;
401 l_contractstats_rec.NAME := p_name;
402 l_contractstats_rec.DESCRIPTION := p_description;
403 l_contractstats_rec.VALIDATE_CONTRACT := p_validate_contract;
404 l_contractstats_rec.STATUS_LEVEL := p_status_level;
405 l_contractstats_rec.ELIGIBLE_FOR_INVOICING := p_eligible_for_invoicing;
406 l_contractstats_rec.UPDATE_ALLOWED := p_update_allowed;
407 l_contractstats_rec.ELIGIBLE_FOR_ENTITLEMENTS := p_eligible_for_entitlements;
408 l_contractstats_rec.TERMINATED_FLAG := p_terminated_flag;
409 l_contractstats_rec.DELETE_ALLOWED := p_delete_allowed;
410 l_contractstats_rec.LAST_UPDATE_DATE := p_last_update_date;
411 l_contractstats_rec.LAST_UPDATED_BY := p_last_updated_by;
412 l_contractstats_rec.CREATION_DATE := p_creation_date;
413 l_contractstats_rec.CREATED_BY := p_created_by;
414 l_contractstats_rec.LAST_UPDATE_LOGIN := p_last_update_login;
415 l_contractstats_rec.START_DATE_ACTIVE := p_start_date_active;
416 l_contractstats_rec.END_DATE_ACTIVE := p_end_date_active;
417 l_contractstats_rec.ATTRIBUTE1 := p_attribute1;
418 l_contractstats_rec.ATTRIBUTE2 := p_attribute2;
419 l_contractstats_rec.ATTRIBUTE3 := p_attribute3;
420 l_contractstats_rec.ATTRIBUTE4 := p_attribute4;
421 l_contractstats_rec.ATTRIBUTE5 := p_attribute5;
422 l_contractstats_rec.ATTRIBUTE6 := p_attribute6;
423 l_contractstats_rec.ATTRIBUTE7 := p_attribute7;
424 l_contractstats_rec.ATTRIBUTE8 := p_attribute8;
425 l_contractstats_rec.ATTRIBUTE9 := p_attribute9;
426 l_contractstats_rec.ATTRIBUTE10 := p_attribute10;
427 l_contractstats_rec.ATTRIBUTE11 := p_attribute11;
428 l_contractstats_rec.ATTRIBUTE12 := p_attribute12;
429 l_contractstats_rec.ATTRIBUTE13 := p_attribute13;
430 l_contractstats_rec.ATTRIBUTE14 := p_attribute14;
431 l_contractstats_rec.ATTRIBUTE15 := p_attribute15;
432 l_contractstats_rec.CONTEXT := p_context;
433 l_contractstats_rec.OBJECT_VERSION_NUMBER := p_object_version_number;
434 insert_row(
435 p_api_version,
436 p_init_msg_list,
437 p_validation_level,
438 p_commit,
439 x_return_status,
440 x_msg_count,
441 x_msg_data,
442 l_contractstats_rec,
443 x_contract_status_id,
444 x_object_version_number
445 );
446 TAPI_DEV_KIT.END_ACTIVITY(p_commit, x_msg_count, x_msg_data);
447 EXCEPTION
448 WHEN FND_API.G_EXC_ERROR THEN
449 x_return_status := TAPI_DEV_KIT.HANDLE_EXCEPTIONS
450 (
451 l_api_name,
452 G_PKG_NAME,
453 'FND_API.G_RET_STS_ERROR',
454 x_msg_count,
455 x_msg_data,
456 '_Pvt'
457 );
458 APP_EXCEPTION.RAISE_EXCEPTION;
459 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
460 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
461 (
462 l_api_name,
463 G_PKG_NAME,
464 'FND_API.G_RET_STS_UNEXP_ERROR',
465 x_msg_count,
466 x_msg_data,
467 '_Pvt'
468 );
469 APP_EXCEPTION.RAISE_EXCEPTION;
470 WHEN TAPI_DEV_KIT.G_EXC_DUP_VAL_ON_INDEX THEN
471 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
472 (
473 l_api_name,
474 G_PKG_NAME,
475 'TAPI_DEV_KIT.G_RET_STS_DUP_VAL_ON_INDEX',
476 x_msg_count,
477 x_msg_data,
478 '_Pvt'
479 );
480 APP_EXCEPTION.RAISE_EXCEPTION;
481 END insert_row;
482 Procedure lock_row
483 (
484 p_api_version IN NUMBER,
485 p_init_msg_list IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
486 p_validation_level IN NUMBER,
487 p_commit IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
488 x_return_status OUT VARCHAR2,
489 x_msg_count OUT NUMBER,
490 x_msg_data OUT VARCHAR2,
491 p_contract_status_id IN NUMBER,
492 p_object_version_number IN NUMBER) IS
493 E_Resource_Busy EXCEPTION;
494 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
495 CURSOR lock_csr IS
496 SELECT OBJECT_VERSION_NUMBER
497 FROM CS_CONTRACT_STATUSES
498 WHERE
499 CONTRACT_STATUS_ID = p_contract_status_id AND
500 OBJECT_VERSION_NUMBER = p_object_version_number
501 FOR UPDATE OF OBJECT_VERSION_NUMBER NOWAIT;
502
503 CURSOR lchk_csr IS
504 SELECT OBJECT_VERSION_NUMBER
505 FROM CS_CONTRACT_STATUSES
506 WHERE
507 CONTRACT_STATUS_ID = p_contract_status_id
508 ;
509 l_api_name CONSTANT VARCHAR2(30) := 'lock_row';
510 l_api_version CONSTANT NUMBER := 1;
511 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
512 l_object_version_number CS_CONTRACT_STATUSES.OBJECT_VERSION_NUMBER%TYPE;
513 lc_object_version_number CS_CONTRACT_STATUSES.OBJECT_VERSION_NUMBER%TYPE;
514 l_row_notfound BOOLEAN := FALSE;
515 lc_row_notfound BOOLEAN := FALSE;
516 BEGIN
517 l_return_status := TAPI_DEV_KIT.START_ACTIVITY(l_api_name,
518 G_PKG_NAME,
522 '_Pvt',
519 l_api_version,
520 p_api_version,
521 p_init_msg_list,
523 x_return_status);
524 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
525 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
526 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
527 RAISE FND_API.G_EXC_ERROR;
528 END IF;
529 BEGIN
530 OPEN lock_csr;
531 FETCH lock_csr INTO l_object_version_number;
532 l_row_notfound := lock_csr%NOTFOUND;
533 CLOSE lock_csr;
534 EXCEPTION
535 WHEN E_Resource_Busy THEN
536 IF (lock_csr%ISOPEN) THEN
537 CLOSE lock_csr;
538 END IF;
539 TAPI_DEV_KIT.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
540 RAISE APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION;
541 END;
542
543 IF ( l_row_notfound ) THEN
544 OPEN lchk_csr;
545 FETCH lchk_csr INTO lc_object_version_number;
546 lc_row_notfound := lchk_csr%NOTFOUND;
547 CLOSE lchk_csr;
548 END IF;
549 IF (lc_row_notfound) THEN
550 TAPI_DEV_KIT.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
551 RAISE FND_API.G_EXC_ERROR;
552 ELSIF lc_object_version_number > p_object_version_number THEN
553 TAPI_DEV_KIT.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
554 RAISE FND_API.G_EXC_ERROR;
555 ELSIF lc_object_version_number <> p_object_version_number THEN
556 TAPI_DEV_KIT.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
557 RAISE FND_API.G_EXC_ERROR;
558 ELSIF lc_object_version_number = -1 THEN
559 TAPI_DEV_KIT.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
560 RAISE FND_API.G_EXC_ERROR;
561 END IF;
562 TAPI_DEV_KIT.END_ACTIVITY(p_commit, x_msg_count, x_msg_data);
563 EXCEPTION
564 WHEN FND_API.G_EXC_ERROR THEN
565 x_return_status := TAPI_DEV_KIT.HANDLE_EXCEPTIONS
566 (
567 l_api_name,
568 G_PKG_NAME,
569 'FND_API.G_RET_STS_ERROR',
570 x_msg_count,
571 x_msg_data,
572 '_Pvt'
573 );
574 APP_EXCEPTION.RAISE_EXCEPTION;
575 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
576 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
577 (
578 l_api_name,
579 G_PKG_NAME,
580 'FND_API.G_RET_STS_UNEXP_ERROR',
581 x_msg_count,
582 x_msg_data,
583 '_Pvt'
584 );
585 APP_EXCEPTION.RAISE_EXCEPTION;
586 WHEN TAPI_DEV_KIT.G_EXC_DUP_VAL_ON_INDEX THEN
587 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
588 (
589 l_api_name,
590 G_PKG_NAME,
591 'TAPI_DEV_KIT.G_RET_STS_DUP_VAL_ON_INDEX',
592 x_msg_count,
593 x_msg_data,
594 '_Pvt'
595 );
596 APP_EXCEPTION.RAISE_EXCEPTION;
597 END lock_row;
598 Procedure update_row
599 (
600 p_api_version IN NUMBER,
601 p_init_msg_list IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
602 p_validation_level IN NUMBER,
603 p_commit IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
604 x_return_status OUT VARCHAR2,
605 x_msg_count OUT NUMBER,
606 x_msg_data OUT VARCHAR2,
607 p_contractstats_val_rec IN ContractStats_Val_Rec_Type := G_MISS_CONTRACTSTATS_VAL_REC,
608 x_object_version_number OUT NUMBER) IS
609 l_api_name CONSTANT VARCHAR2(30) := 'update_row';
610 l_api_version CONSTANT NUMBER := 1;
611 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
612 l_contractstats_rec ContractStats_Rec_Type;
613 l_def_contractstats_rec ContractStats_Rec_Type;
614 FUNCTION populate_new_record (
615 p_contractstats_rec IN ContractStats_Rec_Type,
616 x_contractstats_rec OUT ContractStats_Rec_Type
617 ) RETURN VARCHAR2 IS
618 CURSOR cs_contracts_statuses_pk_csr (p_contract_status_id IN NUMBER) IS
619 SELECT *
620 FROM Cs_Contract_Statuses
621 WHERE cs_contract_statuses.contract_status_id = p_contract_status_id;
622 l_cs_contracts_statuses_pk cs_contracts_statuses_pk_csr%ROWTYPE;
623 l_row_notfound BOOLEAN := TRUE;
624 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
625 BEGIN
626 x_contractstats_rec := p_contractstats_rec;
627 -- Get current database values
628 OPEN cs_contracts_statuses_pk_csr (p_contractstats_rec.contract_status_id);
629 FETCH cs_contracts_statuses_pk_csr INTO l_cs_contracts_statuses_pk;
630 l_row_notfound := cs_contracts_statuses_pk_csr%NOTFOUND;
631 CLOSE cs_contracts_statuses_pk_csr;
632 IF (l_row_notfound) THEN
633 l_return_status := FND_API.G_RET_STS_ERROR;
634 END IF;
635 IF (x_contractstats_rec.contract_status_id = TAPI_DEV_KIT.G_MISS_NUM)
636 THEN
637 x_contractstats_rec.contract_status_id := l_cs_contracts_statuses_pk.contract_status_id;
638 END IF;
639 IF (x_contractstats_rec.name = TAPI_DEV_KIT.G_MISS_CHAR)
640 THEN
641 x_contractstats_rec.name := l_cs_contracts_statuses_pk.name;
642 END IF;
643 IF (x_contractstats_rec.description = TAPI_DEV_KIT.G_MISS_CHAR)
644 THEN
645 x_contractstats_rec.description := l_cs_contracts_statuses_pk.description;
646 END IF;
647 IF (x_contractstats_rec.validate_contract = TAPI_DEV_KIT.G_MISS_CHAR)
648 THEN
649 x_contractstats_rec.validate_contract := l_cs_contracts_statuses_pk.validate_contract;
650 END IF;
654 END IF;
651 IF (x_contractstats_rec.status_level = TAPI_DEV_KIT.G_MISS_NUM)
652 THEN
653 x_contractstats_rec.status_level := l_cs_contracts_statuses_pk.status_level;
655 IF (x_contractstats_rec.eligible_for_invoicing = TAPI_DEV_KIT.G_MISS_CHAR)
656 THEN
657 x_contractstats_rec.eligible_for_invoicing := l_cs_contracts_statuses_pk.eligible_for_invoicing;
658 END IF;
659 IF (x_contractstats_rec.update_allowed = TAPI_DEV_KIT.G_MISS_CHAR)
660 THEN
661 x_contractstats_rec.update_allowed := l_cs_contracts_statuses_pk.update_allowed;
662 END IF;
663 IF (x_contractstats_rec.eligible_for_entitlements = TAPI_DEV_KIT.G_MISS_CHAR)
664 THEN
665 x_contractstats_rec.eligible_for_entitlements := l_cs_contracts_statuses_pk.eligible_for_entitlements;
666 END IF;
667 IF (x_contractstats_rec.terminated_flag = TAPI_DEV_KIT.G_MISS_CHAR)
668 THEN
669 x_contractstats_rec.terminated_flag := l_cs_contracts_statuses_pk.terminated_flag;
670 END IF;
671 IF (x_contractstats_rec.delete_allowed = TAPI_DEV_KIT.G_MISS_CHAR)
672 THEN
673 x_contractstats_rec.delete_allowed := l_cs_contracts_statuses_pk.delete_allowed;
674 END IF;
675 IF (x_contractstats_rec.last_update_date = TAPI_DEV_KIT.G_MISS_DATE)
676 THEN
677 x_contractstats_rec.last_update_date := l_cs_contracts_statuses_pk.last_update_date;
678 END IF;
679 IF (x_contractstats_rec.last_updated_by = TAPI_DEV_KIT.G_MISS_NUM)
680 THEN
681 x_contractstats_rec.last_updated_by := l_cs_contracts_statuses_pk.last_updated_by;
682 END IF;
683 IF (x_contractstats_rec.creation_date = TAPI_DEV_KIT.G_MISS_DATE)
684 THEN
685 x_contractstats_rec.creation_date := l_cs_contracts_statuses_pk.creation_date;
686 END IF;
687 IF (x_contractstats_rec.created_by = TAPI_DEV_KIT.G_MISS_NUM)
688 THEN
689 x_contractstats_rec.created_by := l_cs_contracts_statuses_pk.created_by;
690 END IF;
691 IF (x_contractstats_rec.last_update_login = TAPI_DEV_KIT.G_MISS_NUM)
692 THEN
693 x_contractstats_rec.last_update_login := l_cs_contracts_statuses_pk.last_update_login;
694 END IF;
695 IF (x_contractstats_rec.start_date_active = TAPI_DEV_KIT.G_MISS_DATE)
696 THEN
697 x_contractstats_rec.start_date_active := l_cs_contracts_statuses_pk.start_date_active;
698 END IF;
699 IF (x_contractstats_rec.end_date_active = TAPI_DEV_KIT.G_MISS_DATE)
700 THEN
701 x_contractstats_rec.end_date_active := l_cs_contracts_statuses_pk.end_date_active;
702 END IF;
703 IF (x_contractstats_rec.attribute1 = TAPI_DEV_KIT.G_MISS_CHAR)
704 THEN
705 x_contractstats_rec.attribute1 := l_cs_contracts_statuses_pk.attribute1;
706 END IF;
707 IF (x_contractstats_rec.attribute2 = TAPI_DEV_KIT.G_MISS_CHAR)
708 THEN
709 x_contractstats_rec.attribute2 := l_cs_contracts_statuses_pk.attribute2;
710 END IF;
711 IF (x_contractstats_rec.attribute3 = TAPI_DEV_KIT.G_MISS_CHAR)
712 THEN
713 x_contractstats_rec.attribute3 := l_cs_contracts_statuses_pk.attribute3;
714 END IF;
715 IF (x_contractstats_rec.attribute4 = TAPI_DEV_KIT.G_MISS_CHAR)
716 THEN
717 x_contractstats_rec.attribute4 := l_cs_contracts_statuses_pk.attribute4;
718 END IF;
719 IF (x_contractstats_rec.attribute5 = TAPI_DEV_KIT.G_MISS_CHAR)
720 THEN
721 x_contractstats_rec.attribute5 := l_cs_contracts_statuses_pk.attribute5;
722 END IF;
723 IF (x_contractstats_rec.attribute6 = TAPI_DEV_KIT.G_MISS_CHAR)
724 THEN
725 x_contractstats_rec.attribute6 := l_cs_contracts_statuses_pk.attribute6;
726 END IF;
727 IF (x_contractstats_rec.attribute7 = TAPI_DEV_KIT.G_MISS_CHAR)
728 THEN
729 x_contractstats_rec.attribute7 := l_cs_contracts_statuses_pk.attribute7;
730 END IF;
731 IF (x_contractstats_rec.attribute8 = TAPI_DEV_KIT.G_MISS_CHAR)
732 THEN
733 x_contractstats_rec.attribute8 := l_cs_contracts_statuses_pk.attribute8;
734 END IF;
735 IF (x_contractstats_rec.attribute9 = TAPI_DEV_KIT.G_MISS_CHAR)
736 THEN
737 x_contractstats_rec.attribute9 := l_cs_contracts_statuses_pk.attribute9;
738 END IF;
739 IF (x_contractstats_rec.attribute10 = TAPI_DEV_KIT.G_MISS_CHAR)
740 THEN
741 x_contractstats_rec.attribute10 := l_cs_contracts_statuses_pk.attribute10;
742 END IF;
743 IF (x_contractstats_rec.attribute11 = TAPI_DEV_KIT.G_MISS_CHAR)
744 THEN
745 x_contractstats_rec.attribute11 := l_cs_contracts_statuses_pk.attribute11;
746 END IF;
747 IF (x_contractstats_rec.attribute12 = TAPI_DEV_KIT.G_MISS_CHAR)
748 THEN
749 x_contractstats_rec.attribute12 := l_cs_contracts_statuses_pk.attribute12;
750 END IF;
751 IF (x_contractstats_rec.attribute13 = TAPI_DEV_KIT.G_MISS_CHAR)
752 THEN
753 x_contractstats_rec.attribute13 := l_cs_contracts_statuses_pk.attribute13;
754 END IF;
755 IF (x_contractstats_rec.attribute14 = TAPI_DEV_KIT.G_MISS_CHAR)
756 THEN
757 x_contractstats_rec.attribute14 := l_cs_contracts_statuses_pk.attribute14;
758 END IF;
759 IF (x_contractstats_rec.attribute15 = TAPI_DEV_KIT.G_MISS_CHAR)
760 THEN
761 x_contractstats_rec.attribute15 := l_cs_contracts_statuses_pk.attribute15;
762 END IF;
763 IF (x_contractstats_rec.context = TAPI_DEV_KIT.G_MISS_CHAR)
764 THEN
765 x_contractstats_rec.context := l_cs_contracts_statuses_pk.context;
766 END IF;
767 IF (x_contractstats_rec.object_version_number = TAPI_DEV_KIT.G_MISS_NUM)
768 THEN
769 x_contractstats_rec.object_version_number := l_cs_contracts_statuses_pk.object_version_number;
773 BEGIN
770 END IF;
771 RETURN(l_return_status);
772 END populate_new_record;
774 l_return_status := TAPI_DEV_KIT.START_ACTIVITY(l_api_name,
775 G_PKG_NAME,
776 l_api_version,
777 p_api_version,
778 p_init_msg_list,
779 '_Pvt',
780 x_return_status);
781 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
782 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
783 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
784 RAISE FND_API.G_EXC_ERROR;
785 END IF;
786 migrate(p_contractstats_val_rec, l_contractstats_rec);
787 --- Defaulting item attributes
788 l_return_status := Default_Item_Attributes
789 (
790 l_contractstats_rec, ---- IN
791 l_def_contractstats_rec
792 );
793 --- If any errors happen abort API
794 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
795 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
796 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
797 RAISE FND_API.G_EXC_ERROR;
798 END IF;
799 l_return_status := populate_new_record(l_def_contractstats_rec, l_def_contractstats_rec);
800 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
801 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
802 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
803 RAISE FND_API.G_EXC_ERROR;
804 END IF;
805 --- Validate all non-missing attributes (Item Level Validation)
806 IF p_validation_level >= FND_API.G_VALID_LEVEL_FULL THEN
807 l_return_status := Validate_Item_Attributes
808 (
809 l_def_contractstats_rec ---- IN
810 );
811 --- If any errors happen abort API
812 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
813 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
814 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
815 RAISE FND_API.G_EXC_ERROR;
816 END IF;
817 END IF;
818 IF (p_validation_level >= FND_API.G_VALID_LEVEL_FULL) THEN
819 l_return_status := Validate_Item_Record(l_def_contractstats_rec);
820 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
821 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
822 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
823 RAISE FND_API.G_EXC_ERROR;
824 END IF;
825 END IF;
826 UPDATE CS_CONTRACT_STATUSES
827 SET
828 CONTRACT_STATUS_ID = l_def_contractstats_rec.contract_status_id ,
829 NAME = l_def_contractstats_rec.name ,
830 DESCRIPTION = l_def_contractstats_rec.description ,
831 VALIDATE_CONTRACT = l_def_contractstats_rec.validate_contract ,
832 STATUS_LEVEL = l_def_contractstats_rec.status_level ,
833 ELIGIBLE_FOR_INVOICING = l_def_contractstats_rec.eligible_for_invoicing ,
834 UPDATE_ALLOWED = l_def_contractstats_rec.update_allowed ,
835 ELIGIBLE_FOR_ENTITLEMENTS = l_def_contractstats_rec.eligible_for_entitlements ,
836 TERMINATED_FLAG = l_def_contractstats_rec.terminated_flag ,
837 DELETE_ALLOWED = l_def_contractstats_rec.delete_allowed ,
838 LAST_UPDATE_DATE = l_def_contractstats_rec.last_update_date ,
839 LAST_UPDATED_BY = l_def_contractstats_rec.last_updated_by ,
840 CREATION_DATE = l_def_contractstats_rec.creation_date ,
841 CREATED_BY = l_def_contractstats_rec.created_by ,
842 LAST_UPDATE_LOGIN = l_def_contractstats_rec.last_update_login ,
843 START_DATE_ACTIVE = l_def_contractstats_rec.start_date_active ,
844 END_DATE_ACTIVE = l_def_contractstats_rec.end_date_active ,
845 ATTRIBUTE1 = l_def_contractstats_rec.attribute1 ,
846 ATTRIBUTE2 = l_def_contractstats_rec.attribute2 ,
847 ATTRIBUTE3 = l_def_contractstats_rec.attribute3 ,
848 ATTRIBUTE4 = l_def_contractstats_rec.attribute4 ,
849 ATTRIBUTE5 = l_def_contractstats_rec.attribute5 ,
850 ATTRIBUTE6 = l_def_contractstats_rec.attribute6 ,
851 ATTRIBUTE7 = l_def_contractstats_rec.attribute7 ,
852 ATTRIBUTE8 = l_def_contractstats_rec.attribute8 ,
853 ATTRIBUTE9 = l_def_contractstats_rec.attribute9 ,
854 ATTRIBUTE10 = l_def_contractstats_rec.attribute10 ,
855 ATTRIBUTE11 = l_def_contractstats_rec.attribute11 ,
856 ATTRIBUTE12 = l_def_contractstats_rec.attribute12 ,
857 ATTRIBUTE13 = l_def_contractstats_rec.attribute13 ,
858 ATTRIBUTE14 = l_def_contractstats_rec.attribute14 ,
859 ATTRIBUTE15 = l_def_contractstats_rec.attribute15 ,
860 CONTEXT = l_def_contractstats_rec.context ,
861 OBJECT_VERSION_NUMBER = l_def_contractstats_rec.object_version_number
862 WHERE
863 CONTRACT_STATUS_ID = l_def_contractstats_rec.contract_status_id
864 ;
865 x_object_version_number := l_def_contractstats_rec.OBJECT_VERSION_NUMBER;
866 TAPI_DEV_KIT.END_ACTIVITY(p_commit, x_msg_count, x_msg_data);
867 EXCEPTION
868 WHEN FND_API.G_EXC_ERROR THEN
869 x_return_status := TAPI_DEV_KIT.HANDLE_EXCEPTIONS
870 (
871 l_api_name,
872 G_PKG_NAME,
873 'FND_API.G_RET_STS_ERROR',
874 x_msg_count,
875 x_msg_data,
876 '_Pvt'
877 );
878 APP_EXCEPTION.RAISE_EXCEPTION;
879 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
880 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
881 (
882 l_api_name,
883 G_PKG_NAME,
884 'FND_API.G_RET_STS_UNEXP_ERROR',
885 x_msg_count,
886 x_msg_data,
887 '_Pvt'
888 );
889 APP_EXCEPTION.RAISE_EXCEPTION;
890 WHEN TAPI_DEV_KIT.G_EXC_DUP_VAL_ON_INDEX THEN
894 G_PKG_NAME,
891 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
892 (
893 l_api_name,
895 'TAPI_DEV_KIT.G_RET_STS_DUP_VAL_ON_INDEX',
896 x_msg_count,
897 x_msg_data,
898 '_Pvt'
899 );
900 APP_EXCEPTION.RAISE_EXCEPTION;
901 END update_row;
902 Procedure update_row
903 (
904 p_api_version IN NUMBER,
905 p_init_msg_list IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
906 p_validation_level IN NUMBER,
907 p_commit IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
908 x_return_status OUT VARCHAR2,
909 x_msg_count OUT NUMBER,
910 x_msg_data OUT VARCHAR2,
911 p_contract_status_id IN NUMBER := TAPI_DEV_KIT.G_MISS_NUM,
912 p_name IN CS_CONTRACT_STATUSES.NAME%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
913 p_description IN CS_CONTRACT_STATUSES.DESCRIPTION%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
914 p_validate_contract IN CS_CONTRACT_STATUSES.VALIDATE_CONTRACT%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
915 p_status_level IN NUMBER := TAPI_DEV_KIT.G_MISS_NUM,
916 p_eligible_for_invoicing IN CS_CONTRACT_STATUSES.ELIGIBLE_FOR_INVOICING%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
917 p_update_allowed IN CS_CONTRACT_STATUSES.UPDATE_ALLOWED%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
918 p_eligible_for_entitlements IN CS_CONTRACT_STATUSES.ELIGIBLE_FOR_ENTITLEMENTS%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
919 p_terminated_flag IN CS_CONTRACT_STATUSES.TERMINATED_FLAG%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
920 p_delete_allowed IN CS_CONTRACT_STATUSES.DELETE_ALLOWED%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
921 p_last_update_date IN CS_CONTRACT_STATUSES.LAST_UPDATE_DATE%TYPE := TAPI_DEV_KIT.G_MISS_DATE,
922 p_last_updated_by IN NUMBER := TAPI_DEV_KIT.G_MISS_NUM,
923 p_creation_date IN CS_CONTRACT_STATUSES.CREATION_DATE%TYPE := TAPI_DEV_KIT.G_MISS_DATE,
924 p_created_by IN NUMBER := TAPI_DEV_KIT.G_MISS_NUM,
925 p_last_update_login IN NUMBER := TAPI_DEV_KIT.G_MISS_NUM,
926 p_start_date_active IN CS_CONTRACT_STATUSES.START_DATE_ACTIVE%TYPE := TAPI_DEV_KIT.G_MISS_DATE,
927 p_end_date_active IN CS_CONTRACT_STATUSES.END_DATE_ACTIVE%TYPE := TAPI_DEV_KIT.G_MISS_DATE,
928 p_attribute1 IN CS_CONTRACT_STATUSES.ATTRIBUTE1%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
929 p_attribute2 IN CS_CONTRACT_STATUSES.ATTRIBUTE2%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
930 p_attribute3 IN CS_CONTRACT_STATUSES.ATTRIBUTE3%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
931 p_attribute4 IN CS_CONTRACT_STATUSES.ATTRIBUTE4%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
932 p_attribute5 IN CS_CONTRACT_STATUSES.ATTRIBUTE5%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
933 p_attribute6 IN CS_CONTRACT_STATUSES.ATTRIBUTE6%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
934 p_attribute7 IN CS_CONTRACT_STATUSES.ATTRIBUTE7%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
935 p_attribute8 IN CS_CONTRACT_STATUSES.ATTRIBUTE8%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
936 p_attribute9 IN CS_CONTRACT_STATUSES.ATTRIBUTE9%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
937 p_attribute10 IN CS_CONTRACT_STATUSES.ATTRIBUTE10%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
938 p_attribute11 IN CS_CONTRACT_STATUSES.ATTRIBUTE11%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
939 p_attribute12 IN CS_CONTRACT_STATUSES.ATTRIBUTE12%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
940 p_attribute13 IN CS_CONTRACT_STATUSES.ATTRIBUTE13%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
941 p_attribute14 IN CS_CONTRACT_STATUSES.ATTRIBUTE14%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
942 p_attribute15 IN CS_CONTRACT_STATUSES.ATTRIBUTE15%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
943 p_context IN CS_CONTRACT_STATUSES.CONTEXT%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
944 p_object_version_number IN NUMBER := TAPI_DEV_KIT.G_MISS_NUM,
945 x_object_version_number OUT NUMBER) IS
946 l_api_name CONSTANT VARCHAR2(30) := 'update_row';
947 l_api_version CONSTANT NUMBER := 1;
948 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
949 l_contractstats_rec ContractStats_Val_Rec_Type;
950 BEGIN
951 l_return_status := TAPI_DEV_KIT.START_ACTIVITY(l_api_name,
952 G_PKG_NAME,
953 l_api_version,
954 p_api_version,
955 p_init_msg_list,
956 '_Pvt',
957 x_return_status);
958 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
959 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
960 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
961 RAISE FND_API.G_EXC_ERROR;
962 END IF;
963 l_contractstats_rec.CONTRACT_STATUS_ID := p_contract_status_id;
964 l_contractstats_rec.NAME := p_name;
965 l_contractstats_rec.DESCRIPTION := p_description;
966 l_contractstats_rec.VALIDATE_CONTRACT := p_validate_contract;
967 l_contractstats_rec.STATUS_LEVEL := p_status_level;
968 l_contractstats_rec.ELIGIBLE_FOR_INVOICING := p_eligible_for_invoicing;
969 l_contractstats_rec.UPDATE_ALLOWED := p_update_allowed;
970 l_contractstats_rec.ELIGIBLE_FOR_ENTITLEMENTS := p_eligible_for_entitlements;
971 l_contractstats_rec.TERMINATED_FLAG := p_terminated_flag;
972 l_contractstats_rec.DELETE_ALLOWED := p_delete_allowed;
973 l_contractstats_rec.LAST_UPDATE_DATE := p_last_update_date;
974 l_contractstats_rec.LAST_UPDATED_BY := p_last_updated_by;
975 l_contractstats_rec.CREATION_DATE := p_creation_date;
976 l_contractstats_rec.CREATED_BY := p_created_by;
977 l_contractstats_rec.LAST_UPDATE_LOGIN := p_last_update_login;
981 l_contractstats_rec.ATTRIBUTE2 := p_attribute2;
978 l_contractstats_rec.START_DATE_ACTIVE := p_start_date_active;
979 l_contractstats_rec.END_DATE_ACTIVE := p_end_date_active;
980 l_contractstats_rec.ATTRIBUTE1 := p_attribute1;
982 l_contractstats_rec.ATTRIBUTE3 := p_attribute3;
983 l_contractstats_rec.ATTRIBUTE4 := p_attribute4;
984 l_contractstats_rec.ATTRIBUTE5 := p_attribute5;
985 l_contractstats_rec.ATTRIBUTE6 := p_attribute6;
986 l_contractstats_rec.ATTRIBUTE7 := p_attribute7;
987 l_contractstats_rec.ATTRIBUTE8 := p_attribute8;
988 l_contractstats_rec.ATTRIBUTE9 := p_attribute9;
989 l_contractstats_rec.ATTRIBUTE10 := p_attribute10;
990 l_contractstats_rec.ATTRIBUTE11 := p_attribute11;
991 l_contractstats_rec.ATTRIBUTE12 := p_attribute12;
992 l_contractstats_rec.ATTRIBUTE13 := p_attribute13;
993 l_contractstats_rec.ATTRIBUTE14 := p_attribute14;
994 l_contractstats_rec.ATTRIBUTE15 := p_attribute15;
995 l_contractstats_rec.CONTEXT := p_context;
996 l_contractstats_rec.OBJECT_VERSION_NUMBER := p_object_version_number;
997 update_row(
998 p_api_version,
999 p_init_msg_list,
1000 p_validation_level,
1001 p_commit,
1002 x_return_status,
1003 x_msg_count,
1004 x_msg_data,
1005 l_contractstats_rec,
1006 x_object_version_number
1007 );
1008 TAPI_DEV_KIT.END_ACTIVITY(p_commit, x_msg_count, x_msg_data);
1009 EXCEPTION
1010 WHEN FND_API.G_EXC_ERROR THEN
1011 x_return_status := TAPI_DEV_KIT.HANDLE_EXCEPTIONS
1012 (
1013 l_api_name,
1014 G_PKG_NAME,
1015 'FND_API.G_RET_STS_ERROR',
1016 x_msg_count,
1017 x_msg_data,
1018 '_Pvt'
1019 );
1020 APP_EXCEPTION.RAISE_EXCEPTION;
1021 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1022 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
1023 (
1024 l_api_name,
1025 G_PKG_NAME,
1026 'FND_API.G_RET_STS_UNEXP_ERROR',
1027 x_msg_count,
1028 x_msg_data,
1029 '_Pvt'
1030 );
1031 APP_EXCEPTION.RAISE_EXCEPTION;
1032 WHEN TAPI_DEV_KIT.G_EXC_DUP_VAL_ON_INDEX THEN
1033 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
1034 (
1035 l_api_name,
1036 G_PKG_NAME,
1037 'TAPI_DEV_KIT.G_RET_STS_DUP_VAL_ON_INDEX',
1038 x_msg_count,
1039 x_msg_data,
1040 '_Pvt'
1041 );
1042 APP_EXCEPTION.RAISE_EXCEPTION;
1043 END update_row;
1044 Procedure delete_row
1045 (
1046 p_api_version IN NUMBER,
1047 p_init_msg_list IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
1048 p_validation_level IN NUMBER,
1049 p_commit IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
1050 x_return_status OUT VARCHAR2,
1051 x_msg_count OUT NUMBER,
1052 x_msg_data OUT VARCHAR2,
1053 p_contract_status_id IN NUMBER) IS
1054 l_api_name CONSTANT VARCHAR2(30) := 'delete_row';
1055 l_api_version CONSTANT NUMBER := 1;
1056 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1057 BEGIN
1058 l_return_status := TAPI_DEV_KIT.START_ACTIVITY(l_api_name,
1059 G_PKG_NAME,
1060 l_api_version,
1061 p_api_version,
1062 p_init_msg_list,
1063 '_Pvt',
1064 x_return_status);
1065 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1066 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1067 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
1068 RAISE FND_API.G_EXC_ERROR;
1069 END IF;
1070 DELETE FROM CS_CONTRACT_STATUSES
1071 WHERE
1072 CONTRACT_STATUS_ID = p_contract_status_id
1073 ;
1074 TAPI_DEV_KIT.END_ACTIVITY(p_commit, x_msg_count, x_msg_data);
1075 EXCEPTION
1076 WHEN FND_API.G_EXC_ERROR THEN
1077 x_return_status := TAPI_DEV_KIT.HANDLE_EXCEPTIONS
1078 (
1079 l_api_name,
1080 G_PKG_NAME,
1081 'FND_API.G_RET_STS_ERROR',
1082 x_msg_count,
1083 x_msg_data,
1084 '_Pvt'
1085 );
1086 APP_EXCEPTION.RAISE_EXCEPTION;
1087 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1088 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
1089 (
1090 l_api_name,
1091 G_PKG_NAME,
1092 'FND_API.G_RET_STS_UNEXP_ERROR',
1093 x_msg_count,
1094 x_msg_data,
1095 '_Pvt'
1096 );
1097 APP_EXCEPTION.RAISE_EXCEPTION;
1098 WHEN TAPI_DEV_KIT.G_EXC_DUP_VAL_ON_INDEX THEN
1099 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
1100 (
1101 l_api_name,
1102 G_PKG_NAME,
1103 'TAPI_DEV_KIT.G_RET_STS_DUP_VAL_ON_INDEX',
1104 x_msg_count,
1105 x_msg_data,
1106 '_Pvt'
1107 );
1108 APP_EXCEPTION.RAISE_EXCEPTION;
1109 END delete_row;
1110 PROCEDURE validate_row
1111 (
1112 p_api_version IN NUMBER,
1113 p_init_msg_list IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
1114 p_validation_level IN NUMBER,
1115 p_commit IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
1116 x_return_status OUT VARCHAR2,
1117 x_msg_count OUT NUMBER,
1118 x_msg_data OUT VARCHAR2,
1119 p_contractstats_val_rec IN ContractStats_Val_Rec_Type := G_MISS_CONTRACTSTATS_VAL_REC) IS
1123 l_contractstats_rec ContractStats_Rec_Type;
1120 l_api_name CONSTANT VARCHAR2(30) := 'validate_row';
1121 l_api_version CONSTANT NUMBER := 1;
1122 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1124 l_def_contractstats_rec ContractStats_Rec_Type;
1125 BEGIN
1126 l_return_status := TAPI_DEV_KIT.START_ACTIVITY(l_api_name,
1127 G_PKG_NAME,
1128 l_api_version,
1129 p_api_version,
1130 p_init_msg_list,
1131 '_Pvt',
1132 x_return_status);
1133 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1134 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1135 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
1136 RAISE FND_API.G_EXC_ERROR;
1137 END IF;
1138 migrate(p_contractstats_val_rec, l_contractstats_rec);
1139 --- Validate all non-missing attributes (Item Level Validation)
1140 IF p_validation_level >= FND_API.G_VALID_LEVEL_FULL THEN
1141 l_return_status := Validate_Item_Attributes
1142 (
1143 l_contractstats_rec ---- IN
1144 );
1145 --- If any errors happen abort API
1146 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1147 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1148 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
1149 RAISE FND_API.G_EXC_ERROR;
1150 END IF;
1151 END IF;
1152 IF (p_validation_level >= FND_API.G_VALID_LEVEL_FULL) THEN
1153 l_return_status := Validate_Item_Record(l_def_contractstats_rec);
1154 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1155 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1156 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
1157 RAISE FND_API.G_EXC_ERROR;
1158 END IF;
1159 END IF;
1160 TAPI_DEV_KIT.END_ACTIVITY(p_commit, x_msg_count, x_msg_data);
1161 EXCEPTION
1162 WHEN FND_API.G_EXC_ERROR THEN
1163 x_return_status := TAPI_DEV_KIT.HANDLE_EXCEPTIONS
1164 (
1165 l_api_name,
1166 G_PKG_NAME,
1167 'FND_API.G_RET_STS_ERROR',
1168 x_msg_count,
1169 x_msg_data,
1170 '_Pvt'
1171 );
1172 APP_EXCEPTION.RAISE_EXCEPTION;
1173 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1174 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
1175 (
1176 l_api_name,
1177 G_PKG_NAME,
1178 'FND_API.G_RET_STS_UNEXP_ERROR',
1179 x_msg_count,
1180 x_msg_data,
1181 '_Pvt'
1182 );
1183 APP_EXCEPTION.RAISE_EXCEPTION;
1184 WHEN TAPI_DEV_KIT.G_EXC_DUP_VAL_ON_INDEX THEN
1185 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
1186 (
1187 l_api_name,
1188 G_PKG_NAME,
1189 'TAPI_DEV_KIT.G_RET_STS_DUP_VAL_ON_INDEX',
1190 x_msg_count,
1191 x_msg_data,
1192 '_Pvt'
1193 );
1194 APP_EXCEPTION.RAISE_EXCEPTION;
1195 END validate_row;
1196 PROCEDURE validate_row
1197 (
1198 p_api_version IN NUMBER,
1199 p_init_msg_list IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
1200 p_validation_level IN NUMBER,
1201 p_commit IN VARCHAR2 := TAPI_DEV_KIT.G_FALSE,
1202 x_return_status OUT VARCHAR2,
1203 x_msg_count OUT NUMBER,
1204 x_msg_data OUT VARCHAR2,
1205 p_contract_status_id IN NUMBER := TAPI_DEV_KIT.G_MISS_NUM,
1206 p_name IN CS_CONTRACT_STATUSES.NAME%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1207 p_description IN CS_CONTRACT_STATUSES.DESCRIPTION%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1208 p_validate_contract IN CS_CONTRACT_STATUSES.VALIDATE_CONTRACT%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1209 p_status_level IN NUMBER := TAPI_DEV_KIT.G_MISS_NUM,
1210 p_eligible_for_invoicing IN CS_CONTRACT_STATUSES.ELIGIBLE_FOR_INVOICING%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1211 p_update_allowed IN CS_CONTRACT_STATUSES.UPDATE_ALLOWED%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1212 p_eligible_for_entitlements IN CS_CONTRACT_STATUSES.ELIGIBLE_FOR_ENTITLEMENTS%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1213 p_terminated_flag IN CS_CONTRACT_STATUSES.TERMINATED_FLAG%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1214 p_delete_allowed IN CS_CONTRACT_STATUSES.DELETE_ALLOWED%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1215 p_last_update_date IN CS_CONTRACT_STATUSES.LAST_UPDATE_DATE%TYPE := TAPI_DEV_KIT.G_MISS_DATE,
1216 p_last_updated_by IN NUMBER := TAPI_DEV_KIT.G_MISS_NUM,
1217 p_creation_date IN CS_CONTRACT_STATUSES.CREATION_DATE%TYPE := TAPI_DEV_KIT.G_MISS_DATE,
1218 p_created_by IN NUMBER := TAPI_DEV_KIT.G_MISS_NUM,
1219 p_last_update_login IN NUMBER := TAPI_DEV_KIT.G_MISS_NUM,
1220 p_start_date_active IN CS_CONTRACT_STATUSES.START_DATE_ACTIVE%TYPE := TAPI_DEV_KIT.G_MISS_DATE,
1221 p_end_date_active IN CS_CONTRACT_STATUSES.END_DATE_ACTIVE%TYPE := TAPI_DEV_KIT.G_MISS_DATE,
1222 p_attribute1 IN CS_CONTRACT_STATUSES.ATTRIBUTE1%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1223 p_attribute2 IN CS_CONTRACT_STATUSES.ATTRIBUTE2%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1224 p_attribute3 IN CS_CONTRACT_STATUSES.ATTRIBUTE3%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1225 p_attribute4 IN CS_CONTRACT_STATUSES.ATTRIBUTE4%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1226 p_attribute5 IN CS_CONTRACT_STATUSES.ATTRIBUTE5%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1227 p_attribute6 IN CS_CONTRACT_STATUSES.ATTRIBUTE6%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1231 p_attribute10 IN CS_CONTRACT_STATUSES.ATTRIBUTE10%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1228 p_attribute7 IN CS_CONTRACT_STATUSES.ATTRIBUTE7%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1229 p_attribute8 IN CS_CONTRACT_STATUSES.ATTRIBUTE8%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1230 p_attribute9 IN CS_CONTRACT_STATUSES.ATTRIBUTE9%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1232 p_attribute11 IN CS_CONTRACT_STATUSES.ATTRIBUTE11%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1233 p_attribute12 IN CS_CONTRACT_STATUSES.ATTRIBUTE12%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1234 p_attribute13 IN CS_CONTRACT_STATUSES.ATTRIBUTE13%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1235 p_attribute14 IN CS_CONTRACT_STATUSES.ATTRIBUTE14%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1236 p_attribute15 IN CS_CONTRACT_STATUSES.ATTRIBUTE15%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1237 p_context IN CS_CONTRACT_STATUSES.CONTEXT%TYPE := TAPI_DEV_KIT.G_MISS_CHAR,
1238 p_object_version_number IN NUMBER := TAPI_DEV_KIT.G_MISS_NUM) IS
1239 l_api_name CONSTANT VARCHAR2(30) := 'validate_row';
1240 l_api_version CONSTANT NUMBER := 1;
1241 l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
1242 l_contractstats_rec ContractStats_Val_Rec_Type;
1243 BEGIN
1244 l_return_status := TAPI_DEV_KIT.START_ACTIVITY(l_api_name,
1245 G_PKG_NAME,
1246 l_api_version,
1247 p_api_version,
1248 p_init_msg_list,
1249 '_Pvt',
1250 x_return_status);
1251 IF (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) THEN
1252 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1253 ELSIF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
1254 RAISE FND_API.G_EXC_ERROR;
1255 END IF;
1256 l_contractstats_rec.CONTRACT_STATUS_ID := p_contract_status_id;
1257 l_contractstats_rec.NAME := p_name;
1258 l_contractstats_rec.DESCRIPTION := p_description;
1259 l_contractstats_rec.VALIDATE_CONTRACT := p_validate_contract;
1260 l_contractstats_rec.STATUS_LEVEL := p_status_level;
1261 l_contractstats_rec.ELIGIBLE_FOR_INVOICING := p_eligible_for_invoicing;
1262 l_contractstats_rec.UPDATE_ALLOWED := p_update_allowed;
1263 l_contractstats_rec.ELIGIBLE_FOR_ENTITLEMENTS := p_eligible_for_entitlements;
1264 l_contractstats_rec.TERMINATED_FLAG := p_terminated_flag;
1265 l_contractstats_rec.DELETE_ALLOWED := p_delete_allowed;
1266 l_contractstats_rec.LAST_UPDATE_DATE := p_last_update_date;
1267 l_contractstats_rec.LAST_UPDATED_BY := p_last_updated_by;
1268 l_contractstats_rec.CREATION_DATE := p_creation_date;
1269 l_contractstats_rec.CREATED_BY := p_created_by;
1270 l_contractstats_rec.LAST_UPDATE_LOGIN := p_last_update_login;
1271 l_contractstats_rec.START_DATE_ACTIVE := p_start_date_active;
1272 l_contractstats_rec.END_DATE_ACTIVE := p_end_date_active;
1273 l_contractstats_rec.ATTRIBUTE1 := p_attribute1;
1274 l_contractstats_rec.ATTRIBUTE2 := p_attribute2;
1275 l_contractstats_rec.ATTRIBUTE3 := p_attribute3;
1276 l_contractstats_rec.ATTRIBUTE4 := p_attribute4;
1277 l_contractstats_rec.ATTRIBUTE5 := p_attribute5;
1278 l_contractstats_rec.ATTRIBUTE6 := p_attribute6;
1279 l_contractstats_rec.ATTRIBUTE7 := p_attribute7;
1280 l_contractstats_rec.ATTRIBUTE8 := p_attribute8;
1281 l_contractstats_rec.ATTRIBUTE9 := p_attribute9;
1282 l_contractstats_rec.ATTRIBUTE10 := p_attribute10;
1283 l_contractstats_rec.ATTRIBUTE11 := p_attribute11;
1284 l_contractstats_rec.ATTRIBUTE12 := p_attribute12;
1285 l_contractstats_rec.ATTRIBUTE13 := p_attribute13;
1286 l_contractstats_rec.ATTRIBUTE14 := p_attribute14;
1287 l_contractstats_rec.ATTRIBUTE15 := p_attribute15;
1288 l_contractstats_rec.CONTEXT := p_context;
1289 l_contractstats_rec.OBJECT_VERSION_NUMBER := p_object_version_number;
1290 validate_row(
1291 p_api_version,
1292 p_init_msg_list,
1293 p_validation_level,
1294 p_commit,
1295 x_return_status,
1296 x_msg_count,
1297 x_msg_data,
1298 l_contractstats_rec
1299 );
1300 TAPI_DEV_KIT.END_ACTIVITY(p_commit, x_msg_count, x_msg_data);
1301 EXCEPTION
1302 WHEN FND_API.G_EXC_ERROR THEN
1303 x_return_status := TAPI_DEV_KIT.HANDLE_EXCEPTIONS
1304 (
1305 l_api_name,
1306 G_PKG_NAME,
1307 'FND_API.G_RET_STS_ERROR',
1308 x_msg_count,
1309 x_msg_data,
1310 '_Pvt'
1311 );
1312 APP_EXCEPTION.RAISE_EXCEPTION;
1313 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1314 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
1315 (
1316 l_api_name,
1317 G_PKG_NAME,
1318 'FND_API.G_RET_STS_UNEXP_ERROR',
1319 x_msg_count,
1320 x_msg_data,
1321 '_Pvt'
1322 );
1323 APP_EXCEPTION.RAISE_EXCEPTION;
1324 WHEN TAPI_DEV_KIT.G_EXC_DUP_VAL_ON_INDEX THEN
1325 x_return_status :=TAPI_DEV_KIT.HANDLE_EXCEPTIONS
1326 (
1327 l_api_name,
1328 G_PKG_NAME,
1329 'TAPI_DEV_KIT.G_RET_STS_DUP_VAL_ON_INDEX',
1330 x_msg_count,
1331 x_msg_data,
1332 '_Pvt'
1333 );
1334 APP_EXCEPTION.RAISE_EXCEPTION;
1335 END validate_row;
1336 END CS_CONTRACTSTATS_PVT;