[Home] [Help]
PACKAGE BODY: APPS.CS_CORE_UTIL
Source
1 PACKAGE BODY CS_Core_UTIL AS
2 /* $Header: csucoreb.pls 120.4 2006/06/21 19:25:09 spusegao noship $ */
3
4 ------------------------------------------------------------------------------
5 -- Procedure : Add_Desc_Flex_Msg
6 ------------------------------------------------------------------------------
7
8 PROCEDURE Add_Desc_Flex_Msg
9 ( p_token_an IN VARCHAR2,
10 p_token_dfm IN VARCHAR2 )
11 IS
12 BEGIN
13 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
14 fnd_message.set_name('CS', 'CS_API_SR_DESC_FLEX_ERROR');
15 fnd_message.set_token('API_NAME', p_token_an);
16 fnd_message.set_token('DESC_FLEX_MSG', p_token_dfm);
17 fnd_msg_pub.add;
18 END IF;
19 END Add_Desc_Flex_Msg;
20
21 ------------------------------------------------------------------------------
22 -- Procedure : Add_Duplicate_Value_Msg
23 ------------------------------------------------------------------------------
24
25 PROCEDURE Add_Duplicate_Value_Msg
26 ( p_token_an IN VARCHAR2,
27 p_token_p IN VARCHAR2 )
28 IS
29 BEGIN
30 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
31 fnd_message.set_name('CS', 'CS_API_ALL_DUPLICATE_VALUE');
32 fnd_message.set_token('API_NAME', p_token_an);
33 fnd_message.set_token('DUPLICATE_VAL_PARAM', p_token_p);
34 fnd_msg_pub.add;
35 END IF;
36 END Add_Duplicate_Value_Msg;
37
38 ------------------------------------------------------------------------------
39 -- Procedure : Add_Invalid_Argument_Msg
40 ------------------------------------------------------------------------------
41
42 PROCEDURE Add_Invalid_Argument_Msg
43 ( p_token_an IN VARCHAR2,
44 p_token_v IN VARCHAR2,
45 p_token_p IN VARCHAR2 )
46 IS
47 BEGIN
48 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
49 fnd_message.set_name('CS', 'CS_API_ALL_INVALID_ARGUMENT');
50 fnd_message.set_token('API_NAME', p_token_an);
51 fnd_message.set_token('VALUE', p_token_v);
52 fnd_message.set_token('PARAMETER', p_token_p);
53 fnd_msg_pub.add;
54 END IF;
55 END Add_Invalid_Argument_Msg;
56
57 ------------------------------------------------------------------------------
58 -- Procedure : Add_Missing_Param_Msg
59 ------------------------------------------------------------------------------
60
61 PROCEDURE Add_Missing_Param_Msg
62 ( p_token_an IN VARCHAR2,
63 p_token_mp IN VARCHAR2 )
64 IS
65 BEGIN
66 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
67 fnd_message.set_name('CS', 'CS_API_ALL_MISSING_PARAM');
68 fnd_message.set_token('API_NAME', p_token_an);
69 fnd_message.set_token('MISSING_PARAM', p_token_mp);
70 fnd_msg_pub.add;
71 END IF;
72 END Add_MIssing_Param_Msg;
73
74 ------------------------------------------------------------------------------
75 -- Procedure : Add_Null_Parameter_Msg
76 ------------------------------------------------------------------------------
77
78 PROCEDURE Add_Null_Parameter_Msg
79 ( p_token_an IN VARCHAR2,
80 p_token_np IN VARCHAR2 )
81 IS
82 BEGIN
83 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_error) THEN
84 fnd_message.set_name('CS', 'CS_API_ALL_NULL_PARAMETER');
85 fnd_message.set_token('API_NAME', p_token_an);
86 fnd_message.set_token('NULL_PARAM', p_token_np);
87 fnd_msg_pub.add;
88 END IF;
89 END Add_Null_Parameter_Msg;
90
91 ------------------------------------------------------------------------------
92 -- Procedure : Add_Param_Ignored_Msg
93 ------------------------------------------------------------------------------
94
95 PROCEDURE Add_Param_Ignored_Msg
96 ( p_token_an IN VARCHAR2,
97 p_token_ip IN VARCHAR2 )
98 IS
99 BEGIN
100 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
101 fnd_message.set_name('CS', 'CS_API_ALL_PARAM_IGNORED');
102 fnd_message.set_token('API_NAME', p_token_an);
103 fnd_message.set_token('IGNORED_PARAM', p_token_ip);
104 fnd_msg_pub.add;
105 END IF;
106 END Add_Param_Ignored_Msg;
107
108 ------------------------------------------------------------------------------
109 -- Procedure : Add_Same_Val_Update_Msg
110 ------------------------------------------------------------------------------
111
112 PROCEDURE Add_Same_Val_Update_Msg
113 ( p_token_an IN VARCHAR2,
114 p_token_p IN VARCHAR2 )
115 IS
116 BEGIN
117 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
118 fnd_message.set_name('CS', 'CS_API_ALL_SAME_VAL_UPDATE');
119 fnd_message.set_token('API_NAME', p_token_an);
120 fnd_message.set_token('SAME_VAL_PARAM', p_token_p);
121 fnd_msg_pub.add;
122 END IF;
123 END Add_Same_Val_Update_Msg;
124
125 ------------------------------------------------------------------------------
126 -- Procedure : Convert_Contact_To_ID
127 ------------------------------------------------------------------------------
128
129 -- -----------------------------------------------------------------------------
130 -- Modification History
131 -- Date Name Desc
132 -- -------- -------- -----------------------------------------------------------
133 -- 08/08/05 smisra bug 4532643
134 -- The procedure is being stubbed as it is not used
135 -- -----------------------------------------------------------------------------
136 PROCEDURE Convert_Contact_To_ID
137 ( p_api_name IN VARCHAR2,
138 p_parameter_name_ln IN VARCHAR2,
139 p_parameter_name_fn IN VARCHAR2,
140 p_contact_lastname IN VARCHAR2,
141 p_contact_firstname IN VARCHAR2 DEFAULT fnd_api.g_miss_char,
142 x_contact_id OUT NOCOPY NUMBER,
143 x_return_status OUT NOCOPY VARCHAR2 )
144 IS
145 BEGIN
146 x_return_status := fnd_api.g_ret_sts_success;
147 /****
148 IF p_contact_firstname <> fnd_api.g_miss_char THEN
149 SELECT contact_id INTO x_contact_id
150 FROM ra_contacts
151 WHERE last_name = p_contact_lastname
152 AND first_name = p_contact_firstname;
153 ELSE
154 SELECT contact_id INTO x_contact_id
155 FROM ra_contacts
156 WHERE last_name = p_contact_lastname;
157 END IF;
158 ***/
159 EXCEPTION
160 WHEN no_data_found THEN
161 x_return_status := fnd_api.g_ret_sts_error;
162 IF p_contact_firstname <> fnd_api.g_miss_char THEN
163 cs_core_util.add_invalid_argument_msg
164 ( p_token_an => p_api_name,
165 p_token_v => p_contact_lastname||', '||p_contact_firstname,
166 p_token_p => p_parameter_name_ln||', '||p_parameter_name_fn );
167 ELSE
168 cs_core_util.add_invalid_argument_msg
169 ( p_token_an => p_api_name,
170 p_token_v => p_contact_lastname,
171 p_token_p => p_parameter_name_ln );
172 END IF;
173 WHEN too_many_rows THEN
174 x_return_status := fnd_api.g_ret_sts_error;
175 IF p_contact_firstname <> fnd_api.g_miss_char THEN
176 cs_core_util.add_duplicate_value_msg
177 ( p_token_an => p_api_name,
178 p_token_p => p_parameter_name_ln||', '||p_parameter_name_fn );
179 ELSE
180 cs_core_util.add_duplicate_value_msg
181 ( p_token_an => p_api_name,
182 p_token_p => p_parameter_name_ln );
183 END IF;
184 END Convert_Contact_To_ID;
185
186 ------------------------------------------------------------------------------
187 -- Procedure : Convert_Customer_To_ID
188 ------------------------------------------------------------------------------
189
190 PROCEDURE Convert_Customer_To_ID
191 ( p_api_name IN VARCHAR2,
192 p_parameter_name_nb IN VARCHAR2,
193 p_parameter_name_n IN VARCHAR2,
194 p_customer_number IN VARCHAR2 DEFAULT fnd_api.g_miss_char,
195 p_customer_name IN VARCHAR2 DEFAULT fnd_api.g_miss_char,
196 x_customer_id OUT NOCOPY NUMBER,
197 x_return_status OUT NOCOPY VARCHAR2 )
198 IS
199 BEGIN
200 x_return_status := fnd_api.g_ret_sts_success;
201
202 IF p_customer_number <> fnd_api.g_miss_char THEN
203 BEGIN
204 SELECT party_id INTO x_customer_id
205 FROM hz_parties
206 WHERE party_number = p_customer_number;
207 EXCEPTION
208 WHEN no_data_found THEN
209 x_return_status := fnd_api.g_ret_sts_error;
210 cs_core_util.add_invalid_argument_msg(p_api_name,
211 p_customer_number,
212 p_parameter_name_nb);
213 END;
214 IF p_customer_name <> fnd_api.g_miss_char THEN
215 cs_core_util.add_param_ignored_msg(p_api_name, p_parameter_name_n);
216 END IF;
217 ELSE
218 BEGIN
219 SELECT party_id INTO x_customer_id
220 FROM hz_parties
221 WHERE party_name = p_customer_name;
222 EXCEPTION
223 WHEN no_data_found THEN
224 x_return_status := fnd_api.g_ret_sts_error;
225 cs_core_util.add_invalid_argument_msg(p_api_name, p_customer_name,
226 p_parameter_name_n);
227 WHEN too_many_rows THEN
228 x_return_status := fnd_api.g_ret_sts_error;
229 cs_core_util.add_duplicate_value_msg(p_api_name,
230 p_parameter_name_n);
231 END;
232 END IF;
233 END Convert_Customer_To_ID;
234
235 ------------------------------------------------------------------------------
236 -- Procedure : Convert_Customer_To_Name
237 ------------------------------------------------------------------------------
238
239 PROCEDURE Convert_Customer_To_Name
240 ( p_api_name IN VARCHAR2,
241 p_parameter_name IN VARCHAR2,
242 p_customer_id IN NUMBER,
243 x_customer_name OUT NOCOPY VARCHAR2,
244 x_return_status OUT NOCOPY VARCHAR2 )
245 IS
246 BEGIN
247 x_return_status := fnd_api.g_ret_sts_success;
248
249 -- Fetch name from database.
250 SELECT party_name INTO x_customer_name
251 FROM hz_parties
252 WHERE party_id = p_customer_id;
253
254 EXCEPTION
255 WHEN no_data_found THEN
256 x_return_status := fnd_api.g_ret_sts_error;
257 add_invalid_argument_msg(p_api_name, To_char(p_customer_id),
258 p_parameter_name);
259 END Convert_Customer_To_Name;
260
261 ------------------------------------------------------------------------------
262 -- Procedure : Convert_Employee_To_ID
263 ------------------------------------------------------------------------------
264
265 PROCEDURE Convert_Employee_To_ID
266 ( p_api_name IN VARCHAR2,
267 p_parameter_name_nb IN VARCHAR2,
268 p_parameter_name_n IN VARCHAR2,
269 p_employee_number IN VARCHAR2 DEFAULT fnd_api.g_miss_char,
270 p_employee_name IN VARCHAR2 DEFAULT fnd_api.g_miss_char,
271 x_employee_id OUT NOCOPY NUMBER,
272 x_return_status OUT NOCOPY VARCHAR2 )
273 IS
274 BEGIN
275 x_return_status := fnd_api.g_ret_sts_success;
276
277 IF p_employee_number <> fnd_api.g_miss_char THEN
278 BEGIN
279 SELECT person_id INTO x_employee_id
280 FROM per_people_x
281 WHERE employee_number = p_employee_number;
282 EXCEPTION
283 WHEN no_data_found THEN
284 x_return_status := fnd_api.g_ret_sts_error;
285 cs_core_util.add_invalid_argument_msg(p_api_name,
286 p_employee_number,
287 p_parameter_name_nb);
288 WHEN too_many_rows THEN
289 x_return_status := fnd_api.g_ret_sts_error;
290 cs_core_util.add_duplicate_value_msg(p_api_name,
291 p_parameter_name_nb);
292 END;
293 IF p_employee_name <> fnd_api.g_miss_char THEN
294 cs_core_util.add_param_ignored_msg(p_api_name, p_parameter_name_n);
295 END IF;
296 ELSE
297 BEGIN
298 SELECT person_id INTO x_employee_id
299 FROM per_people_x
300 WHERE full_name = p_employee_name;
301 EXCEPTION
302 WHEN no_data_found THEN
303 x_return_status := fnd_api.g_ret_sts_error;
304 cs_core_util.add_invalid_argument_msg(p_api_name, p_employee_name,
305 p_parameter_name_n);
306 WHEN too_many_rows THEN
307 x_return_status := fnd_api.g_ret_sts_error;
308 cs_core_util.add_duplicate_value_msg(p_api_name,
309 p_parameter_name_n);
310 END;
311 END IF;
312 END Convert_Employee_To_ID;
313
314 ------------------------------------------------------------------------------
315 -- Procedure : Convert_Lookup_To_Code
316 ------------------------------------------------------------------------------
317
318 PROCEDURE Convert_Lookup_To_Code
319 ( p_api_name IN VARCHAR2,
320 p_parameter_name IN VARCHAR2,
321 p_meaning IN VARCHAR2,
322 p_lookup_type IN VARCHAR2,
323 x_lookup_code OUT NOCOPY VARCHAR2,
324 x_return_status OUT NOCOPY VARCHAR2 )
325 IS
326 BEGIN
327 x_return_status := fnd_api.g_ret_sts_success;
328
329 SELECT lookup_code INTO x_lookup_code
330 FROM cs_lookups
331 WHERE lookup_type = p_lookup_type
332 AND meaning = p_meaning;
333 EXCEPTION
334 WHEN no_data_found THEN
335 x_return_status := fnd_api.g_ret_sts_error;
336 cs_core_util.add_invalid_argument_msg(p_api_name, p_meaning,
337 p_parameter_name);
338 END Convert_Lookup_To_Code;
339
340 ------------------------------------------------------------------------------
341 -- Procedure : Convert_Org_To_ID
342 ------------------------------------------------------------------------------
343
344 PROCEDURE Convert_Org_To_ID
345 ( p_api_name IN VARCHAR2,
346 p_parameter_name IN VARCHAR2,
347 p_org_name IN VARCHAR2,
348 x_org_id OUT NOCOPY NUMBER,
349 x_return_status OUT NOCOPY VARCHAR2 )
350 IS
351 BEGIN
352 x_return_status := fnd_api.g_ret_sts_success;
353
354 SELECT organization_id INTO x_org_id
355 FROM hr_operating_units
356 WHERE name = p_org_name;
357 EXCEPTION
358 WHEN no_data_found THEN
359 x_return_status := fnd_api.g_ret_sts_error;
360 cs_core_util.add_invalid_argument_msg(p_api_name, p_org_name,
361 p_parameter_name);
362 WHEN too_many_rows THEN
363 x_return_status := fnd_api.g_ret_sts_error;
364 cs_core_util.add_duplicate_value_msg(p_api_name, p_parameter_name);
365 END Convert_Org_To_ID;
366
367 ------------------------------------------------------------------------------
368 -- Procedure : Default_Common_Attributes
369 ------------------------------------------------------------------------------
370 /*
371 PROCEDURE Default_Common_Attributes
372 ( p_api_name IN VARCHAR2,
373 p_resp_appl_id IN OUT NUMBER,
374 p_resp_id IN OUT NUMBER,
375 p_user_id IN OUT NUMBER,
376 p_login_id IN OUT NUMBER,
377 p_org_id IN OUT NUMBER,
378 p_inventory_org_id IN OUT NUMBER)
379 IS
380 BEGIN
381 -------------------------------------------------------------------------
382 -- FND_GLOBAL.RESP_APPL_ID, FND_GLOBAL.RESP_ID, and FND_GLOBAL.LOGIN_ID
383 -- returns -1 by default, which is an invalid value. FND_GLOBAL.USER_ID
384 -- is okay, because user ID -1 corresponds to user 'ANONYMOUS.' If
385 -- FND_GLOBAL returns -1, the variables are set to NULL instead.
386 -------------------------------------------------------------------------
387 IF p_resp_appl_id = fnd_api.g_miss_num THEN
388 IF fnd_global.resp_appl_id <> -1 THEN
389 p_resp_appl_id := fnd_global.resp_appl_id;
390 ELSE
391 p_resp_appl_id := NULL;
392 END IF;
393 END IF;
394
395 IF p_resp_id = fnd_api.g_miss_num THEN
396 IF fnd_global.resp_id <> -1 THEN
397 p_resp_id := fnd_global.resp_id;
398 ELSE
399 p_resp_id := NULL;
400 END IF;
401 END IF;
402
403 IF p_user_id = fnd_api.g_miss_num THEN
404 p_user_id := fnd_global.user_id;
405 END IF;
406
407 IF p_login_id = fnd_api.g_miss_num THEN
408 IF fnd_global.login_id NOT IN (-1,0) THEN
409 p_login_id := fnd_global.login_id;
410 ELSE
411 p_login_id := NULL;
412 END IF;
413 END IF;
414
415 --
416 -- If Multi-Org is enabled, get the default from the session variable
417 -- CLIENT_INFO. If it is not set, get the default from the ORG_ID profile
418 -- option.
419 --
420 IF cs_core_util.is_multiorg_enabled THEN
421 IF p_org_id = fnd_api.g_miss_num THEN
422 SELECT To_number(Decode(substrb(userenv('CLIENT_INFO'),1,1), ' ',
423 NULL, substrb(userenv('CLIENT_INFO'),1,10)))
424 INTO p_org_id
425 FROM dual;
426 IF p_org_id IS NULL THEN
427 p_org_id := To_number(fnd_profile.value_specific('ORG_ID',
428 p_user_id,
429 p_resp_id,
430 p_resp_appl_id));
431 END IF;
432 END IF;
433 END IF;
434
435 IF p_inventory_org_id = fnd_api.g_miss_num THEN
436 p_inventory_org_id :=
437 To_number(fnd_profile.value_specific('SO_ORGANIZATION_ID', p_user_id,
438 p_resp_id, p_resp_appl_id));
439 END IF;
440 END Default_Common_Attributes;
441 */
442 ------------------------------------------------------------------------------
443 -- Function : Is_MultiOrg_Enabled
444 ------------------------------------------------------------------------------
445
446 FUNCTION Is_MultiOrg_Enabled RETURN BOOLEAN IS
447 l_multiorg_enabled VARCHAR2(1);
448 BEGIN
449 SELECT multi_org_flag INTO l_multiorg_enabled
450 FROM fnd_product_groups;
451
452 IF l_multiorg_enabled = 'Y' THEN
453 RETURN TRUE;
454 ELSE
455 RETURN FALSE;
456 END IF;
457 END Is_MultiOrg_Enabled;
458
459 ------------------------------------------------------------------------------
460 -- Procedure : Trunc_String_Length
461 ------------------------------------------------------------------------------
462
463 PROCEDURE Trunc_String_length
464 ( p_api_name IN VARCHAR2,
465 p_parameter_name IN VARCHAR2,
466 p_str IN VARCHAR2,
467 p_len IN NUMBER,
468 x_str OUT NOCOPY VARCHAR2 )
469 IS
470 l_len NUMBER;
471 BEGIN
472 l_len := lengthb(p_str);
473 IF (l_len > p_len) THEN
474 IF fnd_msg_pub.check_msg_level(fnd_msg_pub.g_msg_lvl_success) THEN
475 fnd_message.set_name('CS', 'CS_API_ALL_VALUE_TRUNCATED');
476 fnd_message.set_token('API_NAME', p_api_name);
477 fnd_message.set_token('TRUNCATED_PARAM', p_parameter_name);
478 fnd_message.set_token('VAL_LEN', l_len);
479 fnd_message.set_token('DB_LEN', p_len);
480 fnd_msg_pub.add;
481 END IF;
482 x_str := substrb(p_str, 1, p_len);
483 ELSE
484 x_str := p_str;
485 END IF;
486 END Trunc_String_Length;
487
488 ------------------------------------------------------------------------------
489 -- Procedure : Validate_Bill_To_Site
490 ------------------------------------------------------------------------------
491
492 -- -----------------------------------------------------------------------------
493 -- Modification History
494 -- Date Name Desc
495 -- -------- -------- -----------------------------------------------------------
496 -- 08/08/05 smisra bug 4532643
497 -- The procedure is being stubbed as it is not used
498 -- -----------------------------------------------------------------------------
499 PROCEDURE Validate_Bill_To_Site
500 ( p_api_name IN VARCHAR2,
501 p_parameter_name IN VARCHAR2,
502 p_bill_to_site_id IN NUMBER,
503 p_customer_id IN NUMBER,
504 p_org_id IN NUMBER := NULL,
505 x_bill_to_customer_id OUT NOCOPY NUMBER,
506 x_return_status OUT NOCOPY VARCHAR2 )
507 IS
508 BEGIN
509 x_return_status := fnd_api.g_ret_sts_success;
510 /*****
511 -- Find the customer of the given site
512 SELECT a.customer_id INTO x_bill_to_customer_id
513 FROM ra_site_uses_all su, ra_addresses_all a
514 WHERE Nvl(su.org_id,-99) = Decode(su.org_id,NULL,-99,p_org_id)
515 AND su.site_use_id = p_bill_to_site_id
516 AND su.site_use_code = 'BILL_TO'
517 AND su.address_id = a.address_id
518 -- Verify that the bill-to site customer is the same as the customer
519 AND ( a.customer_id = p_customer_id
520 -- or one of its related customers
521 OR a.customer_id IN
522 ( SELECT ra.related_customer_id
523 FROM ra_customer_relationships_all ra
524 WHERE ra.customer_id = p_customer_id
525 AND ra.status = 'A'
526 AND Nvl(ra.org_id,-99) = Decode(ra.org_id,NULL,-99,p_org_id) ) );
527 *****/
528 EXCEPTION
529 WHEN no_data_found THEN
530 x_return_status := fnd_api.g_ret_sts_error;
531 add_invalid_argument_msg(p_api_name, To_char(p_bill_to_site_id),
532 p_parameter_name);
533 END Validate_Bill_To_Site;
534
535 ------------------------------------------------------------------------------
536 -- Procedure : Validate_Comment
537 ------------------------------------------------------------------------------
538 /*** bug 4887572 smisra. Removed this procedure
539 PROCEDURE Validate_Comment
540 ( p_api_name IN VARCHAR2,
541 p_parameter_name IN VARCHAR2,
542 p_comment_id IN NUMBER,
543 x_return_status OUT NOCOPY VARCHAR2 )
544 IS
545 l_dummy VARCHAR2(1);
546 BEGIN
547 x_return_status := fnd_api.g_ret_sts_success;
548
549 -- Validate against cs_comments, which contains all notes across
550 -- multiple source object types
551 SELECT 'x' INTO l_dummy
552 FROM cs_comments
553 WHERE comment_id = p_comment_id;
554 EXCEPTION
555 WHEN no_data_found THEN
556 x_return_status := fnd_api.g_ret_sts_error;
557 cs_core_util.add_invalid_argument_msg(p_api_name, p_comment_id,
558 p_parameter_name);
559 END Validate_Comment;
560 **********************************/
561 ------------------------------------------------------------------------------
562 -- Procedure : Validate_Customer
563 ------------------------------------------------------------------------------
564
565 PROCEDURE Validate_Customer
566 ( p_api_name IN VARCHAR2,
567 p_parameter_name IN VARCHAR2,
568 p_customer_id IN NUMBER,
569 x_return_status OUT NOCOPY VARCHAR2 )
570 IS
571 l_dummy VARCHAR2(1);
572 BEGIN
573 x_return_status := fnd_api.g_ret_sts_success;
574 SELECT 'x' INTO l_dummy
575 FROM hz_parties
576 WHERE party_id = p_customer_id
577 AND status = 'A';
578 EXCEPTION
579 WHEN no_data_found THEN
580 x_return_status := fnd_api.g_ret_sts_error;
581 add_invalid_argument_msg(p_api_name, To_char(p_customer_id),
582 p_parameter_name);
583 END Validate_Customer;
584
585 ------------------------------------------------------------------------------
586 -- Procedure : Validate_Customer_Contact
587 ------------------------------------------------------------------------------
588
589 -- -----------------------------------------------------------------------------
590 -- Modification History
591 -- Date Name Desc
592 -- -------- -------- -----------------------------------------------------------
593 -- 08/08/05 smisra bug 4532643
594 -- The procedure is being stubbed as it is not used
595 -- -----------------------------------------------------------------------------
596 PROCEDURE Validate_Customer_Contact
597 ( p_api_name IN VARCHAR2,
598 p_parameter_name IN VARCHAR2,
599 p_customer_contact_id IN NUMBER,
600 p_customer_id IN NUMBER,
601 p_org_id IN NUMBER := NULL,
602 x_return_status OUT NOCOPY VARCHAR2 )
603 IS
604 l_dummy VARCHAR2(1);
605 BEGIN
606 x_return_status := fnd_api.g_ret_sts_success;
607 /********
608 SELECT 'x' INTO l_dummy
609 FROM ra_contacts
610 WHERE contact_id = p_customer_contact_id
611 AND status = 'A'
612 AND customer_id IN
613 ( SELECT p_customer_id
614 FROM dual
615 UNION
616 SELECT related_customer_id
617 FROM ra_customer_relationships_all
618 WHERE customer_id = p_customer_id
619 AND status = 'A'
620 AND Nvl(org_id,-99) = Decode(org_id,NULL,-99,p_org_id) );
621 *****/
622 EXCEPTION
623 WHEN no_data_found THEN
624 x_return_status := fnd_api.g_ret_sts_error;
625 add_invalid_argument_msg(p_api_name, To_char(p_customer_contact_id),
626 p_parameter_name);
627 END Validate_Customer_Contact;
628
629 ------------------------------------------------------------------------------
630 -- Procedure : Validate_Desc_Flex
631 ------------------------------------------------------------------------------
632
633 PROCEDURE Validate_Desc_Flex
634 ( p_api_name IN VARCHAR2,
635 p_appl_short_name IN VARCHAR2 DEFAULT 'CS',
636 p_desc_flex_name IN VARCHAR2,
637 p_column_name1 IN VARCHAR2,
638 p_column_name2 IN VARCHAR2,
639 p_column_name3 IN VARCHAR2,
640 p_column_name4 IN VARCHAR2,
641 p_column_name5 IN VARCHAR2,
642 p_column_name6 IN VARCHAR2,
643 p_column_name7 IN VARCHAR2,
644 p_column_name8 IN VARCHAR2,
645 p_column_name9 IN VARCHAR2,
646 p_column_name10 IN VARCHAR2,
647 p_column_name11 IN VARCHAR2,
648 p_column_name12 IN VARCHAR2,
649 p_column_name13 IN VARCHAR2,
650 p_column_name14 IN VARCHAR2,
651 p_column_name15 IN VARCHAR2,
652 p_column_value1 IN VARCHAR2,
653 p_column_value2 IN VARCHAR2,
654 p_column_value3 IN VARCHAR2,
655 p_column_value4 IN VARCHAR2,
656 p_column_value5 IN VARCHAR2,
657 p_column_value6 IN VARCHAR2,
658 p_column_value7 IN VARCHAR2,
659 p_column_value8 IN VARCHAR2,
660 p_column_value9 IN VARCHAR2,
661 p_column_value10 IN VARCHAR2,
662 p_column_value11 IN VARCHAR2,
663 p_column_value12 IN VARCHAR2,
664 p_column_value13 IN VARCHAR2,
665 p_column_value14 IN VARCHAR2,
666 p_column_value15 IN VARCHAR2,
667 p_context_value IN VARCHAR2,
668 p_resp_appl_id IN NUMBER := NULL,
669 p_resp_id IN NUMBER := NULL,
670 x_return_status OUT NOCOPY VARCHAR2 )
671 IS
672 l_error_message VARCHAR2(2000);
673 BEGIN
674 x_return_status := fnd_api.g_ret_sts_success;
675
676 fnd_flex_descval.set_column_value(p_column_name1, p_column_value1);
677 fnd_flex_descval.set_column_value(p_column_name2, p_column_value2);
678 fnd_flex_descval.set_column_value(p_column_name3, p_column_value3);
679 fnd_flex_descval.set_column_value(p_column_name4, p_column_value4);
680 fnd_flex_descval.set_column_value(p_column_name5, p_column_value5);
681 fnd_flex_descval.set_column_value(p_column_name6, p_column_value6);
682 fnd_flex_descval.set_column_value(p_column_name7, p_column_value7);
683 fnd_flex_descval.set_column_value(p_column_name8, p_column_value8);
684 fnd_flex_descval.set_column_value(p_column_name9, p_column_value9);
685 fnd_flex_descval.set_column_value(p_column_name10, p_column_value10);
686 fnd_flex_descval.set_column_value(p_column_name11, p_column_value11);
687 fnd_flex_descval.set_column_value(p_column_name12, p_column_value12);
688 fnd_flex_descval.set_column_value(p_column_name13, p_column_value13);
689 fnd_flex_descval.set_column_value(p_column_name14, p_column_value14);
690 fnd_flex_descval.set_column_value(p_column_name15, p_column_value15);
691 fnd_flex_descval.set_context_value(p_context_value);
692 IF NOT fnd_flex_descval.validate_desccols
693 ( appl_short_name => p_appl_short_name,
694 desc_flex_name => p_desc_flex_name,
695 resp_appl_id => p_resp_appl_id,
696 resp_id => p_resp_id ) THEN
697 l_error_message := fnd_flex_descval.error_message;
698 add_desc_flex_msg(p_api_name, l_error_message);
699 x_return_status := fnd_api.g_ret_sts_error;
700 END IF;
701 END Validate_Desc_Flex;
702
703 ------------------------------------------------------------------------------
704 -- Procedure : Validate_Price_Attribs
705 ------------------------------------------------------------------------------
706
707 PROCEDURE Validate_Price_Attribs
708 ( p_api_name IN VARCHAR2,
709 p_appl_short_name IN VARCHAR2 DEFAULT 'CS',
710 p_desc_flex_name IN VARCHAR2,
711 p_column_name1 IN VARCHAR2,
712 p_column_name2 IN VARCHAR2,
713 p_column_name3 IN VARCHAR2,
714 p_column_name4 IN VARCHAR2,
715 p_column_name5 IN VARCHAR2,
716 p_column_name6 IN VARCHAR2,
717 p_column_name7 IN VARCHAR2,
718 p_column_name8 IN VARCHAR2,
719 p_column_name9 IN VARCHAR2,
720 p_column_name10 IN VARCHAR2,
721 p_column_name11 IN VARCHAR2,
722 p_column_name12 IN VARCHAR2,
723 p_column_name13 IN VARCHAR2,
724 p_column_name14 IN VARCHAR2,
725 p_column_name15 IN VARCHAR2,
726 p_column_name16 IN VARCHAR2,
727 p_column_name17 IN VARCHAR2,
728 p_column_name18 IN VARCHAR2,
729 p_column_name19 IN VARCHAR2,
730 p_column_name20 IN VARCHAR2,
731 p_column_name21 IN VARCHAR2,
732 p_column_name22 IN VARCHAR2,
733 p_column_name23 IN VARCHAR2,
734 p_column_name24 IN VARCHAR2,
735 p_column_name25 IN VARCHAR2,
736 p_column_name26 IN VARCHAR2,
737 p_column_name27 IN VARCHAR2,
738 p_column_name28 IN VARCHAR2,
739 p_column_name29 IN VARCHAR2,
740 p_column_name30 IN VARCHAR2,
741 p_column_name31 IN VARCHAR2,
742 p_column_name32 IN VARCHAR2,
743 p_column_name33 IN VARCHAR2,
744 p_column_name34 IN VARCHAR2,
745 p_column_name35 IN VARCHAR2,
746 p_column_name36 IN VARCHAR2,
747 p_column_name37 IN VARCHAR2,
748 p_column_name38 IN VARCHAR2,
749 p_column_name39 IN VARCHAR2,
750 p_column_name40 IN VARCHAR2,
751 p_column_name41 IN VARCHAR2,
752 p_column_name42 IN VARCHAR2,
753 p_column_name43 IN VARCHAR2,
754 p_column_name44 IN VARCHAR2,
755 p_column_name45 IN VARCHAR2,
756 p_column_name46 IN VARCHAR2,
757 p_column_name47 IN VARCHAR2,
758 p_column_name48 IN VARCHAR2,
759 p_column_name49 IN VARCHAR2,
760 p_column_name50 IN VARCHAR2,
761 p_column_name51 IN VARCHAR2,
762 p_column_name52 IN VARCHAR2,
763 p_column_name53 IN VARCHAR2,
764 p_column_name54 IN VARCHAR2,
765 p_column_name55 IN VARCHAR2,
766 p_column_name56 IN VARCHAR2,
767 p_column_name57 IN VARCHAR2,
768 p_column_name58 IN VARCHAR2,
769 p_column_name59 IN VARCHAR2,
770 p_column_name60 IN VARCHAR2,
771 p_column_name61 IN VARCHAR2,
772 p_column_name62 IN VARCHAR2,
773 p_column_name63 IN VARCHAR2,
774 p_column_name64 IN VARCHAR2,
775 p_column_name65 IN VARCHAR2,
776 p_column_name66 IN VARCHAR2,
777 p_column_name67 IN VARCHAR2,
778 p_column_name68 IN VARCHAR2,
779 p_column_name69 IN VARCHAR2,
780 p_column_name70 IN VARCHAR2,
781 p_column_name71 IN VARCHAR2,
782 p_column_name72 IN VARCHAR2,
783 p_column_name73 IN VARCHAR2,
784 p_column_name74 IN VARCHAR2,
785 p_column_name75 IN VARCHAR2,
786 p_column_name76 IN VARCHAR2,
787 p_column_name77 IN VARCHAR2,
788 p_column_name78 IN VARCHAR2,
789 p_column_name79 IN VARCHAR2,
790 p_column_name80 IN VARCHAR2,
791 p_column_name81 IN VARCHAR2,
792 p_column_name82 IN VARCHAR2,
793 p_column_name83 IN VARCHAR2,
794 p_column_name84 IN VARCHAR2,
795 p_column_name85 IN VARCHAR2,
796 p_column_name86 IN VARCHAR2,
797 p_column_name87 IN VARCHAR2,
798 p_column_name88 IN VARCHAR2,
799 p_column_name89 IN VARCHAR2,
800 p_column_name90 IN VARCHAR2,
801 p_column_name91 IN VARCHAR2,
802 p_column_name92 IN VARCHAR2,
803 p_column_name93 IN VARCHAR2,
804 p_column_name94 IN VARCHAR2,
805 p_column_name95 IN VARCHAR2,
806 p_column_name96 IN VARCHAR2,
807 p_column_name97 IN VARCHAR2,
808 p_column_name98 IN VARCHAR2,
809 p_column_name99 IN VARCHAR2,
810 p_column_name100 IN VARCHAR2,
811 p_column_value1 IN VARCHAR2,
812 p_column_value2 IN VARCHAR2,
813 p_column_value3 IN VARCHAR2,
814 p_column_value4 IN VARCHAR2,
815 p_column_value5 IN VARCHAR2,
816 p_column_value6 IN VARCHAR2,
817 p_column_value7 IN VARCHAR2,
818 p_column_value8 IN VARCHAR2,
819 p_column_value9 IN VARCHAR2,
820 p_column_value10 IN VARCHAR2,
821 p_column_value11 IN VARCHAR2,
822 p_column_value12 IN VARCHAR2,
823 p_column_value13 IN VARCHAR2,
824 p_column_value14 IN VARCHAR2,
825 p_column_value15 IN VARCHAR2,
826 p_column_value16 IN VARCHAR2,
827 p_column_value17 IN VARCHAR2,
828 p_column_value18 IN VARCHAR2,
829 p_column_value19 IN VARCHAR2,
830 p_column_value20 IN VARCHAR2,
831 p_column_value21 IN VARCHAR2,
832 p_column_value22 IN VARCHAR2,
833 p_column_value23 IN VARCHAR2,
834 p_column_value24 IN VARCHAR2,
835 p_column_value25 IN VARCHAR2,
836 p_column_value26 IN VARCHAR2,
837 p_column_value27 IN VARCHAR2,
838 p_column_value28 IN VARCHAR2,
839 p_column_value29 IN VARCHAR2,
840 p_column_value30 IN VARCHAR2,
841 p_column_value31 IN VARCHAR2,
842 p_column_value32 IN VARCHAR2,
843 p_column_value33 IN VARCHAR2,
844 p_column_value34 IN VARCHAR2,
845 p_column_value35 IN VARCHAR2,
846 p_column_value36 IN VARCHAR2,
847 p_column_value37 IN VARCHAR2,
848 p_column_value38 IN VARCHAR2,
849 p_column_value39 IN VARCHAR2,
850 p_column_value40 IN VARCHAR2,
851 p_column_value41 IN VARCHAR2,
852 p_column_value42 IN VARCHAR2,
853 p_column_value43 IN VARCHAR2,
854 p_column_value44 IN VARCHAR2,
855 p_column_value45 IN VARCHAR2,
856 p_column_value46 IN VARCHAR2,
857 p_column_value47 IN VARCHAR2,
858 p_column_value48 IN VARCHAR2,
859 p_column_value49 IN VARCHAR2,
860 p_column_value50 IN VARCHAR2,
861 p_column_value51 IN VARCHAR2,
862 p_column_value52 IN VARCHAR2,
863 p_column_value53 IN VARCHAR2,
864 p_column_value54 IN VARCHAR2,
865 p_column_value55 IN VARCHAR2,
866 p_column_value56 IN VARCHAR2,
867 p_column_value57 IN VARCHAR2,
868 p_column_value58 IN VARCHAR2,
869 p_column_value59 IN VARCHAR2,
870 p_column_value60 IN VARCHAR2,
871 p_column_value61 IN VARCHAR2,
872 p_column_value62 IN VARCHAR2,
873 p_column_value63 IN VARCHAR2,
874 p_column_value64 IN VARCHAR2,
875 p_column_value65 IN VARCHAR2,
876 p_column_value66 IN VARCHAR2,
877 p_column_value67 IN VARCHAR2,
878 p_column_value68 IN VARCHAR2,
879 p_column_value69 IN VARCHAR2,
880 p_column_value70 IN VARCHAR2,
881 p_column_value71 IN VARCHAR2,
882 p_column_value72 IN VARCHAR2,
883 p_column_value73 IN VARCHAR2,
884 p_column_value74 IN VARCHAR2,
885 p_column_value75 IN VARCHAR2,
886 p_column_value76 IN VARCHAR2,
887 p_column_value77 IN VARCHAR2,
888 p_column_value78 IN VARCHAR2,
889 p_column_value79 IN VARCHAR2,
890 p_column_value80 IN VARCHAR2,
891 p_column_value81 IN VARCHAR2,
892 p_column_value82 IN VARCHAR2,
893 p_column_value83 IN VARCHAR2,
894 p_column_value84 IN VARCHAR2,
895 p_column_value85 IN VARCHAR2,
896 p_column_value86 IN VARCHAR2,
897 p_column_value87 IN VARCHAR2,
898 p_column_value88 IN VARCHAR2,
899 p_column_value89 IN VARCHAR2,
900 p_column_value90 IN VARCHAR2,
901 p_column_value91 IN VARCHAR2,
902 p_column_value92 IN VARCHAR2,
903 p_column_value93 IN VARCHAR2,
904 p_column_value94 IN VARCHAR2,
905 p_column_value95 IN VARCHAR2,
906 p_column_value96 IN VARCHAR2,
907 p_column_value97 IN VARCHAR2,
908 p_column_value98 IN VARCHAR2,
909 p_column_value99 IN VARCHAR2,
910 p_column_value100 IN VARCHAR2,
911 p_context_value IN VARCHAR2,
912 p_resp_appl_id IN NUMBER := NULL,
913 p_resp_id IN NUMBER := NULL,
914 x_return_status OUT NOCOPY VARCHAR2 )
915 IS
916 l_error_message VARCHAR2(2000);
917 BEGIN
918 x_return_status := fnd_api.g_ret_sts_success;
919 fnd_flex_descval.set_column_value(p_column_name1, p_column_value1);
920 fnd_flex_descval.set_column_value(p_column_name2, p_column_value2);
921 fnd_flex_descval.set_column_value(p_column_name3, p_column_value3);
922 fnd_flex_descval.set_column_value(p_column_name4, p_column_value4);
923 fnd_flex_descval.set_column_value(p_column_name5, p_column_value5);
924 fnd_flex_descval.set_column_value(p_column_name6, p_column_value6);
925 fnd_flex_descval.set_column_value(p_column_name7, p_column_value7);
926 fnd_flex_descval.set_column_value(p_column_name8, p_column_value8);
927 fnd_flex_descval.set_column_value(p_column_name9, p_column_value9);
928 fnd_flex_descval.set_column_value(p_column_name10, p_column_value10);
929 fnd_flex_descval.set_column_value(p_column_name11, p_column_value11);
930 fnd_flex_descval.set_column_value(p_column_name12, p_column_value12);
931 fnd_flex_descval.set_column_value(p_column_name13, p_column_value13);
932 fnd_flex_descval.set_column_value(p_column_name14, p_column_value14);
933 fnd_flex_descval.set_column_value(p_column_name15, p_column_value15);
934 fnd_flex_descval.set_column_value(p_column_name16, p_column_value16);
935 fnd_flex_descval.set_column_value(p_column_name17, p_column_value17);
936 fnd_flex_descval.set_column_value(p_column_name18, p_column_value18);
937 fnd_flex_descval.set_column_value(p_column_name19, p_column_value19);
938 fnd_flex_descval.set_column_value(p_column_name20, p_column_value20);
939 fnd_flex_descval.set_column_value(p_column_name21, p_column_value21);
940 fnd_flex_descval.set_column_value(p_column_name22, p_column_value22);
941 fnd_flex_descval.set_column_value(p_column_name23, p_column_value23);
942 fnd_flex_descval.set_column_value(p_column_name24, p_column_value24);
943 fnd_flex_descval.set_column_value(p_column_name25, p_column_value25);
944 fnd_flex_descval.set_column_value(p_column_name26, p_column_value26);
945 fnd_flex_descval.set_column_value(p_column_name27, p_column_value27);
946 fnd_flex_descval.set_column_value(p_column_name28, p_column_value28);
947 fnd_flex_descval.set_column_value(p_column_name29, p_column_value29);
948 fnd_flex_descval.set_column_value(p_column_name30, p_column_value30);
949 fnd_flex_descval.set_column_value(p_column_name31, p_column_value31);
950 fnd_flex_descval.set_column_value(p_column_name32, p_column_value32);
951 fnd_flex_descval.set_column_value(p_column_name33, p_column_value33);
952 fnd_flex_descval.set_column_value(p_column_name34, p_column_value34);
953 fnd_flex_descval.set_column_value(p_column_name35, p_column_value35);
954 fnd_flex_descval.set_column_value(p_column_name36, p_column_value36);
955 fnd_flex_descval.set_column_value(p_column_name37, p_column_value37);
956 fnd_flex_descval.set_column_value(p_column_name38, p_column_value38);
957 fnd_flex_descval.set_column_value(p_column_name39, p_column_value39);
958 fnd_flex_descval.set_column_value(p_column_name40, p_column_value40);
959 fnd_flex_descval.set_column_value(p_column_name41, p_column_value41);
960 fnd_flex_descval.set_column_value(p_column_name42, p_column_value42);
961 fnd_flex_descval.set_column_value(p_column_name43, p_column_value43);
962 fnd_flex_descval.set_column_value(p_column_name44, p_column_value44);
963 fnd_flex_descval.set_column_value(p_column_name45, p_column_value45);
964 fnd_flex_descval.set_column_value(p_column_name46, p_column_value46);
965 fnd_flex_descval.set_column_value(p_column_name47, p_column_value47);
966 fnd_flex_descval.set_column_value(p_column_name48, p_column_value48);
967 fnd_flex_descval.set_column_value(p_column_name49, p_column_value49);
968 fnd_flex_descval.set_column_value(p_column_name50, p_column_value50);
969 fnd_flex_descval.set_column_value(p_column_name51, p_column_value51);
970 fnd_flex_descval.set_column_value(p_column_name52, p_column_value52);
971 fnd_flex_descval.set_column_value(p_column_name53, p_column_value53);
972 fnd_flex_descval.set_column_value(p_column_name54, p_column_value54);
973 fnd_flex_descval.set_column_value(p_column_name55, p_column_value55);
974 fnd_flex_descval.set_column_value(p_column_name56, p_column_value56);
975 fnd_flex_descval.set_column_value(p_column_name57, p_column_value57);
976 fnd_flex_descval.set_column_value(p_column_name58, p_column_value58);
977 fnd_flex_descval.set_column_value(p_column_name59, p_column_value59);
978 fnd_flex_descval.set_column_value(p_column_name60, p_column_value60);
979 fnd_flex_descval.set_column_value(p_column_name61, p_column_value61);
980 fnd_flex_descval.set_column_value(p_column_name62, p_column_value62);
981 fnd_flex_descval.set_column_value(p_column_name63, p_column_value63);
982 fnd_flex_descval.set_column_value(p_column_name64, p_column_value64);
983 fnd_flex_descval.set_column_value(p_column_name65, p_column_value65);
984 fnd_flex_descval.set_column_value(p_column_name66, p_column_value66);
985 fnd_flex_descval.set_column_value(p_column_name67, p_column_value67);
986 fnd_flex_descval.set_column_value(p_column_name68, p_column_value68);
987 fnd_flex_descval.set_column_value(p_column_name69, p_column_value69);
988 fnd_flex_descval.set_column_value(p_column_name70, p_column_value70);
989 fnd_flex_descval.set_column_value(p_column_name71, p_column_value71);
990 fnd_flex_descval.set_column_value(p_column_name72, p_column_value72);
991 fnd_flex_descval.set_column_value(p_column_name73, p_column_value73);
992 fnd_flex_descval.set_column_value(p_column_name74, p_column_value74);
993 fnd_flex_descval.set_column_value(p_column_name75, p_column_value75);
994 fnd_flex_descval.set_column_value(p_column_name76, p_column_value76);
995 fnd_flex_descval.set_column_value(p_column_name77, p_column_value77);
996 fnd_flex_descval.set_column_value(p_column_name78, p_column_value78);
997 fnd_flex_descval.set_column_value(p_column_name79, p_column_value79);
998 fnd_flex_descval.set_column_value(p_column_name80, p_column_value80);
999 fnd_flex_descval.set_column_value(p_column_name81, p_column_value81);
1000 fnd_flex_descval.set_column_value(p_column_name82, p_column_value82);
1001 fnd_flex_descval.set_column_value(p_column_name83, p_column_value83);
1002 fnd_flex_descval.set_column_value(p_column_name84, p_column_value84);
1003 fnd_flex_descval.set_column_value(p_column_name85, p_column_value85);
1004 fnd_flex_descval.set_column_value(p_column_name86, p_column_value86);
1005 fnd_flex_descval.set_column_value(p_column_name87, p_column_value87);
1006 fnd_flex_descval.set_column_value(p_column_name88, p_column_value88);
1007 fnd_flex_descval.set_column_value(p_column_name89, p_column_value89);
1008 fnd_flex_descval.set_column_value(p_column_name90, p_column_value90);
1009 fnd_flex_descval.set_column_value(p_column_name91, p_column_value91);
1010 fnd_flex_descval.set_column_value(p_column_name92, p_column_value92);
1011 fnd_flex_descval.set_column_value(p_column_name93, p_column_value93);
1012 fnd_flex_descval.set_column_value(p_column_name94, p_column_value94);
1013 fnd_flex_descval.set_column_value(p_column_name95, p_column_value95);
1014 fnd_flex_descval.set_column_value(p_column_name96, p_column_value96);
1015 fnd_flex_descval.set_column_value(p_column_name97, p_column_value97);
1016 fnd_flex_descval.set_column_value(p_column_name98, p_column_value98);
1017 fnd_flex_descval.set_column_value(p_column_name99, p_column_value99);
1018 fnd_flex_descval.set_column_value(p_column_name100, p_column_value100);
1019 fnd_flex_descval.set_context_value(p_context_value);
1020 IF NOT fnd_flex_descval.validate_desccols
1021 ( appl_short_name => p_appl_short_name,
1022 desc_flex_name => p_desc_flex_name,
1023 resp_appl_id => p_resp_appl_id,
1024 resp_id => p_resp_id ) THEN
1025 l_error_message := fnd_flex_descval.error_message;
1026 add_desc_flex_msg(p_api_name, l_error_message);
1027 x_return_status := fnd_api.g_ret_sts_error;
1028 END IF;
1029 END Validate_Price_Attribs;
1030
1031
1032
1033 -------------------------------------------------------------------------------
1034 -- Procedure : Validate_Employee
1035 -------------------------------------------------------------------------------
1036
1037 PROCEDURE Validate_Employee
1038 ( p_api_name IN VARCHAR2,
1039 p_parameter_name IN VARCHAR2,
1040 p_employee_id IN NUMBER,
1041 p_org_id IN NUMBER := NULL,
1042 x_return_status OUT NOCOPY VARCHAR2 )
1043 IS
1044 l_orig_org_id NUMBER;
1045 l_dummy VARCHAR2(1);
1046 BEGIN
1047 x_return_status := fnd_api.g_ret_sts_success;
1048
1049 -- Store the old value of the multi-org context
1050 SELECT To_number(Decode(substrb(userenv('CLIENT_INFO'),1,1), ' ', NULL,
1051 substrb(userenv('CLIENT_INFO'),1,10)))
1052 INTO l_orig_org_id
1053 FROM dual;
1054
1055 IF (p_org_id IS NOT NULL) THEN
1056 -- Set the multi-org context using p_org_id
1057 fnd_client_info.set_org_context(p_org_id);
1058 END IF;
1059
1060 -- Validate against hr_employees_current_v, which contains all active
1061 -- employees assigned to the business group stored in
1062 -- financials_system_parameters
1063
1064 SELECT 'X' INTO l_dummy
1065 FROM per_workforce_x hr
1066 WHERE hr.person_id = p_employee_id
1067 AND NVL(hr.termination_date,SYSDATE) >= SYSDATE ;
1068
1069 /**** commented and replaced by the sql statement above for bug # 5201278
1070 SELECT 'x' INTO l_dummy
1071 FROM hr_employees_current_v
1072 WHERE employee_id = p_employee_id;
1073 **********/
1074
1075 IF (p_org_id IS NOT NULL) THEN
1076 -- Restore the original multi-org context
1077 fnd_client_info.set_org_context(l_orig_org_id);
1078 END IF;
1079 EXCEPTION
1080 WHEN no_data_found THEN
1081 x_return_status := fnd_api.g_ret_sts_error;
1082 IF (p_org_id IS NOT NULL) THEN
1083 -- Restore the original multi-org context
1084 fnd_client_info.set_org_context(l_orig_org_id);
1085 END IF;
1086 add_invalid_argument_msg(p_api_name, p_employee_id, p_parameter_name);
1087 WHEN OTHERS THEN
1088 IF (p_org_id IS NOT NULL) THEN
1089 -- Restore the original multi-org context
1090 fnd_client_info.set_org_context(l_orig_org_id);
1091 END IF;
1092 -- Reraise the exception so the calling subprogram can handle it
1093 RAISE;
1094 END Validate_Employee;
1095
1096 ------------------------------------------------------------------------------
1097 -- Procedure : Validate_Later_Date
1098 ------------------------------------------------------------------------------
1099
1100 PROCEDURE Validate_Later_Date
1101 ( p_api_name IN VARCHAR2,
1102 p_parameter_name IN VARCHAR2,
1103 p_later_date IN DATE,
1104 p_earlier_date IN DATE,
1105 x_return_status OUT NOCOPY VARCHAR2 )
1106 IS
1107 BEGIN
1108 IF p_later_date >= p_earlier_date THEN
1109 x_return_status := fnd_api.g_ret_sts_success;
1110 ELSE
1111 x_return_status := fnd_api.g_ret_sts_error;
1112 add_invalid_argument_msg(p_api_name, To_char(p_later_date),
1113 p_parameter_name);
1114 END IF;
1115 END Validate_Later_Date;
1116
1117 ------------------------------------------------------------------------------
1118 -- Procedure : Validate_Lookup_Code
1119 ------------------------------------------------------------------------------
1120
1121 PROCEDURE Validate_Lookup_Code
1122 ( p_api_name IN VARCHAR2,
1123 p_parameter_name IN VARCHAR2,
1124 p_lookup_code IN VARCHAR2,
1125 p_lookup_type IN VARCHAR2,
1126 x_return_status OUT NOCOPY VARCHAR2 )
1127 IS
1128 l_dummy VARCHAR2(1);
1129 BEGIN
1130 x_return_status := fnd_api.g_ret_sts_success;
1131
1132 SELECT 'x' INTO l_dummy
1133 FROM cs_lookups
1134 WHERE lookup_code = p_lookup_code
1135 AND lookup_type = p_lookup_type
1136 AND enabled_flag = 'Y'
1137 AND Trunc(Sysdate) BETWEEN Trunc(Nvl(start_date_active, Sysdate))
1138 AND Trunc(Nvl(end_date_active, Sysdate));
1139 EXCEPTION
1140 WHEN no_data_found THEN
1141 x_return_status := fnd_api.g_ret_sts_error;
1142 add_invalid_argument_msg(p_api_name, p_lookup_code, p_parameter_name);
1143 END Validate_Lookup_Code;
1144
1145 ------------------------------------------------------------------------------
1146 -- Procedure : Validate_Operating_Unit
1147 ------------------------------------------------------------------------------
1148
1149 PROCEDURE Validate_Operating_Unit
1150 ( p_api_name IN VARCHAR2,
1151 p_parameter_name IN VARCHAR2,
1152 p_org_id IN NUMBER,
1153 x_return_status OUT NOCOPY VARCHAR2 )
1154 IS
1155 l_dummy VARCHAR2(1);
1156 BEGIN
1157 x_return_status := fnd_api.g_ret_sts_success;
1158
1159 SELECT 'x' INTO l_dummy
1160 FROM hr_operating_units
1161 WHERE organization_id = p_org_id;
1162 EXCEPTION
1163 WHEN no_data_found THEN
1164 x_return_status := fnd_api.g_ret_sts_error;
1165 cs_core_util.add_invalid_argument_msg(p_api_name, p_org_id,
1166 p_parameter_name);
1167 END Validate_Operating_Unit;
1168
1169 ------------------------------------------------------------------------------
1170 -- Procedure : Validate_Person
1171 ------------------------------------------------------------------------------
1172
1173 PROCEDURE Validate_Person
1174 ( p_api_name IN VARCHAR2,
1175 p_parameter_name IN VARCHAR2,
1176 p_person_id IN NUMBER,
1177 x_return_status OUT NOCOPY VARCHAR2 )
1178 IS
1179 l_dummy VARCHAR2(1);
1180 BEGIN
1181 x_return_status := fnd_api.g_ret_sts_success;
1182
1183 -- Validate against per_people_x, which contains all employees across
1184 -- multiple business groups
1185 SELECT 'x' INTO l_dummy
1186 FROM per_people_x p, per_assignments_x a
1187 WHERE a.person_id = p_person_id
1188 AND a.person_id = p.person_id
1189 AND a.assignment_type = 'E'
1190 AND a.primary_flag = 'Y'
1191 AND p.employee_number IS NOT NULL;
1192 EXCEPTION
1193 WHEN no_data_found THEN
1194 x_return_status := fnd_api.g_ret_sts_error;
1195 cs_core_util.add_invalid_argument_msg(p_api_name, p_person_id,
1196 p_parameter_name);
1197 END Validate_Person;
1198
1199 ------------------------------------------------------------------------------
1200 -- Procedure : Validate_Ship_To_Site
1201 ------------------------------------------------------------------------------
1202
1203 -- -----------------------------------------------------------------------------
1204 -- Modification History
1205 -- Date Name Desc
1206 -- -------- -------- -----------------------------------------------------------
1207 -- 08/08/05 smisra bug 4532643
1208 -- The procedure is being stubbed as it is not used
1209 -- -----------------------------------------------------------------------------
1210 PROCEDURE Validate_Ship_To_Site
1211 ( p_api_name IN VARCHAR2,
1212 p_parameter_name IN VARCHAR2,
1213 p_ship_to_site_use_id IN NUMBER,
1214 p_customer_id IN NUMBER,
1215 p_org_id IN NUMBER := NULL,
1216 x_ship_to_customer_id OUT NOCOPY NUMBER,
1217 x_return_status OUT NOCOPY VARCHAR2 )
1218 IS
1219 /****
1220 CURSOR l_ship_to_site_csr IS
1221 SELECT a.customer_id
1222 FROM ra_addresses_all a, ra_site_uses_all su
1223 WHERE su.site_use_id = p_ship_to_site_use_id
1224 AND su.site_use_code = 'SHIP_TO'
1225 AND su.status = 'A'
1226 AND Nvl(su.org_id,-99) = Decode(su.org_id,NULL,-99,p_org_id)
1227 AND a.address_id = su.address_id
1228 AND Nvl(a.org_id,-99) = Decode(a.org_id,NULL,-99,p_org_id)
1229 AND a.customer_id IN
1230 ( SELECT p_customer_id
1231 FROM dual
1232 UNION
1233 SELECT related_customer_id
1234 FROM ra_customer_relationships_all
1235 WHERE customer_id = p_customer_id
1236 AND status = 'A'
1237 AND Nvl(org_id,-99) = Decode(org_id,NULL,-99,p_org_id) );
1238 ******/
1239 BEGIN
1240 x_return_status := fnd_api.g_ret_sts_success;
1241
1242 /****
1243 OPEN l_ship_to_site_csr;
1244 FETCH l_ship_to_site_csr INTO x_ship_to_customer_id;
1245 IF l_ship_to_site_csr%notfound THEN
1246 x_return_status := fnd_api.g_ret_sts_error;
1247 add_invalid_argument_msg(p_api_name, To_char(p_ship_to_site_use_id),
1248 p_parameter_name);
1249 END IF;
1250 CLOSE l_ship_to_site_csr;
1251 EXCEPTION
1252 WHEN OTHERS THEN
1253 IF (l_ship_to_site_csr%isopen) THEN
1254 CLOSE l_ship_to_site_csr;
1255 END IF;
1256 RAISE;
1257 *****/
1258 END Validate_Ship_To_Site;
1259
1260 -------------------------------------------------------------------------------
1261 -- Procedure : Validate_Source_Object_ID
1262 -------------------------------------------------------------------------------
1263
1264 PROCEDURE Validate_Source_Object_ID
1265 ( p_api_name IN VARCHAR2,
1266 p_parameter_name IN VARCHAR2,
1267 p_source_object_id IN NUMBER,
1268 p_source_object_code IN VARCHAR2 := 'INC',
1269 p_org_id IN NUMBER := NULL,
1270 x_return_status OUT NOCOPY VARCHAR2 )
1271 IS
1272 l_dummy VARCHAR2(1);
1273 BEGIN
1274 x_return_status := fnd_api.g_ret_sts_success;
1275
1276 IF (p_source_object_code = 'INT') THEN
1277 SELECT 'x' INTO l_dummy
1278 FROM cs_interactions
1279 WHERE interaction_id = p_source_object_id
1280 AND Nvl(org_id, -99) = Decode(org_id, NULL, -99, p_org_id);
1281 ELSE
1282 SELECT 'x' INTO l_dummy
1283 FROM cs_incidents_all
1284 WHERE incident_id = p_source_object_id
1285 AND Nvl(org_id, -99) = Decode(org_id, NULL, -99, p_org_id);
1286 END IF;
1287 EXCEPTION
1288 WHEN no_data_found THEN
1289 x_return_status := fnd_api.g_ret_sts_error;
1290 add_invalid_argument_msg(p_api_name, p_source_object_id,
1291 p_parameter_name);
1292 END Validate_Source_Object_ID;
1293
1294 ------------------------------------------------------------------------------
1295 -- Procedure : Validate_Who_Info
1296 ------------------------------------------------------------------------------
1297
1298 PROCEDURE Validate_Who_Info
1299 ( p_api_name IN VARCHAR2,
1300 p_parameter_name_usr IN VARCHAR2,
1301 p_parameter_name_log IN VARCHAR2,
1302 p_user_id IN NUMBER,
1303 p_login_id IN NUMBER,
1304 p_resp_id IN NUMBER := NULL,
1305 p_resp_appl_id IN NUMBER := NULL,
1306 x_return_status OUT NOCOPY VARCHAR2 )
1307 IS
1308 l_dummy VARCHAR2(1);
1309 BEGIN
1310 x_return_status := fnd_api.g_ret_sts_success;
1311
1312 BEGIN
1313 -- Special check to not check the dates when the user ID is (-1).
1314 IF p_user_id = -1 THEN
1315 SELECT 'x' INTO l_dummy
1316 FROM fnd_user
1317 WHERE user_id = p_user_id;
1318 ELSE
1319 SELECT 'x' INTO l_dummy
1320 FROM fnd_user
1321 WHERE user_id = p_user_id
1322 AND Trunc(Sysdate) BETWEEN Trunc(Nvl(start_date, Sysdate))
1323 AND Trunc(Nvl(end_date, Sysdate));
1324 END IF;
1325 EXCEPTION
1326 WHEN no_data_found THEN
1327 x_return_status := fnd_api.g_ret_sts_error;
1328 add_invalid_argument_msg(p_api_name, To_char(p_user_id),
1329 p_parameter_name_usr);
1330 RETURN;
1331 END;
1332
1333 IF p_login_id IS NOT NULL THEN
1334 -- Do not validate login id if audit level set to NONE
1335 IF (fnd_profile.value_specific('SIGNONAUDIT:LEVEL', p_user_id,
1336 p_resp_id, p_resp_appl_id) <> 'A') THEN
1337 BEGIN
1338 SELECT 'x' INTO l_dummy
1339 FROM fnd_logins
1340 WHERE login_id = p_login_id
1341 AND user_id = p_user_id;
1342 EXCEPTION
1343 WHEN no_data_found THEN
1344 x_return_status := fnd_api.g_ret_sts_error;
1345 add_invalid_argument_msg(p_api_name, To_char(p_login_id),
1346 p_parameter_name_log);
1347 END;
1348 END IF;
1349 END IF;
1350 END Validate_Who_Info;
1351
1352 PROCEDURE Is_DescFlex_Valid
1353 (
1354 p_api_name IN VARCHAR2,
1355 p_appl_short_name IN VARCHAR2 DEFAULT 'CS',
1356 p_desc_flex_name IN VARCHAR2,
1357 p_seg_partial_name IN VARCHAR2,
1358 p_num_of_attributes IN NUMBER,
1359 p_seg_values IN DFF_Rec_Type,
1360 p_stack_err_msg IN BOOLEAN DEFAULT TRUE
1361 ) IS
1362
1363 p_desc_context VARCHAR2(30);
1364 p_desc_col_name1 VARCHAR2(30) := p_seg_partial_name||'1';
1365 p_desc_col_name2 VARCHAR2(30) := p_seg_partial_name||'2';
1366 p_desc_col_name3 VARCHAR2(30) := p_seg_partial_name||'3';
1367 p_desc_col_name4 VARCHAR2(30) := p_seg_partial_name||'4';
1368 p_desc_col_name5 VARCHAR2(30) := p_seg_partial_name||'5';
1369 p_desc_col_name6 VARCHAR2(30) := p_seg_partial_name||'6';
1370 p_desc_col_name7 VARCHAR2(30) := p_seg_partial_name||'7';
1371 p_desc_col_name8 VARCHAR2(30) := p_seg_partial_name||'8';
1372 p_desc_col_name9 VARCHAR2(30) := p_seg_partial_name||'9';
1373 p_desc_col_name10 VARCHAR2(30) := p_seg_partial_name||'10';
1374 p_desc_col_name11 VARCHAR2(30) := p_seg_partial_name||'11';
1375 p_desc_col_name12 VARCHAR2(30) := p_seg_partial_name||'12';
1376 p_desc_col_name13 VARCHAR2(30) := p_seg_partial_name||'13';
1377 p_desc_col_name14 VARCHAR2(30) := p_seg_partial_name||'14';
1378 p_desc_col_name15 VARCHAR2(30) := p_seg_partial_name||'15';
1379 l_return_status VARCHAR2(1);
1380 l_resp_appl_id NUMBER;
1381 l_resp_id NUMBER;
1382 l_return_value BOOLEAN := TRUE;
1383
1384 BEGIN
1385 IF p_num_of_attributes > 15 THEN
1386 /* More than 15 attributes not currently supported. Please contact developer. */
1387 FND_MESSAGE.SET_NAME('CS','CS_API_NUM_OF_DESCFLEX_GT_MAX');
1388 FND_MESSAGE.SET_TOKEN('API_NAME',p_api_name);
1389 FND_MSG_PUB.Add;
1390 RAISE FND_API.G_EXC_ERROR;
1391 END IF;
1392
1393 Validate_Desc_Flex
1394 (
1395 p_api_name,
1396 p_appl_short_name,
1397 p_desc_flex_name,
1398 p_desc_col_name1,
1399 p_desc_col_name2,
1400 p_desc_col_name3,
1401 p_desc_col_name4,
1402 p_desc_col_name5,
1403 p_desc_col_name6,
1404 p_desc_col_name7,
1405 p_desc_col_name8,
1406 p_desc_col_name9,
1407 p_desc_col_name10,
1408 p_desc_col_name11,
1409 p_desc_col_name12,
1410 p_desc_col_name13,
1411 p_desc_col_name14,
1412 p_desc_col_name15,
1413 p_seg_values.attribute1,
1414 p_seg_values.attribute2,
1415 p_seg_values.attribute3,
1416 p_seg_values.attribute4,
1417 p_seg_values.attribute5,
1418 p_seg_values.attribute6,
1419 p_seg_values.attribute7,
1420 p_seg_values.attribute8,
1421 p_seg_values.attribute9,
1422 p_seg_values.attribute10,
1423 p_seg_values.attribute11,
1424 p_seg_values.attribute12,
1425 p_seg_values.attribute13,
1426 p_seg_values.attribute14,
1427 p_seg_values.attribute15,
1428 p_seg_values.context,
1429 l_resp_appl_id,
1430 l_resp_id,
1431 l_return_status );
1432
1433 if l_return_status <> FND_API.G_RET_STS_SUCCESS then
1434 RAISE FND_API.G_EXC_ERROR;
1435 end if;
1436 END Is_DescFlex_Valid;
1437
1438 PROCEDURE Is_PriceAttribs_Valid
1439 (
1440 p_api_name IN VARCHAR2,
1441 p_appl_short_name IN VARCHAR2 DEFAULT 'CS',
1442 p_Price_Attrib_name IN VARCHAR2,
1443 p_seg_partial_name IN VARCHAR2,
1444 p_seg_values IN PRICE_ATT_Rec_Type,
1445 p_stack_err_msg IN BOOLEAN DEFAULT TRUE
1446 ) IS
1447
1448 p_desc_context VARCHAR2(30);
1449 p_desc_col_name1 VARCHAR2(30) := p_seg_partial_name||'1';
1450 p_desc_col_name2 VARCHAR2(30) := p_seg_partial_name||'2';
1451 p_desc_col_name3 VARCHAR2(30) := p_seg_partial_name||'3';
1452 p_desc_col_name4 VARCHAR2(30) := p_seg_partial_name||'4';
1453 p_desc_col_name5 VARCHAR2(30) := p_seg_partial_name||'5';
1454 p_desc_col_name6 VARCHAR2(30) := p_seg_partial_name||'6';
1455 p_desc_col_name7 VARCHAR2(30) := p_seg_partial_name||'7';
1456 p_desc_col_name8 VARCHAR2(30) := p_seg_partial_name||'8';
1457 p_desc_col_name9 VARCHAR2(30) := p_seg_partial_name||'9';
1458 p_desc_col_name10 VARCHAR2(30) := p_seg_partial_name||'10';
1459 p_desc_col_name11 VARCHAR2(30) := p_seg_partial_name||'11';
1460 p_desc_col_name12 VARCHAR2(30) := p_seg_partial_name||'12';
1461 p_desc_col_name13 VARCHAR2(30) := p_seg_partial_name||'13';
1462 p_desc_col_name14 VARCHAR2(30) := p_seg_partial_name||'14';
1463 p_desc_col_name15 VARCHAR2(30) := p_seg_partial_name||'15';
1464 p_desc_col_name16 VARCHAR2(30) := p_seg_partial_name||'16';
1465 p_desc_col_name17 VARCHAR2(30) := p_seg_partial_name||'17';
1466 p_desc_col_name18 VARCHAR2(30) := p_seg_partial_name||'18';
1467 p_desc_col_name19 VARCHAR2(30) := p_seg_partial_name||'19';
1468 p_desc_col_name20 VARCHAR2(30) := p_seg_partial_name||'20';
1469 p_desc_col_name21 VARCHAR2(30) := p_seg_partial_name||'21';
1470 p_desc_col_name22 VARCHAR2(30) := p_seg_partial_name||'22';
1471 p_desc_col_name23 VARCHAR2(30) := p_seg_partial_name||'23';
1472 p_desc_col_name24 VARCHAR2(30) := p_seg_partial_name||'24';
1473 p_desc_col_name25 VARCHAR2(30) := p_seg_partial_name||'25';
1474 p_desc_col_name26 VARCHAR2(30) := p_seg_partial_name||'26';
1475 p_desc_col_name27 VARCHAR2(30) := p_seg_partial_name||'27';
1476 p_desc_col_name28 VARCHAR2(30) := p_seg_partial_name||'28';
1477 p_desc_col_name29 VARCHAR2(30) := p_seg_partial_name||'29';
1478 p_desc_col_name30 VARCHAR2(30) := p_seg_partial_name||'30';
1479 p_desc_col_name31 VARCHAR2(30) := p_seg_partial_name||'31';
1480 p_desc_col_name32 VARCHAR2(30) := p_seg_partial_name||'32';
1481 p_desc_col_name33 VARCHAR2(30) := p_seg_partial_name||'33';
1482 p_desc_col_name34 VARCHAR2(30) := p_seg_partial_name||'34';
1483 p_desc_col_name35 VARCHAR2(30) := p_seg_partial_name||'35';
1484 p_desc_col_name36 VARCHAR2(30) := p_seg_partial_name||'36';
1485 p_desc_col_name37 VARCHAR2(30) := p_seg_partial_name||'37';
1486 p_desc_col_name38 VARCHAR2(30) := p_seg_partial_name||'38';
1487 p_desc_col_name39 VARCHAR2(30) := p_seg_partial_name||'39';
1488 p_desc_col_name40 VARCHAR2(30) := p_seg_partial_name||'40';
1489 p_desc_col_name41 VARCHAR2(30) := p_seg_partial_name||'41';
1490 p_desc_col_name42 VARCHAR2(30) := p_seg_partial_name||'42';
1491 p_desc_col_name43 VARCHAR2(30) := p_seg_partial_name||'43';
1492 p_desc_col_name44 VARCHAR2(30) := p_seg_partial_name||'44';
1493 p_desc_col_name45 VARCHAR2(30) := p_seg_partial_name||'45';
1494 p_desc_col_name46 VARCHAR2(30) := p_seg_partial_name||'46';
1495 p_desc_col_name47 VARCHAR2(30) := p_seg_partial_name||'47';
1496 p_desc_col_name48 VARCHAR2(30) := p_seg_partial_name||'48';
1497 p_desc_col_name49 VARCHAR2(30) := p_seg_partial_name||'49';
1498 p_desc_col_name50 VARCHAR2(30) := p_seg_partial_name||'50';
1499 p_desc_col_name51 VARCHAR2(30) := p_seg_partial_name||'51';
1500 p_desc_col_name52 VARCHAR2(30) := p_seg_partial_name||'52';
1501 p_desc_col_name53 VARCHAR2(30) := p_seg_partial_name||'53';
1502 p_desc_col_name54 VARCHAR2(30) := p_seg_partial_name||'54';
1503 p_desc_col_name55 VARCHAR2(30) := p_seg_partial_name||'55';
1504 p_desc_col_name56 VARCHAR2(30) := p_seg_partial_name||'56';
1505 p_desc_col_name57 VARCHAR2(30) := p_seg_partial_name||'57';
1506 p_desc_col_name58 VARCHAR2(30) := p_seg_partial_name||'58';
1507 p_desc_col_name59 VARCHAR2(30) := p_seg_partial_name||'59';
1508 p_desc_col_name60 VARCHAR2(30) := p_seg_partial_name||'60';
1509 p_desc_col_name61 VARCHAR2(30) := p_seg_partial_name||'61';
1510 p_desc_col_name62 VARCHAR2(30) := p_seg_partial_name||'62';
1511 p_desc_col_name63 VARCHAR2(30) := p_seg_partial_name||'63';
1512 p_desc_col_name64 VARCHAR2(30) := p_seg_partial_name||'64';
1513 p_desc_col_name65 VARCHAR2(30) := p_seg_partial_name||'65';
1514 p_desc_col_name66 VARCHAR2(30) := p_seg_partial_name||'66';
1515 p_desc_col_name67 VARCHAR2(30) := p_seg_partial_name||'67';
1516 p_desc_col_name68 VARCHAR2(30) := p_seg_partial_name||'68';
1517 p_desc_col_name69 VARCHAR2(30) := p_seg_partial_name||'69';
1518 p_desc_col_name70 VARCHAR2(30) := p_seg_partial_name||'70';
1519 p_desc_col_name71 VARCHAR2(30) := p_seg_partial_name||'71';
1520 p_desc_col_name72 VARCHAR2(30) := p_seg_partial_name||'72';
1521 p_desc_col_name73 VARCHAR2(30) := p_seg_partial_name||'73';
1522 p_desc_col_name74 VARCHAR2(30) := p_seg_partial_name||'74';
1523 p_desc_col_name75 VARCHAR2(30) := p_seg_partial_name||'75';
1524 p_desc_col_name76 VARCHAR2(30) := p_seg_partial_name||'76';
1525 p_desc_col_name77 VARCHAR2(30) := p_seg_partial_name||'77';
1526 p_desc_col_name78 VARCHAR2(30) := p_seg_partial_name||'78';
1527 p_desc_col_name79 VARCHAR2(30) := p_seg_partial_name||'79';
1528 p_desc_col_name80 VARCHAR2(30) := p_seg_partial_name||'80';
1529 p_desc_col_name81 VARCHAR2(30) := p_seg_partial_name||'81';
1530 p_desc_col_name82 VARCHAR2(30) := p_seg_partial_name||'82';
1531 p_desc_col_name83 VARCHAR2(30) := p_seg_partial_name||'83';
1532 p_desc_col_name84 VARCHAR2(30) := p_seg_partial_name||'84';
1533 p_desc_col_name85 VARCHAR2(30) := p_seg_partial_name||'85';
1534 p_desc_col_name86 VARCHAR2(30) := p_seg_partial_name||'86';
1535 p_desc_col_name87 VARCHAR2(30) := p_seg_partial_name||'87';
1536 p_desc_col_name88 VARCHAR2(30) := p_seg_partial_name||'88';
1537 p_desc_col_name89 VARCHAR2(30) := p_seg_partial_name||'89';
1538 p_desc_col_name90 VARCHAR2(30) := p_seg_partial_name||'90';
1539 p_desc_col_name91 VARCHAR2(30) := p_seg_partial_name||'91';
1540 p_desc_col_name92 VARCHAR2(30) := p_seg_partial_name||'92';
1541 p_desc_col_name93 VARCHAR2(30) := p_seg_partial_name||'93';
1542 p_desc_col_name94 VARCHAR2(30) := p_seg_partial_name||'94';
1543 p_desc_col_name95 VARCHAR2(30) := p_seg_partial_name||'95';
1544 p_desc_col_name96 VARCHAR2(30) := p_seg_partial_name||'96';
1545 p_desc_col_name97 VARCHAR2(30) := p_seg_partial_name||'97';
1546 p_desc_col_name98 VARCHAR2(30) := p_seg_partial_name||'98';
1547 p_desc_col_name99 VARCHAR2(30) := p_seg_partial_name||'99';
1548 p_desc_col_name100 VARCHAR2(30) := p_seg_partial_name||'100';
1549 l_return_status VARCHAR2(1);
1550 l_resp_appl_id NUMBER;
1551 l_resp_id NUMBER;
1552 l_return_value BOOLEAN := TRUE;
1553
1554 BEGIN
1555 Validate_Price_Attribs
1556 (
1557 p_api_name,
1558 p_appl_short_name,
1559 p_price_attrib_name,
1560 p_desc_col_name1,
1561 p_desc_col_name2,
1562 p_desc_col_name3,
1563 p_desc_col_name4,
1564 p_desc_col_name5,
1565 p_desc_col_name6,
1566 p_desc_col_name7,
1567 p_desc_col_name8,
1568 p_desc_col_name9,
1569 p_desc_col_name10,
1570 p_desc_col_name11,
1571 p_desc_col_name12,
1572 p_desc_col_name13,
1573 p_desc_col_name14,
1574 p_desc_col_name15,
1575 p_desc_col_name16,
1576 p_desc_col_name17,
1577 p_desc_col_name18,
1578 p_desc_col_name19,
1579 p_desc_col_name20,
1580 p_desc_col_name21,
1581 p_desc_col_name22,
1582 p_desc_col_name23,
1583 p_desc_col_name24,
1584 p_desc_col_name25,
1585 p_desc_col_name26,
1586 p_desc_col_name27,
1587 p_desc_col_name28,
1588 p_desc_col_name29,
1589 p_desc_col_name30,
1590 p_desc_col_name31,
1591 p_desc_col_name32,
1592 p_desc_col_name33,
1593 p_desc_col_name34,
1594 p_desc_col_name35,
1595 p_desc_col_name36,
1596 p_desc_col_name37,
1597 p_desc_col_name38,
1598 p_desc_col_name39,
1599 p_desc_col_name40,
1600 p_desc_col_name41,
1601 p_desc_col_name42,
1602 p_desc_col_name43,
1603 p_desc_col_name44,
1604 p_desc_col_name45,
1605 p_desc_col_name46,
1606 p_desc_col_name47,
1607 p_desc_col_name48,
1608 p_desc_col_name49,
1609 p_desc_col_name50,
1610 p_desc_col_name51,
1611 p_desc_col_name52,
1612 p_desc_col_name53,
1613 p_desc_col_name54,
1614 p_desc_col_name55,
1615 p_desc_col_name56,
1616 p_desc_col_name57,
1617 p_desc_col_name58,
1618 p_desc_col_name59,
1619 p_desc_col_name60,
1620 p_desc_col_name61,
1621 p_desc_col_name62,
1622 p_desc_col_name63,
1623 p_desc_col_name64,
1624 p_desc_col_name65,
1625 p_desc_col_name66,
1626 p_desc_col_name67,
1627 p_desc_col_name68,
1628 p_desc_col_name69,
1629 p_desc_col_name70,
1630 p_desc_col_name71,
1631 p_desc_col_name72,
1632 p_desc_col_name73,
1633 p_desc_col_name74,
1634 p_desc_col_name75,
1635 p_desc_col_name76,
1636 p_desc_col_name77,
1637 p_desc_col_name78,
1638 p_desc_col_name79,
1639 p_desc_col_name80,
1640 p_desc_col_name81,
1641 p_desc_col_name82,
1642 p_desc_col_name83,
1643 p_desc_col_name84,
1644 p_desc_col_name85,
1645 p_desc_col_name86,
1646 p_desc_col_name87,
1647 p_desc_col_name88,
1648 p_desc_col_name89,
1649 p_desc_col_name90,
1650 p_desc_col_name91,
1651 p_desc_col_name92,
1652 p_desc_col_name93,
1653 p_desc_col_name94,
1654 p_desc_col_name95,
1655 p_desc_col_name96,
1656 p_desc_col_name97,
1657 p_desc_col_name98,
1658 p_desc_col_name99,
1659 p_desc_col_name100,
1660 p_seg_values.pricing_attribute1,
1661 p_seg_values.pricing_attribute2,
1662 p_seg_values.pricing_attribute3,
1663 p_seg_values.pricing_attribute4,
1664 p_seg_values.pricing_attribute5,
1665 p_seg_values.pricing_attribute6,
1666 p_seg_values.pricing_attribute7,
1667 p_seg_values.pricing_attribute8,
1668 p_seg_values.pricing_attribute9,
1669 p_seg_values.pricing_attribute10,
1670 p_seg_values.pricing_attribute11,
1671 p_seg_values.pricing_attribute12,
1672 p_seg_values.pricing_attribute13,
1673 p_seg_values.pricing_attribute14,
1674 p_seg_values.pricing_attribute15,
1675 p_seg_values.pricing_attribute16,
1676 p_seg_values.pricing_attribute17,
1677 p_seg_values.pricing_attribute18,
1678 p_seg_values.pricing_attribute19,
1679 p_seg_values.pricing_attribute20,
1680 p_seg_values.pricing_attribute21,
1681 p_seg_values.pricing_attribute22,
1682 p_seg_values.pricing_attribute23,
1683 p_seg_values.pricing_attribute24,
1684 p_seg_values.pricing_attribute25,
1685 p_seg_values.pricing_attribute26,
1686 p_seg_values.pricing_attribute27,
1687 p_seg_values.pricing_attribute28,
1688 p_seg_values.pricing_attribute29,
1689 p_seg_values.pricing_attribute30,
1690 p_seg_values.pricing_attribute31,
1691 p_seg_values.pricing_attribute32,
1692 p_seg_values.pricing_attribute33,
1693 p_seg_values.pricing_attribute34,
1694 p_seg_values.pricing_attribute35,
1695 p_seg_values.pricing_attribute36,
1696 p_seg_values.pricing_attribute37,
1697 p_seg_values.pricing_attribute38,
1698 p_seg_values.pricing_attribute39,
1699 p_seg_values.pricing_attribute40,
1700 p_seg_values.pricing_attribute41,
1701 p_seg_values.pricing_attribute42,
1702 p_seg_values.pricing_attribute43,
1703 p_seg_values.pricing_attribute44,
1704 p_seg_values.pricing_attribute45,
1705 p_seg_values.pricing_attribute46,
1706 p_seg_values.pricing_attribute47,
1707 p_seg_values.pricing_attribute48,
1708 p_seg_values.pricing_attribute49,
1709 p_seg_values.pricing_attribute50,
1710 p_seg_values.pricing_attribute51,
1711 p_seg_values.pricing_attribute52,
1712 p_seg_values.pricing_attribute53,
1713 p_seg_values.pricing_attribute54,
1714 p_seg_values.pricing_attribute55,
1715 p_seg_values.pricing_attribute56,
1716 p_seg_values.pricing_attribute57,
1717 p_seg_values.pricing_attribute58,
1718 p_seg_values.pricing_attribute59,
1719 p_seg_values.pricing_attribute60,
1720 p_seg_values.pricing_attribute61,
1721 p_seg_values.pricing_attribute62,
1722 p_seg_values.pricing_attribute63,
1723 p_seg_values.pricing_attribute64,
1724 p_seg_values.pricing_attribute65,
1725 p_seg_values.pricing_attribute66,
1726 p_seg_values.pricing_attribute67,
1727 p_seg_values.pricing_attribute68,
1728 p_seg_values.pricing_attribute69,
1729 p_seg_values.pricing_attribute70,
1730 p_seg_values.pricing_attribute71,
1731 p_seg_values.pricing_attribute72,
1732 p_seg_values.pricing_attribute73,
1733 p_seg_values.pricing_attribute74,
1734 p_seg_values.pricing_attribute75,
1735 p_seg_values.pricing_attribute76,
1736 p_seg_values.pricing_attribute77,
1737 p_seg_values.pricing_attribute78,
1738 p_seg_values.pricing_attribute79,
1739 p_seg_values.pricing_attribute80,
1740 p_seg_values.pricing_attribute81,
1741 p_seg_values.pricing_attribute82,
1742 p_seg_values.pricing_attribute83,
1743 p_seg_values.pricing_attribute84,
1744 p_seg_values.pricing_attribute85,
1745 p_seg_values.pricing_attribute86,
1746 p_seg_values.pricing_attribute87,
1747 p_seg_values.pricing_attribute88,
1748 p_seg_values.pricing_attribute89,
1749 p_seg_values.pricing_attribute90,
1750 p_seg_values.pricing_attribute91,
1751 p_seg_values.pricing_attribute92,
1752 p_seg_values.pricing_attribute93,
1753 p_seg_values.pricing_attribute94,
1754 p_seg_values.pricing_attribute95,
1755 p_seg_values.pricing_attribute96,
1756 p_seg_values.pricing_attribute97,
1757 p_seg_values.pricing_attribute98,
1758 p_seg_values.pricing_attribute99,
1759 p_seg_values.pricing_attribute100,
1760 p_seg_values.pricing_context,
1761 l_resp_appl_id,
1762 l_resp_id,
1763 l_return_status );
1764
1765 if l_return_status <> FND_API.G_RET_STS_SUCCESS then
1766 RAISE FND_API.G_EXC_ERROR;
1767 end if;
1768 END Is_PriceAttribs_Valid;
1769 ------------------------------------------------------------------------------
1770 -- Procedure : get_g_false
1771 ------------------------------------------------------------------------------
1772
1773 function get_g_false return varchar2 is
1774
1775 begin
1776 return (fnd_api.g_false);
1777
1778 end get_g_false;
1779
1780 ------------------------------------------------------------------------------
1781 -- Procedure : get_g_true
1782 ------------------------------------------------------------------------------
1783
1784 function get_g_true return varchar2 is
1785
1786 begin
1787 return (fnd_api.g_true);
1788
1789 end get_g_true;
1790
1791 ------------------------------------------------------------------------------
1792 -- Procedure : get_g_valid_level_full
1793 ------------------------------------------------------------------------------
1794
1795 function get_g_valid_level_full return varchar2 is
1796
1797 begin
1798 return (fnd_api.g_valid_level_full);
1799
1800 end get_g_valid_level_full;
1801
1802 ------------------------------------------------------------------------------
1803 -- Procedure : get_g_miss_num
1804 ------------------------------------------------------------------------------
1805
1806 function get_g_miss_num return number is
1807
1808 begin
1809 return (fnd_api.g_miss_num);
1810
1811 end get_g_miss_num;
1812
1813 ------------------------------------------------------------------------------
1814 -- Procedure : get_g_miss_char
1815 ------------------------------------------------------------------------------
1816
1817 function get_g_miss_char return varchar2 is
1818
1819 begin
1820 return (fnd_api.g_miss_char);
1821
1822 end get_g_miss_char;
1823
1824 ------------------------------------------------------------------------------
1825 -- Procedure : get_g_miss_date
1826 ------------------------------------------------------------------------------
1827
1828 function get_g_miss_date return date is
1829
1830 begin
1831 return (fnd_api.g_miss_date);
1832
1833 end get_g_miss_date;
1834
1835 ----------------------------------- End of Code -----------------------------
1836
1837 END CS_CORE_UTIL;