[Home] [Help]
PACKAGE BODY: APPS.WMS_SORT_CRITERIA_FORM_PKG
Source
1 package body wms_sort_criteria_form_pkg AS
2 /* $Header: WMSFPCRB.pls 120.1 2005/06/20 05:37:14 appldev ship $ */
3
4 g_pkg_name constant varchar2(30) := 'WMSSort_Criteria_Form_PKG';
5
6 -- private function
7 -- return true if no existing sort_criteria has the same id as the input
8 FUNCTION check_existence
9 (
10 p_rule_id IN NUMBER
11 ,p_sequence_number IN NUMBER
12 ) RETURN BOOLEAN IS
13 CURSOR c IS SELECT rule_id FROM wms_sort_criteria
14 WHERE rule_id = p_rule_id
15 AND sequence_number = p_sequence_number;
16 l_rule_id NUMBER;
17 l_exist BOOLEAN;
18 BEGIN
19 OPEN c;
20 FETCH c INTO l_rule_id;
21 l_exist := NOT(c%notfound);
22 CLOSE c;
23 RETURN l_exist;
24 END check_existence;
25
26 -- private validation routine
27 PROCEDURE validate_input
28 (
29 x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
30 ,p_action IN VARCHAR2
31 ,p_rule_id IN NUMBER
32 ,p_sequence_number IN NUMBER
33 ,p_parameter_id IN NUMBER
34 ,p_order_code IN NUMBER
35 ,p_attribute_category IN VARCHAR2
36 ,p_attribute1 IN VARCHAR2
37 ,p_attribute2 IN VARCHAR2
38 ,p_attribute3 IN VARCHAR2
39 ,p_attribute4 IN VARCHAR2
40 ,p_attribute5 IN VARCHAR2
41 ,p_attribute6 IN VARCHAR2
42 ,p_attribute7 IN VARCHAR2
43 ,p_attribute8 IN VARCHAR2
44 ,p_attribute9 IN VARCHAR2
45 ,p_attribute10 IN VARCHAR2
46 ,p_attribute11 IN VARCHAR2
47 ,p_attribute12 IN VARCHAR2
48 ,p_attribute13 IN VARCHAR2
49 ,p_attribute14 IN VARCHAR2
50 ,p_attribute15 IN VARCHAR2
51 ) IS
52 l_return_status VARCHAR2(1) := fnd_api.g_ret_sts_success;
53 l_found BOOLEAN;
54 l_msg_count NUMBER ;
55 l_msg_data VARCHAR2(240);
56 BEGIN
57
58 IF p_action NOT IN ('INSERT', 'UPDATE', 'LOCK', 'DELETE') THEN
59 -- unknown exception
60 RAISE fnd_api.g_exc_unexpected_error;
61 END IF;
62
63 /* check existence */
64 IF check_existence(p_rule_id, p_sequence_number) THEN
65 IF p_action = 'INSERT' THEN
66 fnd_message.set_name('WMS', 'WMS_SORT_CRITERIA_EXISTS');
67 fnd_msg_pub.ADD;
68 RAISE fnd_api.g_exc_error;
69 END IF;
70 ELSE
71 IF p_action IN ('DELETE','LOCK','UPDATE') THEN
72 fnd_message.set_name('WMS', 'WMS_SORT_CRITERIA_NOT_FOUND');
73 fnd_msg_pub.ADD;
74 RAISE fnd_api.g_exc_error;
75 END IF;
76 END IF;
77
78 /* more input validation update and insert */
79 IF p_action IN ('UPDATE', 'INSERT') THEN
80 /* check foreign keys */
81 wms_rule_form_pkg.find_rule
82 (
83 p_api_version => 1.0
84 ,p_init_msg_list => fnd_api.g_false
85 ,x_return_status => l_return_status
86 ,x_msg_count => l_msg_count
87 ,x_msg_data => l_msg_data
88 ,p_rule_id => p_rule_id
89 ,x_found => l_found
90 );
91
92 if x_return_status = fnd_api.g_ret_sts_unexp_error then
93 raise fnd_api.g_exc_unexpected_error;
94 elsif x_return_status = fnd_api.g_ret_sts_error then
95 raise fnd_api.g_exc_error;
96 end if;
97
98 IF l_found = FALSE THEN
99 fnd_message.set_name('WMS', 'WMS_RULE_NOT_FOUND');
100 fnd_msg_pub.ADD;
101 RAISE fnd_api.g_exc_error;
102 END IF;
103
104 -- other input parameters are not validated currently
105 /* like parameter id */
106 END IF;
107
108 x_return_status := l_return_status;
109
110 EXCEPTION
111 WHEN fnd_api.g_exc_error THEN
112 x_return_status := fnd_api.g_ret_sts_error;
113
114 WHEN fnd_api.g_exc_unexpected_error THEN
115 x_return_status := fnd_api.g_ret_sts_unexp_error;
116
117 WHEN OTHERS THEN
118 x_return_status := fnd_api.g_ret_sts_unexp_error;
119
120 END validate_input;
121
122 procedure insert_sort_criteria
123 (
124 p_api_version IN NUMBER
125 ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
126 ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
127 ,x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
128 ,x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
129 ,x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
130 ,p_rowid IN OUT NOCOPY /* file.sql.39 change */ VARCHAR2
131 ,p_rule_id IN NUMBER
132 ,p_sequence_number IN NUMBER
133 ,p_parameter_id IN NUMBER
134 ,p_order_code IN NUMBER
135 ,p_attribute_category IN VARCHAR2
136 ,p_attribute1 IN VARCHAR2
137 ,p_attribute2 IN VARCHAR2
138 ,p_attribute3 IN VARCHAR2
139 ,p_attribute4 IN VARCHAR2
140 ,p_attribute5 IN VARCHAR2
141 ,p_attribute6 IN VARCHAR2
142 ,p_attribute7 IN VARCHAR2
143 ,p_attribute8 IN VARCHAR2
144 ,p_attribute9 IN VARCHAR2
145 ,p_attribute10 IN VARCHAR2
146 ,p_attribute11 IN VARCHAR2
147 ,p_attribute12 IN VARCHAR2
148 ,p_attribute13 IN VARCHAR2
149 ,p_attribute14 IN VARCHAR2
150 ,p_attribute15 IN VARCHAR2
151 ) IS
152 -- API standard variables
153 l_api_version constant number := 1.0;
154 l_api_name constant varchar2(30) := 'Insert_Sort_criteria';
155 l_return_status VARCHAR2(1) := fnd_api.g_ret_sts_success;
156 l_row_id VARCHAR2(20);
157 l_date DATE;
158 l_user_id NUMBER;
159 l_login_id NUMBER;
160 l_found BOOLEAN;
161 begin
162
163 -- Standard call to check for call compatibility
164 if not fnd_api.compatible_api_call( l_api_version
165 ,p_api_version
166 ,l_api_name
167 ,g_pkg_name ) then
168 raise fnd_api.g_exc_unexpected_error;
169 end if;
170
171 -- Initialize message list if p_init_msg_list is set to TRUE
172 if fnd_api.to_boolean( p_init_msg_list ) then
173 fnd_msg_pub.initialize;
174 end if;
175
176 /* add validation here */
177 /* get who column information */
178 SELECT Sysdate INTO l_date FROM dual;
179 l_user_id := fnd_global.user_id;
180 l_login_id := fnd_global.login_id;
181
182 validate_input
183 (
184 x_return_status => x_return_status
185 ,p_action => 'INSERT'
186 ,p_rule_id => p_rule_id
187 ,p_sequence_number => p_sequence_number
188 ,p_parameter_id => p_parameter_id
189 ,p_order_code => p_order_code
190 ,p_attribute_category => p_attribute_category
191 ,p_attribute1 => p_attribute1
192 ,p_attribute2 => p_attribute2
193 ,p_attribute3 => p_attribute3
194 ,p_attribute4 => p_attribute4
195 ,p_attribute5 => p_attribute5
196 ,p_attribute6 => p_attribute6
197 ,p_attribute7 => p_attribute7
198 ,p_attribute8 => p_attribute8
199 ,p_attribute9 => p_attribute9
200 ,p_attribute10 => p_attribute10
201 ,p_attribute11 => p_attribute11
202 ,p_attribute12 => p_attribute12
203 ,p_attribute13 => p_attribute13
204 ,p_attribute14 => p_attribute14
205 ,p_attribute15 => p_attribute15
206 );
207
208 if x_return_status = fnd_api.g_ret_sts_unexp_error then
209 raise fnd_api.g_exc_unexpected_error;
210 elsif x_return_status = fnd_api.g_ret_sts_error then
211 raise fnd_api.g_exc_error;
212 end if;
213
214 /* call the table handler to do the insert */
215 wms_sort_criteria_pkg.insert_row
216 (
217 x_rowid => p_rowid
218 ,x_rule_id => p_rule_id
219 ,x_sequence_number => p_sequence_number
220 ,x_last_updated_by => l_user_id
221 ,x_last_update_date => l_date
222 ,x_created_by => l_user_id
223 ,x_creation_date => l_date
224 ,x_last_update_login => l_login_id
225 ,x_parameter_id => p_parameter_id
226 ,x_order_code => p_order_code
227 ,x_attribute_category => p_attribute_category
228 ,x_attribute1 => p_attribute1
229 ,x_attribute2 => p_attribute2
230 ,x_attribute3 => p_attribute3
231 ,x_attribute4 => p_attribute4
232 ,x_attribute5 => p_attribute5
233 ,x_attribute6 => p_attribute6
234 ,x_attribute7 => p_attribute7
235 ,x_attribute8 => p_attribute8
236 ,x_attribute9 => p_attribute9
237 ,x_attribute10 => p_attribute10
238 ,x_attribute11 => p_attribute11
239 ,x_attribute12 => p_attribute12
240 ,x_attribute13 => p_attribute13
241 ,x_attribute14 => p_attribute14
242 ,x_attribute15 => p_attribute15
243 );
244
245 x_return_status := l_return_status;
246
247 EXCEPTION
248 when fnd_api.g_exc_error then
249 x_return_status := fnd_api.g_ret_sts_error;
250 fnd_msg_pub.count_and_get( p_count => x_msg_count
251 ,p_data => x_msg_data );
252
253 when fnd_api.g_exc_unexpected_error then
254 x_return_status := fnd_api.g_ret_sts_unexp_error;
255 fnd_msg_pub.count_and_get( p_count => x_msg_count
256 ,p_data => x_msg_data );
257
258 when others then
259 x_return_status := fnd_api.g_ret_sts_unexp_error;
260 if fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) then
261 fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
262 end if;
263 fnd_msg_pub.count_and_get( p_count => x_msg_count
264 ,p_data => x_msg_data );
265
266 end insert_sort_criteria;
267
268 procedure lock_sort_criteria (
269 p_api_version IN NUMBER
270 ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
271 ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
272 ,x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
273 ,x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
274 ,x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
275 ,p_rowid IN VARCHAR2
276 ,p_rule_id IN NUMBER
277 ,p_sequence_number IN NUMBER
278 ,p_parameter_id IN NUMBER
279 ,p_order_code IN NUMBER
280 ,p_attribute_category IN VARCHAR2
281 ,p_attribute1 IN VARCHAR2
282 ,p_attribute2 IN VARCHAR2
283 ,p_attribute3 IN VARCHAR2
284 ,p_attribute4 IN VARCHAR2
285 ,p_attribute5 IN VARCHAR2
286 ,p_attribute6 IN VARCHAR2
287 ,p_attribute7 IN VARCHAR2
288 ,p_attribute8 IN VARCHAR2
289 ,p_attribute9 IN VARCHAR2
290 ,p_attribute10 IN VARCHAR2
291 ,p_attribute11 IN VARCHAR2
292 ,p_attribute12 IN VARCHAR2
293 ,p_attribute13 IN VARCHAR2
294 ,p_attribute14 IN VARCHAR2
295 ,p_attribute15 IN VARCHAR2
296 ) is
297 -- API standard variables
298 l_api_version constant number := 1.0;
299 l_api_name constant varchar2(30) := 'Lock_Sort_criteria';
300 l_return_status VARCHAR2(1) := fnd_api.g_ret_sts_success;
301 begin
302 -- Standard call to check for call compatibility
303 if not fnd_api.compatible_api_call( l_api_version
304 ,p_api_version
305 ,l_api_name
306 ,g_pkg_name ) then
307 raise fnd_api.g_exc_unexpected_error;
308 end if;
309
310 -- Initialize message list if p_init_msg_list is set to TRUE
311 if fnd_api.to_boolean( p_init_msg_list ) then
312 fnd_msg_pub.initialize;
313 end if;
314
315 validate_input
316 (
317 x_return_status => x_return_status
318 ,p_action => 'LOCK'
319 ,p_rule_id => p_rule_id
320 ,p_sequence_number => p_sequence_number
321 ,p_parameter_id => p_parameter_id
322 ,p_order_code => p_order_code
323 ,p_attribute_category => p_attribute_category
324 ,p_attribute1 => p_attribute1
325 ,p_attribute2 => p_attribute2
326 ,p_attribute3 => p_attribute3
327 ,p_attribute4 => p_attribute4
328 ,p_attribute5 => p_attribute5
329 ,p_attribute6 => p_attribute6
330 ,p_attribute7 => p_attribute7
331 ,p_attribute8 => p_attribute8
332 ,p_attribute9 => p_attribute9
333 ,p_attribute10 => p_attribute10
334 ,p_attribute11 => p_attribute11
335 ,p_attribute12 => p_attribute12
336 ,p_attribute13 => p_attribute13
337 ,p_attribute14 => p_attribute14
338 ,p_attribute15 => p_attribute15
339 );
340
341 if x_return_status = fnd_api.g_ret_sts_unexp_error then
342 raise fnd_api.g_exc_unexpected_error;
343 elsif x_return_status = fnd_api.g_ret_sts_error then
344 raise fnd_api.g_exc_error;
345 end if;
346
347 wms_sort_criteria_pkg.lock_row (
348 x_rowid => p_rowid
349 ,x_rule_id => p_rule_id
350 ,x_sequence_number => p_sequence_number
351 ,x_parameter_id => p_parameter_id
352 ,x_order_code => p_order_code
353 ,x_attribute_category => p_attribute_category
354 ,x_attribute1 => p_attribute1
355 ,x_attribute2 => p_attribute2
356 ,x_attribute3 => p_attribute3
357 ,x_attribute4 => p_attribute4
358 ,x_attribute5 => p_attribute5
359 ,x_attribute6 => p_attribute6
360 ,x_attribute7 => p_attribute7
361 ,x_attribute8 => p_attribute8
362 ,x_attribute9 => p_attribute9
363 ,x_attribute10 => p_attribute10
364 ,x_attribute11 => p_attribute11
365 ,x_attribute12 => p_attribute12
366 ,x_attribute13 => p_attribute13
367 ,x_attribute14 => p_attribute14
368 ,x_attribute15 => p_attribute15
369 );
370
371 x_return_status := l_return_status;
372
373 EXCEPTION
374 WHEN fnd_api.g_exc_error THEN
375 x_return_status := fnd_api.g_ret_sts_error;
376 fnd_msg_pub.count_and_get( p_count => x_msg_count
377 ,p_data => x_msg_data );
378
379 WHEN fnd_api.g_exc_unexpected_error THEN
380 x_return_status := fnd_api.g_ret_sts_unexp_error;
381 fnd_msg_pub.count_and_get( p_count => x_msg_count
382 ,p_data => x_msg_data );
383
384 WHEN OTHERS THEN
385 x_return_status := fnd_api.g_ret_sts_unexp_error;
386 if fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) then
387 fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
388 end if;
389 fnd_msg_pub.count_and_get( p_count => x_msg_count
390 ,p_data => x_msg_data );
391
392 end lock_sort_criteria ;
393
394 procedure update_sort_criteria (
395 p_api_version IN NUMBER
396 ,p_init_msg_list IN VARCHAR2 := fnd_api.g_false
397 ,p_validation_level IN NUMBER := fnd_api.g_valid_level_full
398 ,x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2
399 ,x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER
400 ,x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2
401 ,p_rowid IN VARCHAR2
402 ,p_rule_id IN NUMBER
403 ,p_sequence_number IN NUMBER
404 ,p_parameter_id IN NUMBER
405 ,p_order_code IN NUMBER
406 ,p_attribute_category IN VARCHAR2
407 ,p_attribute1 IN VARCHAR2
408 ,p_attribute2 IN VARCHAR2
409 ,p_attribute3 IN VARCHAR2
410 ,p_attribute4 IN VARCHAR2
411 ,p_attribute5 IN VARCHAR2
412 ,p_attribute6 IN VARCHAR2
413 ,p_attribute7 IN VARCHAR2
414 ,p_attribute8 IN VARCHAR2
415 ,p_attribute9 IN VARCHAR2
416 ,p_attribute10 IN VARCHAR2
417 ,p_attribute11 IN VARCHAR2
418 ,p_attribute12 IN VARCHAR2
419 ,p_attribute13 IN VARCHAR2
420 ,p_attribute14 IN VARCHAR2
421 ,p_attribute15 IN VARCHAR2
422 ) is
423 -- API standard variables
424 l_api_version constant number := 1.0;
425 l_api_name constant varchar2(30) := 'Update_Sort_criteria';
426 l_return_status VARCHAR2(1) := fnd_api.g_ret_sts_success;
427 l_row_id VARCHAR2(20);
428 l_date DATE;
429 l_user_id NUMBER;
430 l_login_id NUMBER;
431 l_found BOOLEAN;
432 begin
433 -- Standard call to check for call compatibility
434 if not fnd_api.compatible_api_call( l_api_version
435 ,p_api_version
436 ,l_api_name
437 ,g_pkg_name ) then
438 raise fnd_api.g_exc_unexpected_error;
439 end if;
440
441 -- Initialize message list if p_init_msg_list is set to TRUE
442 if fnd_api.to_boolean( p_init_msg_list ) then
443 fnd_msg_pub.initialize;
444 end if;
445
446 validate_input
447 (
448 x_return_status => x_return_status
449 ,p_action => 'UPDATE'
450 ,p_rule_id => p_rule_id
451 ,p_sequence_number => p_sequence_number
452 ,p_parameter_id => p_parameter_id
453 ,p_order_code => p_order_code
454 ,p_attribute_category => p_attribute_category
455 ,p_attribute1 => p_attribute1
456 ,p_attribute2 => p_attribute2
457 ,p_attribute3 => p_attribute3
458 ,p_attribute4 => p_attribute4
459 ,p_attribute5 => p_attribute5
460 ,p_attribute6 => p_attribute6
461 ,p_attribute7 => p_attribute7
462 ,p_attribute8 => p_attribute8
463 ,p_attribute9 => p_attribute9
464 ,p_attribute10 => p_attribute10
465 ,p_attribute11 => p_attribute11
466 ,p_attribute12 => p_attribute12
467 ,p_attribute13 => p_attribute13
468 ,p_attribute14 => p_attribute14
469 ,p_attribute15 => p_attribute15
470 );
471
472 if x_return_status = fnd_api.g_ret_sts_unexp_error then
473 raise fnd_api.g_exc_unexpected_error;
474 elsif x_return_status = fnd_api.g_ret_sts_error then
475 raise fnd_api.g_exc_error;
476 end if;
477
478 /* get who column information */
479 SELECT Sysdate INTO l_date FROM dual;
480 l_user_id := fnd_global.user_id;
481 l_login_id := fnd_global.login_id;
482
483 /* call the table handler to do the update */
484 wms_sort_criteria_pkg.update_row
485 (
486 x_rowid => p_rowid
487 ,x_rule_id => p_rule_id
488 ,x_sequence_number => p_sequence_number
489 ,x_last_updated_by => l_user_id
490 ,x_last_update_date => l_date
491 ,x_last_update_login => l_login_id
492 ,x_parameter_id => p_parameter_id
493 ,x_order_code => p_order_code
494 ,x_attribute_category => p_attribute_category
495 ,x_attribute1 => p_attribute1
496 ,x_attribute2 => p_attribute2
497 ,x_attribute3 => p_attribute3
498 ,x_attribute4 => p_attribute4
499 ,x_attribute5 => p_attribute5
500 ,x_attribute6 => p_attribute6
501 ,x_attribute7 => p_attribute7
502 ,x_attribute8 => p_attribute8
503 ,x_attribute9 => p_attribute9
504 ,x_attribute10 => p_attribute10
505 ,x_attribute11 => p_attribute11
506 ,x_attribute12 => p_attribute12
507 ,x_attribute13 => p_attribute13
508 ,x_attribute14 => p_attribute14
509 ,x_attribute15 => p_attribute15
510 );
511
512 x_return_status := l_return_status;
513
514 EXCEPTION
515 WHEN fnd_api.g_exc_error THEN
516 x_return_status := fnd_api.g_ret_sts_error;
517 fnd_msg_pub.count_and_get( p_count => x_msg_count
518 ,p_data => x_msg_data );
519
520 WHEN fnd_api.g_exc_unexpected_error THEN
521 x_return_status := fnd_api.g_ret_sts_unexp_error;
522 fnd_msg_pub.count_and_get( p_count => x_msg_count
523 ,p_data => x_msg_data );
524
525 when others then
526 x_return_status := fnd_api.g_ret_sts_unexp_error;
527 if fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) then
528 fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
529 end if;
530 fnd_msg_pub.count_and_get( p_count => x_msg_count
531 ,p_data => x_msg_data );
532
533 end update_sort_criteria ;
534
535 procedure delete_sort_criteria (
536 p_api_version in NUMBER,
537 p_init_msg_list in varchar2 := fnd_api.g_false,
538 p_validation_level in number := fnd_api.g_valid_level_full,
539 x_return_status OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
540 x_msg_count OUT NOCOPY /* file.sql.39 change */ NUMBER,
541 x_msg_data OUT NOCOPY /* file.sql.39 change */ VARCHAR2,
542 p_rowid IN VARCHAR2,
543 p_rule_id IN NUMBER,
544 p_sequence_number IN NUMBER
545 ) is
546 -- API standard variables
547 l_api_version constant number := 1.0;
548 l_api_name constant varchar2(30) := 'Delete_Sort_criteria';
549 l_return_status VARCHAR2(1) := fnd_api.g_ret_sts_success;
550 l_dummy_rowid VARCHAR2(18);
551 BEGIN
552
553 -- Standard call to check for call compatibility
554 if not fnd_api.compatible_api_call( l_api_version
555 ,p_api_version
556 ,l_api_name
557 ,g_pkg_name ) then
558 raise fnd_api.g_exc_unexpected_error;
559 end if;
560
561 -- Initialize message list if p_init_msg_list is set to TRUE
562 if fnd_api.to_boolean( p_init_msg_list ) then
563 fnd_msg_pub.initialize;
564 end if;
565
566 validate_input
567 (
568 x_return_status => x_return_status
569 ,p_action => 'DELETE'
570 ,p_rule_id => p_rule_id
571 ,p_sequence_number => p_sequence_number
572 ,p_parameter_id => fnd_api.g_miss_num -- dont care
573 ,p_order_code => fnd_api.g_miss_num
574 ,p_attribute_category => fnd_api.g_miss_char
575 ,p_attribute1 => fnd_api.g_miss_char
576 ,p_attribute2 => fnd_api.g_miss_char
577 ,p_attribute3 => fnd_api.g_miss_char
578 ,p_attribute4 => fnd_api.g_miss_char
579 ,p_attribute5 => fnd_api.g_miss_char
580 ,p_attribute6 => fnd_api.g_miss_char
581 ,p_attribute7 => fnd_api.g_miss_char
582 ,p_attribute8 => fnd_api.g_miss_char
583 ,p_attribute9 => fnd_api.g_miss_char
584 ,p_attribute10 => fnd_api.g_miss_char
585 ,p_attribute11 => fnd_api.g_miss_char
586 ,p_attribute12 => fnd_api.g_miss_char
587 ,p_attribute13 => fnd_api.g_miss_char
588 ,p_attribute14 => fnd_api.g_miss_char
589 ,p_attribute15 => fnd_api.g_miss_char
590 );
591
592 if x_return_status = fnd_api.g_ret_sts_unexp_error then
593 raise fnd_api.g_exc_unexpected_error;
594 elsif x_return_status = fnd_api.g_ret_sts_error then
595 raise fnd_api.g_exc_error;
596 end if;
597
598 wms_sort_criteria_pkg.delete_row(p_rowid);
599 fnd_msg_pub.count_and_get( p_count => x_msg_count
600 ,p_data => x_msg_data );
601 x_return_status := l_return_status;
602
603 EXCEPTION
604 WHEN fnd_api.g_exc_error THEN
605 x_return_status := fnd_api.g_ret_sts_error;
606 fnd_msg_pub.count_and_get( p_count => x_msg_count
607 ,p_data => x_msg_data );
608
609 WHEN fnd_api.g_exc_unexpected_error THEN
610 x_return_status := fnd_api.g_ret_sts_unexp_error;
611 fnd_msg_pub.count_and_get( p_count => x_msg_count
612 ,p_data => x_msg_data );
613
614 WHEN OTHERS THEN
615 x_return_status := fnd_api.g_ret_sts_unexp_error;
616 if fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_unexp_error) then
617 fnd_msg_pub.add_exc_msg(g_pkg_name, l_api_name);
618 end if;
619 fnd_msg_pub.count_and_get( p_count => x_msg_count
620 ,p_data => x_msg_data );
621
622 end delete_sort_criteria ;
623
624 -- private procedure should be used only by the wms_rule_form_pkg.delete_rule
625 -- no validation is done whatsoever
626 procedure delete_sort_criterias (
627 p_rule_id IN NUMBER
628 ) is
629 BEGIN
630 DELETE FROM wms_sort_criteria
631 WHERE rule_id = p_rule_id;
632 END delete_sort_criterias;
633
634 end WMS_SORT_CRITERIA_FORM_PKG;