66: fnd_message.set_name('CN', 'CN_NO_RULE_ATTRIBUTES_DEFINED');
67: fnd_message.set_token('CLASSIFICATION_RULE_NAME', p_name);
68: fnd_message.set_token('RULE_NAME', attribute_rec.name);
69: fnd_msg_pub.add;
70: RAISE FND_API.G_EXC_ERROR;
71: END IF;
72:
73: END LOOP;
74:
97: p_loading_status => x_loading_status,
98: x_loading_status => x_loading_status);
99:
100: if x_loading_Status = 'CN_DATATYPE_VALUE_MISMATCH' then
101: RAISE FND_API.G_EXC_ERROR;
102: END IF;
103: elsif l_data_flag = 'R' THEN
104:
105:
114: p_loading_status => x_loading_status,
115: x_loading_status => x_loading_status) ;
116:
117: if x_loading_status = 'CN_DATATYPE_VALUE_MISMATCH' THEN
118: RAISE FND_API.G_EXC_ERROR;
119: end if;
120: end if;
121: END LOOP;
122:
119: end if;
120: end if;
121: END LOOP;
122:
123: RETURN fnd_api.g_false;
124:
125: EXCEPTION
126: WHEN FND_API.G_EXC_ERROR THEN
127: RETURN fnd_api.g_true;
122:
123: RETURN fnd_api.g_false;
124:
125: EXCEPTION
126: WHEN FND_API.G_EXC_ERROR THEN
127: RETURN fnd_api.g_true;
128:
129: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
130: x_loading_status := 'UNEXPECTED_ERR';
123: RETURN fnd_api.g_false;
124:
125: EXCEPTION
126: WHEN FND_API.G_EXC_ERROR THEN
127: RETURN fnd_api.g_true;
128:
129: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
130: x_loading_status := 'UNEXPECTED_ERR';
131: RETURN fnd_api.g_true;
125: EXCEPTION
126: WHEN FND_API.G_EXC_ERROR THEN
127: RETURN fnd_api.g_true;
128:
129: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
130: x_loading_status := 'UNEXPECTED_ERR';
131: RETURN fnd_api.g_true;
132:
133: WHEN OTHERS THEN
127: RETURN fnd_api.g_true;
128:
129: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
130: x_loading_status := 'UNEXPECTED_ERR';
131: RETURN fnd_api.g_true;
132:
133: WHEN OTHERS THEN
134: x_loading_status := 'UNEXPECTED_ERR';
135: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
135: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
136: THEN
137: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME ,l_api_name );
138: END IF;
139: RETURN fnd_api.g_true;
140:
141: END Check_Sync_Allowed;
142:
143:
195: fnd_message.set_name('CN', 'CN_CANNOT_CHANGE_TYPE');
196: fnd_msg_pub.add;
197: END IF;
198: x_loading_status := 'CN_CANNOT_TYPE_TYPE';
199: RAISE FND_API.G_EXC_ERROR;
200:
201: END IF;
202:
203: END IF;
201: END IF;
202:
203: END IF;
204:
205: RETURN fnd_api.g_false;
206:
207: EXCEPTION
208: WHEN FND_API.G_EXC_ERROR THEN
209: RETURN fnd_api.g_true;
204:
205: RETURN fnd_api.g_false;
206:
207: EXCEPTION
208: WHEN FND_API.G_EXC_ERROR THEN
209: RETURN fnd_api.g_true;
210:
211: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
212: x_loading_status := 'UNEXPECTED_ERR';
205: RETURN fnd_api.g_false;
206:
207: EXCEPTION
208: WHEN FND_API.G_EXC_ERROR THEN
209: RETURN fnd_api.g_true;
210:
211: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
212: x_loading_status := 'UNEXPECTED_ERR';
213: RETURN fnd_api.g_true;
207: EXCEPTION
208: WHEN FND_API.G_EXC_ERROR THEN
209: RETURN fnd_api.g_true;
210:
211: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
212: x_loading_status := 'UNEXPECTED_ERR';
213: RETURN fnd_api.g_true;
214:
215: WHEN OTHERS THEN
209: RETURN fnd_api.g_true;
210:
211: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
212: x_loading_status := 'UNEXPECTED_ERR';
213: RETURN fnd_api.g_true;
214:
215: WHEN OTHERS THEN
216: x_loading_status := 'UNEXPECTED_ERR';
217: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
217: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
218: THEN
219: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME ,l_api_name );
220: END IF;
221: RETURN fnd_api.g_true;
222:
223: END check_update_allowed;
224:
225: --=========================================================================
274: fnd_msg_pub.add;
275: END IF;
276:
277: x_loading_status := 'CN_INVALID_DATE_RANGE';
278: RAISE FND_API.G_EXC_ERROR;
279:
280: END IF;
281:
282:
292: fnd_msg_pub.add;
293: END IF;
294: CLOSE overlap_check1;
295: x_loading_status := 'CN_OVERLAP_RULESETS';
296: RAISE FND_API.G_EXC_ERROR;
297:
298: END IF;
299: CLOSE overlap_check1;
300:
311: fnd_msg_pub.add;
312: END IF;
313: CLOSE overlap_check1;
314: x_loading_status := 'CN_OVERLAP_RULESETS';
315: RAISE FND_API.G_EXC_ERROR;
316:
317: END IF;
318: CLOSE overlap_check1;
319:
331: fnd_msg_pub.add;
332: END IF;
333: CLOSE overlap_check2;
334: x_loading_status := 'CN_OVERLAP_RULESETS';
335: RAISE FND_API.G_EXC_ERROR;
336:
337: END IF;
338: CLOSE overlap_check2;
339:
336:
337: END IF;
338: CLOSE overlap_check2;
339:
340: RETURN fnd_api.g_false;
341:
342: EXCEPTION
343: WHEN FND_API.G_EXC_ERROR THEN
344: RETURN fnd_api.g_true;
339:
340: RETURN fnd_api.g_false;
341:
342: EXCEPTION
343: WHEN FND_API.G_EXC_ERROR THEN
344: RETURN fnd_api.g_true;
345:
346: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
347: x_loading_status := 'UNEXPECTED_ERR';
340: RETURN fnd_api.g_false;
341:
342: EXCEPTION
343: WHEN FND_API.G_EXC_ERROR THEN
344: RETURN fnd_api.g_true;
345:
346: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
347: x_loading_status := 'UNEXPECTED_ERR';
348: RETURN fnd_api.g_true;
342: EXCEPTION
343: WHEN FND_API.G_EXC_ERROR THEN
344: RETURN fnd_api.g_true;
345:
346: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
347: x_loading_status := 'UNEXPECTED_ERR';
348: RETURN fnd_api.g_true;
349:
350: WHEN OTHERS THEN
344: RETURN fnd_api.g_true;
345:
346: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
347: x_loading_status := 'UNEXPECTED_ERR';
348: RETURN fnd_api.g_true;
349:
350: WHEN OTHERS THEN
351: x_loading_status := 'UNEXPECTED_ERR';
352: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
352: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
353: THEN
354: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME ,l_api_name );
355: END IF;
356: RETURN fnd_api.g_true;
357: END check_ruleset_dates;
358:
359: --=========================================================================
360: -- Start of comments
364: -- Pre-reqs : None.
365: -- Parameters :
366: -- IN : p_api_version IN NUMBER Required
367: -- p_init_msg_list IN VARCHAR2 Optional
368: -- Default = FND_API.G_FALSE
369: -- p_commit IN VARCHAR2 Optional
370: -- Default = FND_API.G_FALSE
371: -- p_validation_level IN NUMBER Optional
372: -- Default = FND_API.G_VALID_LEVEL_FULL
366: -- IN : p_api_version IN NUMBER Required
367: -- p_init_msg_list IN VARCHAR2 Optional
368: -- Default = FND_API.G_FALSE
369: -- p_commit IN VARCHAR2 Optional
370: -- Default = FND_API.G_FALSE
371: -- p_validation_level IN NUMBER Optional
372: -- Default = FND_API.G_VALID_LEVEL_FULL
373: -- p_ruleset_rec IN
374: -- CN_Ruleset_PVT.ruleset_rec_type
368: -- Default = FND_API.G_FALSE
369: -- p_commit IN VARCHAR2 Optional
370: -- Default = FND_API.G_FALSE
371: -- p_validation_level IN NUMBER Optional
372: -- Default = FND_API.G_VALID_LEVEL_FULL
373: -- p_ruleset_rec IN
374: -- CN_Ruleset_PVT.ruleset_rec_type
375: --
376: -- OUT : x_return_status OUT VARCHAR2(1)
389: -- End of comments
390: --=========================================================================
391: PROCEDURE create_ruleset
392: ( p_api_version IN NUMBER,
393: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
394: p_commit IN VARCHAR2 := FND_API.G_FALSE,
395: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
396: x_return_status OUT NOCOPY VARCHAR2,
397: x_msg_count OUT NOCOPY NUMBER,
390: --=========================================================================
391: PROCEDURE create_ruleset
392: ( p_api_version IN NUMBER,
393: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
394: p_commit IN VARCHAR2 := FND_API.G_FALSE,
395: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
396: x_return_status OUT NOCOPY VARCHAR2,
397: x_msg_count OUT NOCOPY NUMBER,
398: x_msg_data OUT NOCOPY VARCHAR2,
391: PROCEDURE create_ruleset
392: ( p_api_version IN NUMBER,
393: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
394: p_commit IN VARCHAR2 := FND_API.G_FALSE,
395: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
396: x_return_status OUT NOCOPY VARCHAR2,
397: x_msg_count OUT NOCOPY NUMBER,
398: x_msg_data OUT NOCOPY VARCHAR2,
399: x_loading_status OUT NOCOPY VARCHAR2,
417:
418: -- Standard Start of API savepoint
419: SAVEPOINT Create_Ruleset;
420: -- Standard call to check for call compatibility.
421: IF NOT FND_API.Compatible_API_Call ( l_api_version,
422: p_api_version,
423: l_api_name,
424: G_PKG_NAME )
425: THEN
422: p_api_version,
423: l_api_name,
424: G_PKG_NAME )
425: THEN
426: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
427: END IF;
428:
429: -- Initialize message list if p_init_msg_list is set to TRUE.
430: IF FND_API.to_Boolean( p_init_msg_list )
426: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
427: END IF;
428:
429: -- Initialize message list if p_init_msg_list is set to TRUE.
430: IF FND_API.to_Boolean( p_init_msg_list )
431: THEN
432: FND_MSG_PUB.initialize;
433: END IF;
434:
432: FND_MSG_PUB.initialize;
433: END IF;
434:
435: -- Initialize API return status to success
436: x_return_status := FND_API.G_RET_STS_SUCCESS;
437: x_loading_status := 'CN_INSERTED';
438:
439: -- API body
440:
444: IF (cn_api.chk_miss_null_char_para
445: ( p_ruleset_rec.ruleset_name,
446: cn_api.get_lkup_meaning('RULESET_NAME', 'RULESET_TYPE'),
447: x_loading_status,
448: x_loading_status) = FND_API.G_TRUE )
449: THEN
450: RAISE fnd_api.g_exc_error;
451: END IF;
452:
446: cn_api.get_lkup_meaning('RULESET_NAME', 'RULESET_TYPE'),
447: x_loading_status,
448: x_loading_status) = FND_API.G_TRUE )
449: THEN
450: RAISE fnd_api.g_exc_error;
451: END IF;
452:
453: IF (cn_api.chk_miss_null_char_para
454: ( p_ruleset_rec.module_type,
453: IF (cn_api.chk_miss_null_char_para
454: ( p_ruleset_rec.module_type,
455: cn_api.get_lkup_meaning('MODULE_TYPE', 'RULESET_TYPE'),
456: x_loading_status,
457: x_loading_status) = FND_API.G_TRUE )
458: THEN
459: RAISE fnd_api.g_exc_error;
460: END IF;
461:
455: cn_api.get_lkup_meaning('MODULE_TYPE', 'RULESET_TYPE'),
456: x_loading_status,
457: x_loading_status) = FND_API.G_TRUE )
458: THEN
459: RAISE fnd_api.g_exc_error;
460: END IF;
461:
462: IF cn_api.chk_miss_null_date_para
463: ( p_ruleset_rec.end_date,
462: IF cn_api.chk_miss_null_date_para
463: ( p_ruleset_rec.end_date,
464: cn_api.get_lkup_meaning('END_DATE', 'RULESET_TYPE'),
465: x_loading_status,
466: x_loading_status) = fnd_api.g_true
467: THEN
468: RAISE fnd_api.g_exc_error;
469: END IF;
470:
464: cn_api.get_lkup_meaning('END_DATE', 'RULESET_TYPE'),
465: x_loading_status,
466: x_loading_status) = fnd_api.g_true
467: THEN
468: RAISE fnd_api.g_exc_error;
469: END IF;
470:
471: IF cn_api.chk_miss_null_date_para
472: (p_ruleset_rec.start_date,
471: IF cn_api.chk_miss_null_date_para
472: (p_ruleset_rec.start_date,
473: cn_api.get_lkup_meaning('START_DATE', 'RULESET_TYPE'),
474: x_loading_status,
475: x_loading_status)= fnd_api.g_true
476: THEN
477: RAISE fnd_api.g_exc_error;
478: END IF;
479:
473: cn_api.get_lkup_meaning('START_DATE', 'RULESET_TYPE'),
474: x_loading_status,
475: x_loading_status)= fnd_api.g_true
476: THEN
477: RAISE fnd_api.g_exc_error;
478: END IF;
479:
480: --Now check if the ruleset exists.
481: --If it does, then raise error
498: fnd_msg_pub.add;
499: END IF;
500:
501: x_loading_status := 'CN_RULESET_EXISTS';
502: RAISE FND_API.G_EXC_ERROR;
503:
504: END IF;
505:
506: SELECT Decode(p_ruleset_rec.ruleset_id, NULL, cn_rulesets_s.NEXTVAL,
514: p_ruleset_rec.module_type,
515: l_ruleset_id,
516: p_ruleset_rec.org_id,
517: x_loading_status,
518: x_loading_status) = fnd_api.g_true
519: THEN
520: RAISE fnd_api.g_exc_error;
521: END IF;
522:
516: p_ruleset_rec.org_id,
517: x_loading_status,
518: x_loading_status) = fnd_api.g_true
519: THEN
520: RAISE fnd_api.g_exc_error;
521: END IF;
522:
523: IF p_ruleset_rec.module_type NOT IN ('REVCLS', 'ACCGEN', 'PECLS')
524: THEN
530: fnd_msg_pub.add;
531: END IF;
532: x_loading_status := 'CN_INVALID_RULESET_TYPE';
533:
534: RAISE fnd_api.g_exc_error;
535: END IF;
536:
537: cn_syin_rulesets_pkg.insert_row
538: (
555:
556: -- End of API body.
557:
558: -- Standard check of p_commit.
559: IF FND_API.To_Boolean( p_commit )
560: THEN
561: COMMIT WORK;
562: END IF;
563:
567: FND_MSG_PUB.Count_And_Get
568: (
569: p_count => x_msg_count ,
570: p_data => x_msg_data ,
571: p_encoded => FND_API.G_FALSE
572: );
573: EXCEPTION
574: WHEN FND_API.G_EXC_ERROR THEN
575: ROLLBACK TO Create_Ruleset;
570: p_data => x_msg_data ,
571: p_encoded => FND_API.G_FALSE
572: );
573: EXCEPTION
574: WHEN FND_API.G_EXC_ERROR THEN
575: ROLLBACK TO Create_Ruleset;
576: x_return_status := FND_API.G_RET_STS_ERROR ;
577: FND_MSG_PUB.Count_And_Get
578: (
572: );
573: EXCEPTION
574: WHEN FND_API.G_EXC_ERROR THEN
575: ROLLBACK TO Create_Ruleset;
576: x_return_status := FND_API.G_RET_STS_ERROR ;
577: FND_MSG_PUB.Count_And_Get
578: (
579: p_count => x_msg_count ,
580: p_data => x_msg_data ,
577: FND_MSG_PUB.Count_And_Get
578: (
579: p_count => x_msg_count ,
580: p_data => x_msg_data ,
581: p_encoded => FND_API.G_FALSE
582: );
583: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
584: ROLLBACK TO Create_Ruleset;
585: x_loading_status := 'UNEXPECTED_ERR';
579: p_count => x_msg_count ,
580: p_data => x_msg_data ,
581: p_encoded => FND_API.G_FALSE
582: );
583: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
584: ROLLBACK TO Create_Ruleset;
585: x_loading_status := 'UNEXPECTED_ERR';
586: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
587: FND_MSG_PUB.Count_And_Get
582: );
583: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
584: ROLLBACK TO Create_Ruleset;
585: x_loading_status := 'UNEXPECTED_ERR';
586: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
587: FND_MSG_PUB.Count_And_Get
588: (
589: p_count => x_msg_count ,
590: p_data => x_msg_data ,
587: FND_MSG_PUB.Count_And_Get
588: (
589: p_count => x_msg_count ,
590: p_data => x_msg_data ,
591: p_encoded => FND_API.G_FALSE
592: );
593: WHEN OTHERS THEN
594: ROLLBACK TO Create_Ruleset;
595: x_loading_status := 'UNEXPECTED_ERR';
592: );
593: WHEN OTHERS THEN
594: ROLLBACK TO Create_Ruleset;
595: x_loading_status := 'UNEXPECTED_ERR';
596: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
597: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
598: THEN
599: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME ,l_api_name );
600: END IF;
601: FND_MSG_PUB.Count_And_Get
602: (
603: p_count => x_msg_count ,
604: p_data => x_msg_data ,
605: p_encoded => FND_API.G_FALSE
606: );
607: END Create_Ruleset;
608: --=========================================================================
609: -- Start of comments
615: -- Pre-reqs : None.
616: -- Parameters :
617: -- IN : p_api_version IN NUMBER Required
618: -- p_init_msg_list IN VARCHAR2 Optional
619: -- Default = FND_API.G_FALSE
620: -- p_commit IN VARCHAR2 Optional
621: -- Default = FND_API.G_FALSE
622: -- p_validation_level IN NUMBER Optional
623: -- Default = FND_API.G_VALID_LEVEL_FULL
617: -- IN : p_api_version IN NUMBER Required
618: -- p_init_msg_list IN VARCHAR2 Optional
619: -- Default = FND_API.G_FALSE
620: -- p_commit IN VARCHAR2 Optional
621: -- Default = FND_API.G_FALSE
622: -- p_validation_level IN NUMBER Optional
623: -- Default = FND_API.G_VALID_LEVEL_FULL
624: -- p_ruleset_rec_type IN
625: -- CN_Ruleset_PVT.ruleset_rec_type
619: -- Default = FND_API.G_FALSE
620: -- p_commit IN VARCHAR2 Optional
621: -- Default = FND_API.G_FALSE
622: -- p_validation_level IN NUMBER Optional
623: -- Default = FND_API.G_VALID_LEVEL_FULL
624: -- p_ruleset_rec_type IN
625: -- CN_Ruleset_PVT.ruleset_rec_type
626: --
627: -- OUT : x_return_status OUT VARCHAR2(1)
641: --=========================================================================
642:
643: PROCEDURE Update_Ruleset
644: ( p_api_version IN NUMBER,
645: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
646: p_commit IN VARCHAR2 := FND_API.G_FALSE,
647: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
648: x_return_status OUT NOCOPY VARCHAR2,
649: x_msg_count OUT NOCOPY NUMBER,
642:
643: PROCEDURE Update_Ruleset
644: ( p_api_version IN NUMBER,
645: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
646: p_commit IN VARCHAR2 := FND_API.G_FALSE,
647: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
648: x_return_status OUT NOCOPY VARCHAR2,
649: x_msg_count OUT NOCOPY NUMBER,
650: x_msg_data OUT NOCOPY VARCHAR2,
643: PROCEDURE Update_Ruleset
644: ( p_api_version IN NUMBER,
645: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
646: p_commit IN VARCHAR2 := FND_API.G_FALSE,
647: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
648: x_return_status OUT NOCOPY VARCHAR2,
649: x_msg_count OUT NOCOPY NUMBER,
650: x_msg_data OUT NOCOPY VARCHAR2,
651: x_loading_status OUT NOCOPY VARCHAR2,
695: l_env_org_id := p_ruleset_rec.org_id;
696: -- Standard Start of API savepoint
697: SAVEPOINT Update_Ruleset;
698: -- Standard call to check for call compatibility.
699: IF NOT FND_API.Compatible_API_Call ( l_api_version,
700: p_api_version,
701: l_api_name,
702: G_PKG_NAME )
703: THEN
700: p_api_version,
701: l_api_name,
702: G_PKG_NAME )
703: THEN
704: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
705: END IF;
706:
707: -- Initialize message list if p_init_msg_list is set to TRUE.
708: IF FND_API.to_Boolean( p_init_msg_list )
704: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
705: END IF;
706:
707: -- Initialize message list if p_init_msg_list is set to TRUE.
708: IF FND_API.to_Boolean( p_init_msg_list )
709: THEN
710: FND_MSG_PUB.initialize;
711: END IF;
712:
710: FND_MSG_PUB.initialize;
711: END IF;
712:
713: -- Initialize API return status to success
714: x_return_status := FND_API.G_RET_STS_SUCCESS;
715: x_loading_status := 'CN_UPDATED';
716:
717: --
718: -- Unsync the rulesets
748: IF (cn_api.chk_miss_null_char_para
749: ( p_old_ruleset_rec.ruleset_name,
750: cn_api.get_lkup_meaning('RULESET_NAME', 'RULESET_TYPE'),
751: x_loading_status,
752: x_loading_status) = FND_API.G_TRUE )
753: THEN
754: RAISE fnd_api.g_exc_error;
755: END IF;
756:
750: cn_api.get_lkup_meaning('RULESET_NAME', 'RULESET_TYPE'),
751: x_loading_status,
752: x_loading_status) = FND_API.G_TRUE )
753: THEN
754: RAISE fnd_api.g_exc_error;
755: END IF;
756:
757: --Check for missing parameters in the p_ruleset_rec parameter
758:
759: IF (cn_api.chk_miss_null_char_para
760: ( p_ruleset_rec.ruleset_name,
761: cn_api.get_lkup_meaning('RULESET_NAME', 'RULESET_TYPE'),
762: x_loading_status,
763: x_loading_status) = FND_API.G_TRUE )
764: THEN
765: RAISE fnd_api.g_exc_error;
766: END IF;
767:
761: cn_api.get_lkup_meaning('RULESET_NAME', 'RULESET_TYPE'),
762: x_loading_status,
763: x_loading_status) = FND_API.G_TRUE )
764: THEN
765: RAISE fnd_api.g_exc_error;
766: END IF;
767:
768: IF cn_api.chk_miss_null_date_para
769: ( p_ruleset_rec.end_date,
768: IF cn_api.chk_miss_null_date_para
769: ( p_ruleset_rec.end_date,
770: cn_api.get_lkup_meaning('END_DATE', 'RULESET_TYPE'),
771: x_loading_status,
772: x_loading_status) = fnd_api.g_true
773: THEN
774: RAISE fnd_api.g_exc_error;
775: END IF;
776:
770: cn_api.get_lkup_meaning('END_DATE', 'RULESET_TYPE'),
771: x_loading_status,
772: x_loading_status) = fnd_api.g_true
773: THEN
774: RAISE fnd_api.g_exc_error;
775: END IF;
776:
777: IF cn_api.chk_miss_null_date_para
778: (p_ruleset_rec.start_date,
777: IF cn_api.chk_miss_null_date_para
778: (p_ruleset_rec.start_date,
779: cn_api.get_lkup_meaning('START_DATE', 'RULESET_TYPE'),
780: x_loading_status,
781: x_loading_status)= fnd_api.g_true
782: THEN
783: RAISE fnd_api.g_exc_error;
784: END IF;
785:
779: cn_api.get_lkup_meaning('START_DATE', 'RULESET_TYPE'),
780: x_loading_status,
781: x_loading_status)= fnd_api.g_true
782: THEN
783: RAISE fnd_api.g_exc_error;
784: END IF;
785:
786:
787: --Now check if the ruleset exists.
802: fnd_msg_pub.add;
803: END IF;
804:
805: x_loading_status := 'CN_INVALID_RULESET';
806: RAISE FND_API.G_EXC_ERROR;
807: END IF;
808:
809: IF p_ruleset_rec.module_type NOT IN ('REVCLS', 'ACCGEN', 'PECLS')
810: THEN
816: fnd_msg_pub.add;
817: END IF;
818: x_loading_status := 'CN_INVALID_RULESET_TYPE';
819:
820: RAISE fnd_api.g_exc_error;
821: END IF;
822:
823: -- check if the object version number is the same
824: OPEN l_ovn_csr;
835: fnd_msg_pub.add;
836: END IF;
837:
838: x_loading_status := 'CN_INVALID_OBJECT_VERSION';
839: RAISE FND_API.G_EXC_ERROR;
840:
841: end if;
842:
843:
850: p_ruleset_rec.module_type,
851: p_old_ruleset_rec.ruleset_id,
852: p_ruleset_rec.org_id,
853: x_loading_status,
854: x_loading_status) = fnd_api.g_true
855: THEN
856: RAISE fnd_api.g_exc_error;
857: --Error condition
858: --IF fnd_msg_pub.check_msg_level (fnd_msg_pub.g_msg_lvl_error)
852: p_ruleset_rec.org_id,
853: x_loading_status,
854: x_loading_status) = fnd_api.g_true
855: THEN
856: RAISE fnd_api.g_exc_error;
857: --Error condition
858: --IF fnd_msg_pub.check_msg_level (fnd_msg_pub.g_msg_lvl_error)
859: -- THEN
860: -- fnd_message.set_name('CN', 'CN_INVALID_RULESET');
860: -- fnd_message.set_name('CN', 'CN_INVALID_RULESET');
861: -- fnd_msg_pub.add;
862: --END IF;
863: ----x_loading_status := 'CN_INVALID_RULESET';
864: ----RAISE FND_API.G_EXC_ERROR;
865: END IF;
866: END IF;
867:
868: IF check_update_allowed
869: ( p_old_ruleset_rec.ruleset_id,
870: p_ruleset_rec.module_type,
871: x_loading_status,
872: x_loading_status,
873: P_old_ruleset_rec.org_id) = fnd_api.g_true
874: THEN
875: RAISE fnd_api.g_exc_error;
876: END IF;
877:
871: x_loading_status,
872: x_loading_status,
873: P_old_ruleset_rec.org_id) = fnd_api.g_true
874: THEN
875: RAISE fnd_api.g_exc_error;
876: END IF;
877:
878: p_ruleset_rec.object_version_number:=p_ruleset_rec.object_version_number+1;
879: cn_syin_rulesets_pkg.update_row
915: fnd_message.set_name('CN', 'CN_NO_RULES_DEFINED');
916: fnd_msg_pub.add;
917: END IF;
918: x_loading_status := 'CN_NO_RULES_DEFINED';
919: RAISE FND_API.G_EXC_ERROR;
920: END IF;
921:
922:
923: IF check_sync_allowed
924: ( p_old_ruleset_rec.ruleset_name,
925: p_old_ruleset_rec.ruleset_id,
926: p_old_ruleset_rec.org_id,
927: x_loading_status,
928: x_loading_status ) = fnd_api.g_true
929: THEN
930: RAISE fnd_api.g_exc_error;
931: END IF;
932:
926: p_old_ruleset_rec.org_id,
927: x_loading_status,
928: x_loading_status ) = fnd_api.g_true
929: THEN
930: RAISE fnd_api.g_exc_error;
931: END IF;
932:
933: cn_rulesets_pkg.sync_ruleset(p_ruleset_rec.ruleset_id,l_ruleset_status,l_env_org_id);
934:
972: END IF;
973:
974: -- End of API body.
975: -- Standard check of p_commit.
976: IF FND_API.To_Boolean( p_commit )
977: THEN
978: COMMIT WORK;
979: END IF;
980:
983: FND_MSG_PUB.Count_And_Get
984: (
985: p_count => x_msg_count ,
986: p_data => x_msg_data ,
987: p_encoded => FND_API.G_FALSE
988: );
989:
990: EXCEPTION
991: WHEN FND_API.G_EXC_ERROR THEN
987: p_encoded => FND_API.G_FALSE
988: );
989:
990: EXCEPTION
991: WHEN FND_API.G_EXC_ERROR THEN
992: ROLLBACK TO Update_Ruleset;
993: x_return_status := FND_API.G_RET_STS_ERROR ;
994:
995: FND_MSG_PUB.Count_And_Get
989:
990: EXCEPTION
991: WHEN FND_API.G_EXC_ERROR THEN
992: ROLLBACK TO Update_Ruleset;
993: x_return_status := FND_API.G_RET_STS_ERROR ;
994:
995: FND_MSG_PUB.Count_And_Get
996: (
997: p_count => x_msg_count ,
995: FND_MSG_PUB.Count_And_Get
996: (
997: p_count => x_msg_count ,
998: p_data => x_msg_data ,
999: p_encoded => FND_API.G_FALSE
1000: );
1001:
1002: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1003: ROLLBACK TO Update_Ruleset;
998: p_data => x_msg_data ,
999: p_encoded => FND_API.G_FALSE
1000: );
1001:
1002: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1003: ROLLBACK TO Update_Ruleset;
1004: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1005: FND_MSG_PUB.Count_And_Get
1006: (
1000: );
1001:
1002: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1003: ROLLBACK TO Update_Ruleset;
1004: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1005: FND_MSG_PUB.Count_And_Get
1006: (
1007: p_count => x_msg_count ,
1008: p_data => x_msg_data ,
1005: FND_MSG_PUB.Count_And_Get
1006: (
1007: p_count => x_msg_count ,
1008: p_data => x_msg_data ,
1009: p_encoded => FND_API.G_FALSE
1010: );
1011:
1012: WHEN OTHERS THEN
1013: ROLLBACK TO Update_Ruleset;
1010: );
1011:
1012: WHEN OTHERS THEN
1013: ROLLBACK TO Update_Ruleset;
1014: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1015: IF FND_MSG_PUB.Check_Msg_Level
1016: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1017: THEN
1018: FND_MSG_PUB.Add_Exc_Msg
1024: FND_MSG_PUB.Count_And_Get
1025: (
1026: p_count => x_msg_count ,
1027: p_data => x_msg_data ,
1028: p_encoded => FND_API.G_FALSE
1029: );
1030:
1031: END;
1032: