1 package body AK_CUSTOM_GRP as
2 /* $Header: akdgcreb.pls 120.2 2005/09/15 22:30:01 tshort noship $ */
3
4 --=======================================================
5 -- Procedure CREATE_CUSTOM
6 --
7 -- Usage Group API for creating a region
8 --
9 -- Desc Calls the private API to create a region
10 -- using the given info
11 --
12 -- Results The API returns the standard p_return_status parameter
13 -- indicating one of the standard return statuses :
14 -- * Unexpected error
15 -- * Error
16 -- * Success
17 -- Parameters Region columns
18 --
19 -- Version Initial version number = 1.0
20 -- History Current version number = 1.0
21 --=======================================================
22 procedure CREATE_CUSTOM (
23 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
24 p_api_version_number IN NUMBER,
25 p_init_msg_tbl IN BOOLEAN := FALSE,
26 p_msg_count OUT NOCOPY NUMBER,
27 p_msg_data OUT NOCOPY VARCHAR2,
28 p_return_status OUT NOCOPY VARCHAR2,
29 p_custom_appl_id IN NUMBER,
30 p_custom_code IN VARCHAR2,
31 p_region_appl_id IN NUMBER,
32 p_region_code IN VARCHAR2,
33 p_verticalization_id IN VARCHAR2 := FND_API.G_MISS_CHAR,
34 p_localization_code IN VARCHAR2 := FND_API.G_MISS_CHAR,
35 p_org_id IN NUMBER := FND_API.G_MISS_NUM,
36 p_site_id IN NUMBER := FND_API.G_MISS_NUM,
37 p_responsibility_id IN NUMBER := FND_API.G_MISS_NUM,
38 p_web_user_id IN NUMBER := FND_API.G_MISS_NUM,
39 p_default_customization_flag IN VARCHAR2 := FND_API.G_MISS_CHAR,
40 p_customization_level_id IN NUMBER := FND_API.G_MISS_NUM,
41 p_developer_mode IN VARCHAR2 := FND_API.G_MISS_CHAR,
42 p_reference_path IN VARCHAR2 := FND_API.G_MISS_CHAR,
43 p_function_name IN VARCHAR2 := FND_API.G_MISS_CHAR,
44 p_start_date_active IN DATE := FND_API.G_MISS_DATE,
45 p_end_date_active IN DATE := FND_API.G_MISS_DATE,
46 p_name IN VARCHAR2 := FND_API.G_MISS_CHAR,
47 p_description IN VARCHAR2 := FND_API.G_MISS_CHAR,
48 p_created_by IN NUMBER := FND_API.G_MISS_NUM,
49 p_creation_date IN DATE := FND_API.G_MISS_DATE,
50 p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
51 p_last_update_date IN DATE := FND_API.G_MISS_DATE,
52 p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
53 p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
54 p_pass IN NUMBER,
55 p_copy_redo_flag IN OUT NOCOPY BOOLEAN
56 ) is
57 l_api_version_number CONSTANT number := 1.0;
58 l_api_name CONSTANT varchar2(30) := 'Create_Custom';
59 l_return_status VARCHAR2(1);
60 l_pass NUMBER := 2;
61 l_copy_redo_flag BOOLEAN := FALSE;
62 begin
63 -- Check API version number
64 IF NOT FND_API.Compatible_API_Call (
65 l_api_version_number, p_api_version_number, l_api_name,
66 G_PKG_NAME) then
67 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
68 return;
69 END IF;
70
71 -- Initialize the message table if requested.
72
73 if p_init_msg_tbl then
74 FND_MSG_PUB.initialize;
75 end if;
76
77 savepoint start_create_custom;
78
79 -- Call private procedure to create a region
80 AK_CUSTOM_PVT.CREATE_CUSTOM (
81 p_validation_level => p_validation_level,
82 p_api_version_number => 1.0,
83 p_msg_count => p_msg_count,
84 p_msg_data => p_msg_data,
85 p_return_status => l_return_status,
86 p_custom_appl_id =>p_custom_appl_id,
87 p_custom_code => p_custom_code,
88 p_region_appl_id => p_region_appl_id,
89 p_region_code => p_region_code,
90 p_verticalization_id => p_verticalization_id,
91 p_localization_code => p_localization_code,
92 p_org_id => p_org_id,
93 p_site_id => p_site_id,
94 p_responsibility_id => p_responsibility_id,
95 p_web_user_id => p_web_user_id,
96 p_default_customization_flag => p_default_customization_flag,
97 p_customization_level_id => p_customization_level_id,
98 p_developer_mode => p_developer_mode,
99 p_reference_path => p_reference_path,
100 p_function_name => p_function_name,
101 p_start_date_active => p_start_date_active,
102 p_end_date_active => p_end_date_active,
103 p_name => p_name,
104 p_description => p_description,
105 p_created_by => p_created_by,
106 p_creation_date => p_creation_date,
107 p_last_updated_by => p_last_updated_by,
108 p_last_update_date => p_last_update_date,
109 p_last_update_login => p_last_update_login,
110 p_loader_timestamp => p_loader_timestamp,
111 p_pass => l_pass,
112 p_copy_redo_flag => l_copy_redo_flag
113 );
114
115 -- If API call returns with an error status...
116 if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) or
117 (l_return_status = FND_API.G_RET_STS_ERROR) then
118 --dbms_output.put_line(l_api_name || ' Create_Custom failed');
119 RAISE FND_API.G_EXC_ERROR;
120 end if;
121
122 p_return_status := FND_API.G_RET_STS_SUCCESS;
123
124 EXCEPTION
125 WHEN FND_API.G_EXC_ERROR THEN
126 p_return_status := FND_API.G_RET_STS_ERROR;
127 rollback to start_create_custom;
128 WHEN OTHERS THEN
129 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
130 rollback to start_create_custom;
131 FND_MSG_PUB.Build_Exc_Msg( G_PKG_NAME, l_api_name,
132 SUBSTR (SQLERRM, 1, 240) );
133 FND_MSG_PUB.Add;
134 end CREATE_CUSTOM;
135
136 --=======================================================
137 -- Procedure CREATE_CUST_REGION
138 --
139 -- Usage Group API for creating a region item
140 --
141 -- Desc Calls the private API to creates a region item
142 -- using the given info
143 --
144 -- Results The API returns the standard p_return_status parameter
145 -- indicating one of the standard return statuses :
146 -- * Unexpected error
147 -- * Error
148 -- * Success
149 -- Parameters Region Item columns
150 --
151 -- Version Initial version number = 1.0
152 -- History Current version number = 1.0
153 --=======================================================
154 procedure CREATE_CUST_REGION (
155 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
156 p_api_version_number IN NUMBER,
157 p_init_msg_tbl IN BOOLEAN := FALSE,
158 p_msg_count OUT NOCOPY NUMBER,
159 p_msg_data OUT NOCOPY VARCHAR2,
160 p_return_status OUT NOCOPY VARCHAR2,
161 p_custom_appl_id IN NUMBER,
162 p_custom_code IN VARCHAR2,
163 p_region_appl_id IN NUMBER,
164 p_region_code IN VARCHAR2,
165 p_property_name IN VARCHAR2,
166 p_property_varchar2_value IN VARCHAR2 := FND_API.G_MISS_CHAR,
167 p_property_number_value IN NUMBER := FND_API.G_MISS_NUM,
168 p_criteria_join_condition IN VARCHAR2 := FND_API.G_MISS_CHAR,
169 p_property_varchar2_value_tl IN VARCHAR2 := FND_API.G_MISS_CHAR,
170 p_created_by IN NUMBER := FND_API.G_MISS_NUM,
171 p_creation_date IN DATE := FND_API.G_MISS_DATE,
172 p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
173 p_last_update_date IN DATE := FND_API.G_MISS_DATE,
174 p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
175 p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
176 p_pass IN NUMBER,
177 p_copy_redo_flag IN OUT NOCOPY BOOLEAN
178 ) is
179 l_api_version_number CONSTANT number := 1.0;
180 l_api_name CONSTANT varchar2(30) := 'Create_Cust_Region';
181 l_return_status VARCHAR2(1);
182 l_pass NUMBER := 2;
183 l_copy_redo_flag BOOLEAN := FALSE;
184 begin
185 -- Check API version number
186 IF NOT FND_API.Compatible_API_Call (
187 l_api_version_number, p_api_version_number, l_api_name,
188 G_PKG_NAME) then
189 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
190 return;
191 END IF;
192
193 -- Initialize the message table if requested.
194
195 if p_init_msg_tbl then
196 FND_MSG_PUB.initialize;
197 end if;
198
199 savepoint start_create_cust_region;
200
201 -- Call private procedure to create a region item
202 AK_CUSTOM_PVT.CREATE_CUST_REGION (
203 p_validation_level => p_validation_level,
204 p_api_version_number => 1.0,
205 p_msg_count => p_msg_count,
206 p_msg_data => p_msg_data,
207 p_return_status => l_return_status,
208 p_custom_appl_id => p_custom_appl_id,
209 p_custom_code => p_custom_code,
210 p_region_appl_id => p_region_appl_id,
211 p_region_code => p_region_code,
212 p_property_name => p_property_name,
213 p_property_varchar2_value => p_property_varchar2_value,
214 p_property_number_value => p_property_number_value,
215 p_criteria_join_condition => p_criteria_join_condition,
216 p_property_varchar2_value_tl => p_property_varchar2_value_tl,
217 p_created_by => p_created_by,
218 p_creation_date => p_creation_date,
219 p_last_updated_by => p_last_updated_by,
220 p_last_update_date => p_last_update_date,
221 p_last_update_login => p_last_update_login,
222 p_loader_timestamp => p_loader_timestamp,
223 p_pass => l_pass,
224 p_copy_redo_flag => l_copy_redo_flag
225 );
226
227 -- If API call returns with an error status...
228 if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) or
229 (l_return_status = FND_API.G_RET_STS_ERROR) then
230 --dbms_output.put_line(l_api_name || ' Create_Cust_Region failed');
231 RAISE FND_API.G_EXC_ERROR;
232 end if;
233
234 p_return_status := FND_API.G_RET_STS_SUCCESS;
235
236 EXCEPTION
237 WHEN FND_API.G_EXC_ERROR THEN
238 p_return_status := FND_API.G_RET_STS_ERROR;
239 rollback to start_create_cust_region;
240 WHEN OTHERS THEN
241 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
242 rollback to start_create_cust_region;
243 FND_MSG_PUB.Build_Exc_Msg( G_PKG_NAME, l_api_name,
244 SUBSTR (SQLERRM, 1, 240) );
245 FND_MSG_PUB.Add;
246 end CREATE_CUST_REGION;
247
248 --=======================================================
249 -- Procedure CREATE_CUST_REG_ITEM
250 --
251 -- Usage Group API for creating a region item
252 --
253 -- Desc Calls the private API to creates a region item
254 -- using the given info
255 --
256 -- Results The API returns the standard p_return_status parameter
257 -- indicating one of the standard return statuses :
258 -- * Unexpected error
259 -- * Error
260 -- * Success
261 -- Parameters Region Item columns
262 --
263 -- Version Initial version number = 1.0
264 -- History Current version number = 1.0
265 --=======================================================
266 procedure CREATE_CUST_REG_ITEM (
267 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
268 p_api_version_number IN NUMBER,
269 p_init_msg_tbl IN BOOLEAN := FALSE,
270 p_msg_count OUT NOCOPY NUMBER,
271 p_msg_data OUT NOCOPY VARCHAR2,
272 p_return_status OUT NOCOPY VARCHAR2,
273 p_custom_appl_id IN NUMBER,
274 p_custom_code IN VARCHAR2,
275 p_region_appl_id IN NUMBER,
279 p_property_name IN VARCHAR2,
276 p_region_code IN VARCHAR2,
277 p_attr_appl_id IN NUMBER,
278 p_attr_code IN VARCHAR2,
280 p_property_varchar2_value IN VARCHAR2 := FND_API.G_MISS_CHAR,
281 p_property_number_value IN NUMBER := FND_API.G_MISS_NUM,
282 p_property_date_value IN VARCHAR2 := FND_API.G_MISS_CHAR,
283 p_property_varchar2_value_tl IN VARCHAR2 := FND_API.G_MISS_CHAR,
284 p_created_by IN NUMBER := FND_API.G_MISS_NUM,
285 p_creation_date IN DATE := FND_API.G_MISS_DATE,
286 p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
287 p_last_update_date IN DATE := FND_API.G_MISS_DATE,
288 p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
289 p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
290 p_pass IN NUMBER,
291 p_copy_redo_flag IN OUT NOCOPY BOOLEAN
292 ) is
293 l_api_version_number CONSTANT number := 1.0;
294 l_api_name CONSTANT varchar2(30) := 'Create_Cust_Reg_Item';
295 l_return_status VARCHAR2(1);
296 l_pass NUMBER := 2;
297 l_copy_redo_flag BOOLEAN := FALSE;
298 begin
299 -- Check API version number
300 IF NOT FND_API.Compatible_API_Call (
301 l_api_version_number, p_api_version_number, l_api_name,
302 G_PKG_NAME) then
303 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
304 return;
305 END IF;
306
307 -- Initialize the message table if requested.
308
309 if p_init_msg_tbl then
310 FND_MSG_PUB.initialize;
311 end if;
312
313 savepoint start_create_cust_reg_item;
314
315 -- Call private procedure to create a region item
316 AK_CUSTOM_PVT.CREATE_CUST_REG_ITEM (
317 p_validation_level => p_validation_level,
318 p_api_version_number => 1.0,
319 p_msg_count => p_msg_count,
320 p_msg_data => p_msg_data,
321 p_return_status => l_return_status,
322 p_custom_appl_id => p_custom_appl_id,
323 p_custom_code => p_custom_code,
324 p_region_appl_id => p_region_appl_id,
325 p_region_code => p_region_code,
326 p_attr_appl_id => p_attr_appl_id,
327 p_attr_code => p_attr_code,
328 p_property_name => p_property_name,
329 p_property_varchar2_value => p_property_varchar2_value,
330 p_property_number_value => p_property_number_value,
331 p_property_date_value => p_property_date_value,
332 p_property_varchar2_value_tl => p_property_varchar2_value_tl,
333 p_created_by => p_created_by,
334 p_creation_date => p_creation_date,
335 p_last_updated_by => p_last_updated_by,
336 p_last_update_date => p_last_update_date,
337 p_last_update_login => p_last_update_login,
338 p_loader_timestamp => p_loader_timestamp,
339 p_pass => l_pass,
340 p_copy_redo_flag => l_copy_redo_flag
341 );
342
343 -- If API call returns with an error status...
344 if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) or
345 (l_return_status = FND_API.G_RET_STS_ERROR) then
346 --dbms_output.put_line(l_api_name || ' Create_Cust_Reg_Item failed');
347 RAISE FND_API.G_EXC_ERROR;
348 end if;
349
350 p_return_status := FND_API.G_RET_STS_SUCCESS;
351
352 EXCEPTION
353 WHEN FND_API.G_EXC_ERROR THEN
354 p_return_status := FND_API.G_RET_STS_ERROR;
355 rollback to start_create_cust_reg_item;
356 WHEN OTHERS THEN
357 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
358 rollback to start_create_cust_reg_item;
359 FND_MSG_PUB.Build_Exc_Msg( G_PKG_NAME, l_api_name,
360 SUBSTR (SQLERRM, 1, 240) );
361 FND_MSG_PUB.Add;
362 end CREATE_CUST_REG_ITEM;
363
364 --=======================================================
365 -- Procedure CREATE_CRITERIA
366 --
367 -- Usage Group API for creating a region item
368 --
369 -- Desc Calls the private API to creates a region item
370 -- using the given info
371 --
372 -- Results The API returns the standard p_return_status parameter
373 -- indicating one of the standard return statuses :
377 -- Parameters Region Item columns
374 -- * Unexpected error
375 -- * Error
376 -- * Success
378 --
379 -- Version Initial version number = 1.0
380 -- History Current version number = 1.0
381 --=======================================================
382 procedure CREATE_CRITERIA (
383 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
384 p_api_version_number IN NUMBER,
385 p_init_msg_tbl IN BOOLEAN := FALSE,
386 p_msg_count OUT NOCOPY NUMBER,
387 p_msg_data OUT NOCOPY VARCHAR2,
388 p_return_status OUT NOCOPY VARCHAR2,
389 p_custom_appl_id IN NUMBER,
390 p_custom_code IN VARCHAR2,
391 p_region_appl_id IN NUMBER,
392 p_region_code IN VARCHAR2,
393 p_attr_appl_id IN NUMBER,
394 p_attr_code IN VARCHAR2,
395 p_sequence_number IN NUMBER,
396 p_operation IN VARCHAR2 := FND_API.G_MISS_CHAR,
397 p_value_varchar2 IN VARCHAR2 := FND_API.G_MISS_CHAR,
398 p_value_number IN NUMBER := FND_API.G_MISS_NUM,
399 p_value_date IN DATE := FND_API.G_MISS_DATE,
400 p_start_date_Active IN DATE := FND_API.G_MISS_DATE,
401 p_end_date_active IN DATE := FND_API.G_MISS_DATE,
402 p_created_by IN NUMBER := FND_API.G_MISS_NUM,
403 p_creation_date IN DATE := FND_API.G_MISS_DATE,
404 p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
405 p_last_update_date IN DATE := FND_API.G_MISS_DATE,
406 p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
407 p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
408 p_pass IN NUMBER,
409 p_copy_redo_flag IN OUT NOCOPY BOOLEAN
410 ) is
411 l_api_version_number CONSTANT number := 1.0;
412 l_api_name CONSTANT varchar2(30) := 'Create_Criteria';
413 l_return_status VARCHAR2(1);
414 l_pass NUMBER := 2;
415 l_copy_redo_flag BOOLEAN := FALSE;
416 begin
417 -- Check API version number
418 IF NOT FND_API.Compatible_API_Call (
419 l_api_version_number, p_api_version_number, l_api_name,
420 G_PKG_NAME) then
421 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
422 return;
423 END IF;
424
425 -- Initialize the message table if requested.
426
427 if p_init_msg_tbl then
428 FND_MSG_PUB.initialize;
429 end if;
430
431 savepoint start_create_criteria;
432
433 -- Call private procedure to create a region item
434 AK_CUSTOM_PVT.CREATE_CRITERIA (
435 p_validation_level => p_validation_level,
436 p_api_version_number => 1.0,
437 p_msg_count => p_msg_count,
438 p_msg_data => p_msg_data,
439 p_return_status => l_return_status,
440 p_custom_appl_id => p_custom_appl_id,
441 p_custom_code => p_custom_code,
442 p_region_appl_id => p_region_appl_id,
443 p_region_code => p_region_code,
444 p_attr_appl_id => p_attr_appl_id,
445 p_attr_code => p_attr_code,
446 p_sequence_number => p_sequence_number,
447 p_operation => p_operation,
448 p_value_varchar2 => p_value_varchar2,
449 p_value_number => p_value_number,
450 p_value_date => p_value_date,
451 p_start_date_active => p_start_date_active,
452 p_end_date_active => p_end_date_active,
453 p_created_by => p_created_by,
454 p_creation_date => p_creation_date,
455 p_last_updated_by => p_last_updated_by,
456 p_last_update_date => p_last_update_date,
457 p_last_update_login => p_last_update_login,
458 p_loader_timestamp => p_loader_timestamp,
459 p_pass => l_pass,
460 p_copy_redo_flag => l_copy_redo_flag
461 );
462
463 -- If API call returns with an error status...
464 if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) or
465 (l_return_status = FND_API.G_RET_STS_ERROR) then
466 --dbms_output.put_line(l_api_name || ' Create_Criteria failed');
467 RAISE FND_API.G_EXC_ERROR;
468 end if;
469
470 p_return_status := FND_API.G_RET_STS_SUCCESS;
471
472 EXCEPTION
473 WHEN FND_API.G_EXC_ERROR THEN
474 p_return_status := FND_API.G_RET_STS_ERROR;
475 rollback to start_create_criteria;
476 WHEN OTHERS THEN
477 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
478 rollback to start_create_criteria;
479 FND_MSG_PUB.Build_Exc_Msg( G_PKG_NAME, l_api_name,
480 SUBSTR (SQLERRM, 1, 240) );
481 FND_MSG_PUB.Add;
482 end CREATE_CRITERIA;
483
484 --=======================================================
485 -- Procedure DOWNLOAD_CUSTOM
486 --
487 -- Usage Group API for downloading customized regions
488 --
489 -- Desc This API first write out standard loader
490 -- file header for regions to a flat file.
491 -- Then it calls the private API to extract the
492 -- regions selected by application ID or by
493 -- key values from the database to the output file.
494 -- If a region is selected for writing to the loader
495 -- file, all its children records (including region
496 -- items) will also be written.
497 --
498 -- Results The API returns the standard p_return_status parameter
499 -- indicating one of the standard return statuses :
500 -- * Unexpected error
501 -- * Error
505 -- NLS language for database. If none if given,
502 -- * Success
503 -- Parameters
504 -- p_nls_language : IN optional
506 -- the current NLS language will be used.
507 --
508 -- One of the following three parameters must be given:
509 --
510 -- p_application_id : IN optional
511 -- If given, all regions for this application ID
512 -- will be written to the output file.
513 -- p_application_short_name : IN optional
514 -- If given, all regions for this application short
515 -- name will be written to the output file.
516 -- Application short name will be ignored if an
517 -- application ID is given.
518 -- p_custom_pk_tbl : IN optional
519 -- If given, only regions whose key values are
520 -- included in this table will be written to the
521 -- output file.
522 --
523 --
524 -- Version Initial version number = 1.0
525 -- History Current version number = 1.0
526 --=======================================================
527 procedure DOWNLOAD_CUSTOM (
528 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
529 p_api_version_number IN NUMBER,
530 p_init_msg_tbl IN BOOLEAN := FALSE,
531 p_msg_count OUT NOCOPY NUMBER,
532 p_msg_data OUT NOCOPY VARCHAR2,
533 p_return_status OUT NOCOPY VARCHAR2,
534 p_nls_language IN VARCHAR2 := FND_API.G_MISS_CHAR,
535 p_application_id IN NUMBER := FND_API.G_MISS_NUM,
536 p_application_short_name IN VARCHAR2 := FND_API.G_MISS_CHAR,
537 p_custom_pk_tbl IN AK_CUSTOM_PUB.Custom_PK_Tbl_Type := AK_CUSTOM_PUB.G_MISS_CUSTOM_PK_TBL,
538 p_level IN VARCHAR2 := FND_API.G_MISS_CHAR,
539 p_levelpk IN VARCHAR2 := FND_API.G_MISS_CHAR
540 ) is
541 l_api_version_number CONSTANT number := 1.0;
542 l_api_name CONSTANT varchar2(30) := 'Download_Custom';
543 l_application_id number;
544 l_buffer_tbl AK_ON_OBJECTS_PUB.Buffer_Tbl_Type;
545 l_index NUMBER;
546 l_index_out NUMBER;
547 l_nls_language VARCHAR2(30);
548 l_return_status varchar2(1);
549 begin
550
551 -- Check verion number
552 IF NOT FND_API.Compatible_API_Call (
553 l_api_version_number, p_api_version_number, l_api_name,
554 G_PKG_NAME) then
555 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
556 return;
557 END IF;
558
559 -- Initialize the message table if requested.
560
561 if p_init_msg_tbl then
562 FND_MSG_PUB.initialize;
563 end if;
564
565 savepoint Start_Custom_download;
566
567 if (AK_DOWNLOAD_GRP.G_WRITE_HEADER) then
568 -- Call private download procedure to verify parameters,
569 -- load application ID, and write header information such
570 -- as nls_language and codeset to data file.
571 AK_ON_OBJECTS_PVT.download_header(
572 p_validation_level => p_validation_level,
573 p_api_version_number => 1.0,
574 p_return_status => l_return_status,
575 p_nls_language => p_nls_language,
576 p_application_id => p_application_id,
577 p_application_short_name => p_application_short_name,
578 p_table_size => p_custom_pk_tbl.count,
579 p_download_by_object => AK_ON_OBJECTS_PVT.G_CUSTOM_REGION,
580 p_nls_language_out => l_nls_language,
581 p_application_id_out => l_application_id
582 );
583 else
584 l_application_id := p_application_id;
585 select userenv('LANG') into l_nls_language
586 from dual;
587 end if;
588
589 -- If API call returns with an error status...
590 if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) or
591 (l_return_status = FND_API.G_RET_STS_ERROR) then
592 --dbms_output.put_line(G_PKG_NAME || ' download_header failed');
593 RAISE FND_API.G_EXC_ERROR;
594 end if;
595
596 -- - call the download procedure for regions to retrieve the
597 -- selected regions and their referenced objects and attributes
598 -- from the database into a table of buffer.
599 AK_CUSTOM_PVT.DOWNLOAD_CUSTOM (
600 p_validation_level => p_validation_level,
601 p_api_version_number => 1.0,
602 p_return_status => l_return_status,
603 p_application_id => l_application_id,
604 p_custom_pk_tbl => p_custom_pk_tbl,
605 p_nls_language => l_nls_language,
606 p_get_object_flag => 'Y',
607 p_level => p_level,
608 p_levelpk => p_levelpk
609 );
610
611 -- If download call returns with an error status or
612 -- download failed to retrieve any information from the database..
613 if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) or
614 (l_return_status = FND_API.G_RET_STS_ERROR) then
615 --dbms_output.put_line(G_PKG_NAME || 'download failed');
616 RAISE FND_API.G_EXC_ERROR;
617 end if;
618
619 --dbms_output.put_line('got ' || to_char(l_buffer_tbl.count) || ' lines');
620
621 p_return_status := FND_API.G_RET_STS_SUCCESS;
622
623 FND_MSG_PUB.Count_And_Get (
624 p_count => p_msg_count,
625 p_data => p_msg_data);
626
627 EXCEPTION
628 WHEN FND_API.G_EXC_ERROR THEN
629 rollback to Start_Custom_download;
630 p_return_status := FND_API.G_RET_STS_ERROR;
631 FND_MSG_PUB.Count_And_Get (
632 p_count => p_msg_count,
633 p_data => p_msg_data);
637 FND_MSG_PUB.Build_Exc_Msg( G_PKG_NAME, l_api_name,
634 WHEN OTHERS THEN
635 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
636 rollback to Start_Custom_download;
638 SUBSTR (SQLERRM, 1, 240) );
639 FND_MSG_PUB.Add;
640 FND_MSG_PUB.Count_And_Get (
641 p_count => p_msg_count,
642 p_data => p_msg_data);
643
644 end DOWNLOAD_CUSTOM;
645
646 --=======================================================
647 -- Procedure UPDATE_CUSTOM
648 --
649 -- Usage Group API for updating a region
650 --
651 -- Desc This API calls the private API to update
652 -- a region using the given info
653 --
654 -- Results The API returns the standard p_return_status parameter
655 -- indicating one of the standard return statuses :
656 -- * Unexpected error
657 -- * Error
658 -- * Success
659 -- Parameters Region columns
660 --
661 -- Version Initial version number = 1.0
662 -- History Current version number = 1.0
663 --=======================================================
664 procedure UPDATE_CUSTOM (
665 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
666 p_api_version_number IN NUMBER,
667 p_init_msg_tbl IN BOOLEAN := FALSE,
668 p_msg_count OUT NOCOPY NUMBER,
669 p_msg_data OUT NOCOPY VARCHAR2,
670 p_return_status OUT NOCOPY VARCHAR2,
671 p_custom_appl_id IN NUMBER,
672 p_custom_appl_code IN VARCHAR2,
673 p_region_application_id IN NUMBER,
674 p_region_code IN VARCHAR2,
675 p_verticalization_id IN VARCHAR2 := FND_API.G_MISS_CHAR,
676 p_localization_code IN VARCHAR2 := FND_API.G_MISS_CHAR,
677 p_org_id IN NUMBER := FND_API.G_MISS_NUM,
678 p_site_id IN NUMBER := FND_API.G_MISS_NUM,
679 p_responsibility_id IN NUMBER := FND_API.G_MISS_NUM,
680 p_web_user_id IN NUMBER := FND_API.G_MISS_NUM,
681 p_default_customization_flag IN VARCHAR2 := FND_API.G_MISS_CHAR,
682 p_customization_level_id IN NUMBER := FND_API.G_MISS_NUM,
683 p_developer_mode IN VARCHAR2 := FND_API.G_MISS_CHAR,
684 p_reference_path IN VARCHAR2 := FND_API.G_MISS_CHAR,
685 p_function_name IN VARCHAR2 := FND_API.G_MISS_CHAR,
686 p_start_date_active IN DATE := FND_API.G_MISS_DATE,
687 p_end_date_active IN DATE := FND_API.G_MISS_DATE,
688 p_name IN VARCHAR2 := FND_API.G_MISS_CHAR,
689 p_description IN VARCHAR2 := FND_API.G_MISS_CHAR,
690 p_created_by IN NUMBER := FND_API.G_MISS_NUM,
691 p_creation_date IN DATE := FND_API.G_MISS_DATE,
692 p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
693 p_last_update_date IN DATE := FND_API.G_MISS_DATE,
694 p_last_update_login IN NUMBER := FND_API.G_MISS_NUM
695 ) is
696 l_api_version_number CONSTANT number := 1.0;
697 l_api_name CONSTANT varchar2(30) := 'Update_Custom';
698 l_return_status VARCHAR2(1);
699 l_pass NUMBER := 2;
700 l_copy_redo_flag BOOLEAN := FALSE;
701 begin
702 -- Check API version number
703 IF NOT FND_API.Compatible_API_Call (
704 l_api_version_number, p_api_version_number, l_api_name,
705 G_PKG_NAME) then
706 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
707 return;
708 END IF;
709
710 -- Initialize the message table if requested.
711
712 if p_init_msg_tbl then
713 FND_MSG_PUB.initialize;
714 end if;
715
716 savepoint start_update_custom;
717
718 -- Call private procedure to update a region
719 AK_CUSTOM_PVT.UPDATE_CUSTOM (
720 p_validation_level => p_validation_level,
721 p_api_version_number => 1.0,
722 p_msg_count => p_msg_count,
723 p_msg_data => p_msg_data,
724 p_return_status => l_return_status,
725 p_custom_appl_id => p_custom_appl_id,
726 p_custom_code => p_custom_appl_code,
727 p_region_application_id => p_region_application_id,
728 p_region_code => p_region_code,
729 p_verticalization_id => p_verticalization_id,
730 p_localization_code => p_localization_code,
731 p_org_id => p_org_id,
732 p_site_id => p_site_id,
733 p_responsibility_id => p_responsibility_id,
734 p_web_user_id => p_web_user_id,
735 p_default_customization_flag => p_default_customization_flag,
736 p_customization_level_id => p_customization_level_id,
737 p_developer_mode => p_developer_mode,
738 p_reference_path => p_reference_path,
739 p_function_name => p_function_name,
740 p_start_date_active => p_start_date_active,
741 p_end_date_active => p_end_date_active,
742 p_name => p_name,
743 p_description => p_description,
744 p_created_by => p_created_by,
745 p_creation_date => p_creation_date,
746 p_last_updated_by => p_last_updated_by,
747 p_last_update_date => p_last_update_date,
748 p_last_update_login => p_last_update_login,
749 p_pass => l_pass,
750 p_copy_redo_flag => l_copy_redo_flag
751 );
752
753 -- If API call returns with an error status...
754 if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) or
755 (l_return_status = FND_API.G_RET_STS_ERROR) then
756 --dbms_output.put_line(l_api_name || ' Update_Custom failed');
757 RAISE FND_API.G_EXC_ERROR;
758 end if;
759
760 p_return_status := FND_API.G_RET_STS_SUCCESS;
761
762 EXCEPTION
766 WHEN OTHERS THEN
763 WHEN FND_API.G_EXC_ERROR THEN
764 p_return_status := FND_API.G_RET_STS_ERROR;
765 rollback to start_update_custom;
767 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
768 rollback to start_update_custom;
769 FND_MSG_PUB.Build_Exc_Msg( G_PKG_NAME, l_api_name,
770 SUBSTR (SQLERRM, 1, 240) );
771 FND_MSG_PUB.Add;
772 end UPDATE_CUSTOM;
773
774 --=======================================================
775 -- Procedure UPDATE_CUST_REGION
776 --
777 -- Usage Group API for updating a region
778 --
779 -- Desc This API calls the private API to update
780 -- a region using the given info
781 --
782 -- Results The API returns the standard p_return_status parameter
783 -- indicating one of the standard return statuses :
784 -- * Unexpected error
785 -- * Error
786 -- * Success
787 -- Parameters Region columns
788 --
789 -- Version Initial version number = 1.0
790 -- History Current version number = 1.0
791 --=======================================================
792 procedure UPDATE_CUST_REGION (
793 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
794 p_api_version_number IN NUMBER,
795 p_init_msg_tbl IN BOOLEAN := FALSE,
796 p_msg_count OUT NOCOPY NUMBER,
797 p_msg_data OUT NOCOPY VARCHAR2,
798 p_return_status OUT NOCOPY VARCHAR2,
799 p_custom_appl_id IN NUMBER,
800 p_custom_appl_code IN VARCHAR2,
801 p_region_application_id IN NUMBER,
802 p_region_code IN VARCHAR2,
803 p_property_name IN VARCHAR2,
804 p_property_varchar2_value IN VARCHAR2 := FND_API.G_MISS_CHAR,
805 p_property_number_value IN NUMBER := FND_API.G_MISS_NUM,
806 p_criteria_join_condition IN VARCHAR2 := FND_API.G_MISS_CHAR,
807 p_property_varchar2_value_tl IN VARCHAR2 := FND_API.G_MISS_CHAR,
808 p_created_by IN NUMBER := FND_API.G_MISS_NUM,
809 p_creation_date IN DATE := FND_API.G_MISS_DATE,
810 p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
811 p_last_update_date IN DATE := FND_API.G_MISS_DATE,
812 p_last_update_login IN NUMBER := FND_API.G_MISS_NUM
813 ) is
814 l_api_version_number CONSTANT number := 1.0;
815 l_api_name CONSTANT varchar2(30) := 'Update_Cust_Region';
816 l_return_status VARCHAR2(1);
817 l_pass NUMBER := 2;
818 l_copy_redo_flag BOOLEAN := FALSE;
819 begin
820 -- Check API version number
821 IF NOT FND_API.Compatible_API_Call (
822 l_api_version_number, p_api_version_number, l_api_name,
823 G_PKG_NAME) then
824 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
825 return;
826 END IF;
827
828 -- Initialize the message table if requested.
829
830 if p_init_msg_tbl then
831 FND_MSG_PUB.initialize;
832 end if;
833
834 savepoint start_update_cust_region;
835
836 -- Call private procedure to update a region
837 AK_CUSTOM_PVT.UPDATE_CUST_REGION (
838 p_validation_level => p_validation_level,
839 p_api_version_number => 1.0,
840 p_msg_count => p_msg_count,
841 p_msg_data => p_msg_data,
842 p_return_status => l_return_status,
843 p_custom_appl_id => p_custom_appl_id,
844 p_custom_code => p_custom_appl_code,
845 p_region_application_id => p_region_application_id,
846 p_region_code => p_region_code,
847 p_property_name => p_property_name,
848 p_property_varchar2_value => p_property_varchar2_value,
849 p_property_number_value => p_property_number_value,
850 p_criteria_join_condition => p_criteria_join_condition,
851 p_property_varchar2_value_tl => p_property_varchar2_value_tl,
852 p_created_by => p_created_by,
853 p_creation_date => p_creation_date,
854 p_last_updated_by => p_last_updated_by,
855 p_last_update_date => p_last_update_date,
856 p_last_update_login => p_last_update_login,
857 p_pass => l_pass,
858 p_copy_redo_flag => l_copy_redo_flag
859 );
860
861 -- If API call returns with an error status...
862 if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) or
863 (l_return_status = FND_API.G_RET_STS_ERROR) then
864 --dbms_output.put_line(l_api_name || ' Update_Cust_Region failed');
865 RAISE FND_API.G_EXC_ERROR;
866 end if;
867
868 p_return_status := FND_API.G_RET_STS_SUCCESS;
869
870 EXCEPTION
871 WHEN FND_API.G_EXC_ERROR THEN
872 p_return_status := FND_API.G_RET_STS_ERROR;
873 rollback to start_update_cust_region;
874 WHEN OTHERS THEN
875 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
876 rollback to start_update_cust_region;
877 FND_MSG_PUB.Build_Exc_Msg( G_PKG_NAME, l_api_name,
878 SUBSTR (SQLERRM, 1, 240) );
879 FND_MSG_PUB.Add;
880 end UPDATE_CUST_REGION;
881
882 --=======================================================
883 -- Procedure UPDATE_CUST_REG_ITEM
884 --
885 -- Usage Group API for updating a region
886 --
887 -- Desc This API calls the private API to update
888 -- a region using the given info
889 --
890 -- Results The API returns the standard p_return_status parameter
891 -- indicating one of the standard return statuses :
892 -- * Unexpected error
893 -- * Error
897 -- Version Initial version number = 1.0
894 -- * Success
895 -- Parameters Region columns
896 --
898 -- History Current version number = 1.0
899 --=======================================================
900 procedure UPDATE_CUST_REG_ITEM (
901 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
902 p_api_version_number IN NUMBER,
903 p_init_msg_tbl IN BOOLEAN := FALSE,
904 p_msg_count OUT NOCOPY NUMBER,
905 p_msg_data OUT NOCOPY VARCHAR2,
906 p_return_status OUT NOCOPY VARCHAR2,
907 p_custom_appl_id IN NUMBER,
908 p_custom_appl_code IN VARCHAR2,
909 p_region_application_id IN NUMBER,
910 p_region_code IN VARCHAR2,
911 p_attribute_appl_id IN NUMBER,
912 p_attribute_code IN VARCHAR2,
913 p_property_name IN VARCHAR2,
914 p_property_varchar2_value IN VARCHAR2 := FND_API.G_MISS_CHAR,
915 p_property_number_value IN NUMBER := FND_API.G_MISS_NUM,
916 p_property_date_value IN VARCHAR2 := FND_API.G_MISS_CHAR,
917 p_property_varchar2_value_tl IN VARCHAR2 := FND_API.G_MISS_CHAR,
918 p_created_by IN NUMBER := FND_API.G_MISS_NUM,
919 p_creation_date IN DATE := FND_API.G_MISS_DATE,
920 p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
921 p_last_update_date IN DATE := FND_API.G_MISS_DATE,
922 p_last_update_login IN NUMBER := FND_API.G_MISS_NUM
923 ) is
924 l_api_version_number CONSTANT number := 1.0;
925 l_api_name CONSTANT varchar2(30) := 'Update_Cust_Reg_Item';
926 l_return_status VARCHAR2(1);
927 l_pass NUMBER := 2;
928 l_copy_redo_flag BOOLEAN := FALSE;
929 begin
930 -- Check API version number
931 IF NOT FND_API.Compatible_API_Call (
932 l_api_version_number, p_api_version_number, l_api_name,
933 G_PKG_NAME) then
934 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
935 return;
936 END IF;
937
938 -- Initialize the message table if requested.
939
940 if p_init_msg_tbl then
941 FND_MSG_PUB.initialize;
942 end if;
943
944 savepoint start_update_cust_reg_item;
945
946 -- Call private procedure to update a region
947 AK_CUSTOM_PVT.UPDATE_CUST_REG_ITEM (
948 p_validation_level => p_validation_level,
949 p_api_version_number => 1.0,
950 p_msg_count => p_msg_count,
951 p_msg_data => p_msg_data,
952 p_return_status => l_return_status,
953 p_custom_appl_id => p_custom_appl_id,
954 p_custom_code => p_custom_appl_code,
955 p_region_application_id => p_region_application_id,
956 p_region_code => p_region_code,
957 p_attribute_appl_id => p_attribute_appl_id,
958 p_attribute_code => p_attribute_code,
959 p_property_name => p_property_name,
960 p_property_varchar2_value => p_property_varchar2_value,
961 p_property_number_value => p_property_number_value,
962 p_property_date_value => p_property_date_value,
963 p_property_varchar2_value_tl => p_property_varchar2_value_tl,
964 p_created_by => p_created_by,
965 p_creation_date => p_creation_date,
966 p_last_updated_by => p_last_updated_by,
967 p_last_update_date => p_last_update_date,
968 p_last_update_login => p_last_update_login,
969 p_pass => l_pass,
970 p_copy_redo_flag => l_copy_redo_flag
971 );
972
973 -- If API call returns with an error status...
974 if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) or
975 (l_return_status = FND_API.G_RET_STS_ERROR) then
976 --dbms_output.put_line(l_api_name || ' Update_Cust_Reg_Item failed');
977 RAISE FND_API.G_EXC_ERROR;
978 end if;
979
980 p_return_status := FND_API.G_RET_STS_SUCCESS;
981
982 EXCEPTION
983 WHEN FND_API.G_EXC_ERROR THEN
984 p_return_status := FND_API.G_RET_STS_ERROR;
985 rollback to start_update_cust_reg_item;
986 WHEN OTHERS THEN
987 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
988 rollback to start_update_cust_reg_item;
989 FND_MSG_PUB.Build_Exc_Msg( G_PKG_NAME, l_api_name,
990 SUBSTR (SQLERRM, 1, 240) );
991 FND_MSG_PUB.Add;
992 end UPDATE_CUST_REG_ITEM;
993
994 --=======================================================
995 -- Procedure UPDATE_CRITERIA
996 --
997 -- Usage Group API for updating a region
998 --
999 -- Desc This API calls the private API to update
1000 -- a region using the given info
1001 --
1002 -- Results The API returns the standard p_return_status parameter
1003 -- indicating one of the standard return statuses :
1004 -- * Unexpected error
1005 -- * Error
1006 -- * Success
1007 -- Parameters Region columns
1008 --
1009 -- Version Initial version number = 1.0
1010 -- History Current version number = 1.0
1011 --=======================================================
1012 procedure UPDATE_CRITERIA (
1013 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1014 p_api_version_number IN NUMBER,
1015 p_init_msg_tbl IN BOOLEAN := FALSE,
1016 p_msg_count OUT NOCOPY NUMBER,
1017 p_msg_data OUT NOCOPY VARCHAR2,
1018 p_return_status OUT NOCOPY VARCHAR2,
1019 p_custom_appl_id IN NUMBER,
1020 p_custom_appl_code IN VARCHAR2,
1024 p_attribute_code IN VARCHAR2,
1021 p_region_application_id IN NUMBER,
1022 p_region_code IN VARCHAR2,
1023 p_attribute_appl_id IN NUMBER,
1025 p_sequence_number IN NUMBER,
1026 p_operation IN VARCHAR2,
1027 p_value_varchar2 IN VARCHAR2 := FND_API.G_MISS_CHAR,
1028 p_value_number IN NUMBER := FND_API.G_MISS_NUM,
1029 p_value_date IN DATE := FND_API.G_MISS_DATE,
1030 p_start_date_active IN DATE := FND_API.G_MISS_DATE,
1031 p_end_date_active IN DATE := FND_API.G_MISS_DATE,
1032 p_created_by IN NUMBER := FND_API.G_MISS_NUM,
1033 p_creation_date IN DATE := FND_API.G_MISS_DATE,
1034 p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
1035 p_last_update_date IN DATE := FND_API.G_MISS_DATE,
1036 p_last_update_login IN NUMBER := FND_API.G_MISS_NUM
1037 ) is
1038 l_api_version_number CONSTANT number := 1.0;
1039 l_api_name CONSTANT varchar2(30) := 'Update_Criteria';
1040 l_return_status VARCHAR2(1);
1041 l_pass NUMBER := 2;
1042 l_copy_redo_flag BOOLEAN := FALSE;
1043 begin
1044 -- Check API version number
1045 IF NOT FND_API.Compatible_API_Call (
1046 l_api_version_number, p_api_version_number, l_api_name,
1047 G_PKG_NAME) then
1048 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1049 return;
1050 END IF;
1051
1052 -- Initialize the message table if requested.
1053
1054 if p_init_msg_tbl then
1055 FND_MSG_PUB.initialize;
1056 end if;
1057
1058 savepoint start_update_cust_reg_item;
1059
1060 -- Call private procedure to update a region
1061 AK_CUSTOM_PVT.UPDATE_CRITERIA (
1062 p_validation_level => p_validation_level,
1063 p_api_version_number => 1.0,
1064 p_msg_count => p_msg_count,
1065 p_msg_data => p_msg_data,
1066 p_return_status => l_return_status,
1067 p_custom_appl_id => p_custom_appl_id,
1068 p_custom_code => p_custom_appl_code,
1069 p_region_application_id => p_region_application_id,
1070 p_region_code => p_region_code,
1071 p_attribute_appl_id => p_attribute_appl_id,
1072 p_attribute_code => p_attribute_code,
1073 p_sequence_number => p_sequence_number,
1074 p_operation => p_operation,
1075 p_value_varchar2 => p_value_varchar2,
1076 p_value_number => p_value_number,
1077 p_value_date => p_value_date,
1078 p_start_date_active => p_start_date_active,
1079 p_end_date_Active => p_end_date_active,
1080 p_created_by => p_created_by,
1081 p_creation_date => p_creation_date,
1082 p_last_updated_by => p_last_updated_by,
1083 p_last_update_date => p_last_update_date,
1084 p_last_update_login => p_last_update_login,
1085 p_pass => l_pass,
1086 p_copy_redo_flag => l_copy_redo_flag
1087 );
1088
1089 -- If API call returns with an error status...
1090 if (l_return_status = FND_API.G_RET_STS_UNEXP_ERROR) or
1091 (l_return_status = FND_API.G_RET_STS_ERROR) then
1092 --dbms_output.put_line(l_api_name || ' Update_Criteria failed');
1093 RAISE FND_API.G_EXC_ERROR;
1094 end if;
1095
1096 p_return_status := FND_API.G_RET_STS_SUCCESS;
1097
1098 EXCEPTION
1099 WHEN FND_API.G_EXC_ERROR THEN
1100 p_return_status := FND_API.G_RET_STS_ERROR;
1101 rollback to start_update_critieria;
1102 WHEN OTHERS THEN
1103 p_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1104 rollback to start_update_criteria;
1105 FND_MSG_PUB.Build_Exc_Msg( G_PKG_NAME, l_api_name,
1106 SUBSTR (SQLERRM, 1, 240) );
1107 FND_MSG_PUB.Add;
1108 end UPDATE_CRITERIA;
1109
1110 end AK_CUSTOM_GRP;