89:
90: -- Initialize message list if p_init_msg_list is set to TRUE.
91: IF fnd_api.to_boolean (p_init_msg_list)
92: THEN
93: fnd_msg_pub.initialize;
94: END IF;
95:
96: -- Initialize API return status to success
97: x_return_status := fnd_api.g_ret_sts_success;
176: COMMIT WORK;
177: END IF;
178:
179: -- Standard call to get message count and if count is 1, get message info.
180: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);
181: EXCEPTION
182: WHEN fnd_api.g_exc_error
183: THEN
184: ROLLBACK TO get_prd_quota_year;
182: WHEN fnd_api.g_exc_error
183: THEN
184: ROLLBACK TO get_prd_quota_year;
185: x_return_status := fnd_api.g_ret_sts_error;
186: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);
187: WHEN fnd_api.g_exc_unexpected_error
188: THEN
189: ROLLBACK TO get_prd_quota_year;
190: x_return_status := fnd_api.g_ret_sts_unexp_error;
187: WHEN fnd_api.g_exc_unexpected_error
188: THEN
189: ROLLBACK TO get_prd_quota_year;
190: x_return_status := fnd_api.g_ret_sts_unexp_error;
191: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);
192: WHEN OTHERS
193: THEN
194: ROLLBACK TO get_prd_quota_year;
195: x_return_status := fnd_api.g_ret_sts_unexp_error;
193: THEN
194: ROLLBACK TO get_prd_quota_year;
195: x_return_status := fnd_api.g_ret_sts_unexp_error;
196:
197: IF fnd_msg_pub.check_msg_level (fnd_msg_pub.g_msg_lvl_unexp_error)
198: THEN
199: fnd_msg_pub.add_exc_msg (g_pkg_name, l_api_name);
200: END IF;
201:
195: x_return_status := fnd_api.g_ret_sts_unexp_error;
196:
197: IF fnd_msg_pub.check_msg_level (fnd_msg_pub.g_msg_lvl_unexp_error)
198: THEN
199: fnd_msg_pub.add_exc_msg (g_pkg_name, l_api_name);
200: END IF;
201:
202: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);
203: END distribute_target;
198: THEN
199: fnd_msg_pub.add_exc_msg (g_pkg_name, l_api_name);
200: END IF;
201:
202: fnd_msg_pub.count_and_get (p_count => x_msg_count, p_data => x_msg_data, p_encoded => fnd_api.g_false);
203: END distribute_target;
204:
205:
206: PROCEDURE Distribute_Prd_Quota
300: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
301: END IF;
302: -- Initialize message list if p_init_msg_list is set to TRUE.
303: IF FND_API.to_Boolean( p_init_msg_list ) THEN
304: FND_MSG_PUB.initialize;
305: END IF;
306: -- Initialize API return status to success
307: x_return_status := FND_API.G_RET_STS_SUCCESS;
308: -- API body
310: -- 1. IF the PE concerned exists.
311:
312: IF p_pe_name IS NULL
313: THEN
314: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
315: FND_MESSAGE.SET_NAME ('CN' , 'CN_INPUT_CANT_NULL');
316: FND_MESSAGE.SET_TOKEN('INPUT_NAME', cn_api.get_lkup_meaning('PE_NAME', 'INPUT_TOKEN'));
317: FND_MSG_PUB.Add;
318: END IF;
313: THEN
314: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
315: FND_MESSAGE.SET_NAME ('CN' , 'CN_INPUT_CANT_NULL');
316: FND_MESSAGE.SET_TOKEN('INPUT_NAME', cn_api.get_lkup_meaning('PE_NAME', 'INPUT_TOKEN'));
317: FND_MSG_PUB.Add;
318: END IF;
319: RAISE FND_API.G_EXC_ERROR ;
320: END IF;
321:
339: FETCH l_quota_id_cr into f_quota_id_rec;
340:
341: IF (l_quota_id_cr%NOTFOUND)
342: THEN
343: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
344: FND_MESSAGE.SET_NAME ('CN' , 'CN_PLN_NOT_EXIST');
345: FND_MESSAGE.SET_TOKEN ('PE_NAME' , p_pe_name);
346: FND_MSG_PUB.Add;
347: END IF;
342: THEN
343: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
344: FND_MESSAGE.SET_NAME ('CN' , 'CN_PLN_NOT_EXIST');
345: FND_MESSAGE.SET_TOKEN ('PE_NAME' , p_pe_name);
346: FND_MSG_PUB.Add;
347: END IF;
348: RAISE FND_API.G_EXC_ERROR ;
349: END IF;
350:
654:
655:
656: IF p_prd_quota_tbl(i).period_name IS NULL
657: THEN
658: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
659: FND_MESSAGE.SET_NAME ('CN' , 'CN_INPUT_CANT_NULL');
660: FND_MESSAGE.SET_TOKEN('INPUT_NAME', cn_api.get_lkup_meaning('PERIOD_NAME', 'INPUT_TOKEN'));
661: FND_MSG_PUB.Add;
662: END IF;
657: THEN
658: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
659: FND_MESSAGE.SET_NAME ('CN' , 'CN_INPUT_CANT_NULL');
660: FND_MESSAGE.SET_TOKEN('INPUT_NAME', cn_api.get_lkup_meaning('PERIOD_NAME', 'INPUT_TOKEN'));
661: FND_MSG_PUB.Add;
662: END IF;
663: RAISE FND_API.G_EXC_ERROR ;
664: END IF;
665:
666: OPEN l_period_id_cr(p_prd_quota_tbl(i).period_name);
667: FETCH l_period_id_cr into f_period_id_rec;
668: IF (l_period_id_cr%NOTFOUND)
669: THEN
670: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
671: FND_MESSAGE.SET_NAME ('CN' , 'CN_PERIOD_NOT_FOUND');
672: FND_MSG_PUB.Add;
673: END IF;
674: RAISE FND_API.G_EXC_ERROR ;
668: IF (l_period_id_cr%NOTFOUND)
669: THEN
670: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
671: FND_MESSAGE.SET_NAME ('CN' , 'CN_PERIOD_NOT_FOUND');
672: FND_MSG_PUB.Add;
673: END IF;
674: RAISE FND_API.G_EXC_ERROR ;
675: END IF;
676:
681: OPEN tbl_period_quota_info_cr(tbl_period_id, l_quota_id);
682: FETCH tbl_period_quota_info_cr into f_period_quota_info_rec;
683: IF (tbl_period_quota_info_cr%NOTFOUND)
684: THEN
685: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
686: FND_MESSAGE.SET_NAME ('CN' , 'CN_PERIOD_QUOTA_NOT_EXIST');
687: FND_MESSAGE.SET_TOKEN ('PERIOD_NAME' , p_prd_quota_tbl(i).period_name);
688: FND_MESSAGE.SET_TOKEN ('PLAN_NAME' , p_pe_name);
689: FND_MSG_PUB.Add;
685: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR) THEN
686: FND_MESSAGE.SET_NAME ('CN' , 'CN_PERIOD_QUOTA_NOT_EXIST');
687: FND_MESSAGE.SET_TOKEN ('PERIOD_NAME' , p_prd_quota_tbl(i).period_name);
688: FND_MESSAGE.SET_TOKEN ('PLAN_NAME' , p_pe_name);
689: FND_MSG_PUB.Add;
690: END IF;
691: RAISE FND_API.G_EXC_ERROR ;
692: END IF;
693:
737: IF FND_API.To_Boolean( p_commit ) THEN
738: COMMIT WORK;
739: END IF;
740: -- Standard call to get message count and if count is 1, get message info.
741: FND_MSG_PUB.Count_And_Get
742: (p_count => x_msg_count ,
743: p_data => x_msg_data ,
744: p_encoded => FND_API.G_FALSE );
745: EXCEPTION
745: EXCEPTION
746: WHEN FND_API.G_EXC_ERROR THEN
747: ROLLBACK TO Distribute_Prd_Quota;
748: x_return_status := FND_API.G_RET_STS_ERROR ;
749: FND_MSG_PUB.Count_And_Get
750: (p_count => x_msg_count ,
751: p_data => x_msg_data ,
752: p_encoded => FND_API.G_FALSE );
753: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
752: p_encoded => FND_API.G_FALSE );
753: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
754: ROLLBACK TO Distribute_Prd_Quota;
755: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
756: FND_MSG_PUB.Count_And_Get
757: (p_count => x_msg_count ,
758: p_data => x_msg_data ,
759: p_encoded => FND_API.G_FALSE );
760: WHEN OTHERS THEN
759: p_encoded => FND_API.G_FALSE );
760: WHEN OTHERS THEN
761: ROLLBACK TO Distribute_Prd_Quota;
762: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
763: IF FND_MSG_PUB.Check_Msg_Level
764: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
765: THEN
766: FND_MSG_PUB.Add_Exc_Msg
767: (G_PKG_NAME ,
760: WHEN OTHERS THEN
761: ROLLBACK TO Distribute_Prd_Quota;
762: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
763: IF FND_MSG_PUB.Check_Msg_Level
764: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
765: THEN
766: FND_MSG_PUB.Add_Exc_Msg
767: (G_PKG_NAME ,
768: l_api_name );
762: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
763: IF FND_MSG_PUB.Check_Msg_Level
764: (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
765: THEN
766: FND_MSG_PUB.Add_Exc_Msg
767: (G_PKG_NAME ,
768: l_api_name );
769: END IF;
770: FND_MSG_PUB.Count_And_Get
766: FND_MSG_PUB.Add_Exc_Msg
767: (G_PKG_NAME ,
768: l_api_name );
769: END IF;
770: FND_MSG_PUB.Count_And_Get
771: (p_count => x_msg_count ,
772: p_data => x_msg_data ,
773: p_encoded => FND_API.G_FALSE );
774: END Distribute_Prd_Quota;