124: END IF;
125:
126: -- Initialize message list if p_init_msg_list is set to TRUE
127: IF FND_API.To_Boolean(p_init_msg_list) THEN
128: FND_MSG_PUB.Initialize;
129: END IF;
130:
131: --initialize ver spec score;
132: l_ver_spec_score := 0;
147: FND_MESSAGE.Set_Name('AHL','AHL_MC_PATH_NODE_INV');
148: FND_MESSAGE.Set_Token('MC_ID',l_pos_rec.mc_id);
149: FND_MESSAGE.Set_Token('VER',l_pos_rec.version_number);
150: FND_MESSAGE.Set_Token('POS_KEY',l_pos_rec.position_key);
151: FND_MSG_PUB.ADD;
152: END IF;
153: CLOSE check_mc_ids_csr;
154:
155: IF (l_pos_rec.version_number IS NOT NULL AND
168: FND_MESSAGE.Set_Name('AHL','AHL_MC_PATH_RELNSHIP_INV');
169: FND_MESSAGE.Set_Token('MC_ID',p_path_position_tbl(i+1).mc_id);
170: FND_MESSAGE.Set_Token('VER',p_path_position_tbl(i+1).version_number);
171: FND_MESSAGE.Set_Token('POS_KEY',l_pos_rec.position_key);
172: FND_MSG_PUB.ADD;
173: END IF;
174: CLOSE check_mc_relationships_csr;
175: END IF;
176:
189: l_return_val);
190: IF NOT(l_return_val) THEN
191: FND_MESSAGE.Set_Name('AHL','AHL_MC_POSREF_INVALID');
192: FND_MESSAGE.Set_Token('POSREF',p_position_ref_meaning);
193: FND_MSG_PUB.ADD;
194: END IF;
195: END IF;
196: ELSE
197: l_position_ref_code := p_position_ref_code;
197: l_position_ref_code := p_position_ref_code;
198: END IF;
199:
200: -- Check Error Message stack.
201: l_msg_count := FND_MSG_PUB.count_msg;
202: IF l_msg_count > 0 THEN
203: RAISE FND_API.G_EXC_ERROR;
204: END IF;
205:
215: l_sib_pos_ref_code := get_posref_by_path(l_path_tbl, FND_API.G_TRUE);
216: IF (l_sib_pos_ref_code = l_position_ref_code) THEN
217: FND_MESSAGE.Set_Name('AHL','AHL_MC_POSREF_DUPLICATE');
218: FND_MESSAGE.Set_Token('POSREF',l_position_ref_code);
219: FND_MSG_PUB.ADD;
220: END IF;
221: END LOOP;
222: CLOSE get_sibling_poskey_csr;
223: END IF;
222: CLOSE get_sibling_poskey_csr;
223: END IF;
224:
225: -- Check Error Message stack.
226: l_msg_count := FND_MSG_PUB.count_msg;
227: IF l_msg_count > 0 THEN
228: RAISE FND_API.G_EXC_ERROR;
229: END IF;
230:
379: IF FND_API.TO_BOOLEAN(p_commit) THEN
380: COMMIT WORK;
381: END IF;
382: -- Standard call to get message count and if count is 1, get message info
383: FND_MSG_PUB.Count_And_Get
384: ( p_count => x_msg_count,
385: p_data => x_msg_data,
386: p_encoded => fnd_api.g_false
387: );
388: EXCEPTION
389: WHEN FND_API.G_EXC_ERROR THEN
390: Rollback to Create_Position_ID_pvt;
391: x_return_status := FND_API.G_RET_STS_ERROR;
392: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
393: p_data => x_msg_data,
394: p_encoded => fnd_api.g_false);
395: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
396: Rollback to Create_Position_ID_pvt;
394: p_encoded => fnd_api.g_false);
395: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
396: Rollback to Create_Position_ID_pvt;
397: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
398: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
399: p_data => x_msg_data,
400: p_encoded => fnd_api.g_false);
401: WHEN OTHERS THEN
402: Rollback to Create_Position_ID_pvt;
400: p_encoded => fnd_api.g_false);
401: WHEN OTHERS THEN
402: Rollback to Create_Position_ID_pvt;
403: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
404: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
405: p_procedure_name => l_api_name,
406: p_error_text => SQLERRM);
407: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
408: p_data => x_msg_data,
403: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
404: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
405: p_procedure_name => l_api_name,
406: p_error_text => SQLERRM);
407: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
408: p_data => x_msg_data,
409: p_encoded => fnd_api.g_false);
410:
411: END Create_Position_ID;
514: END IF;
515:
516: -- Initialize message list if p_init_msg_list is set to TRUE
517: IF FND_API.To_Boolean(p_init_msg_list) THEN
518: FND_MSG_PUB.Initialize;
519: END IF;
520:
521: --Fetch the position informations for the instance
522: OPEN get_last_uc_rec_csr(p_csi_item_instance_id);
607: END IF;
608: CLOSE get_last_uc_rec_csr;
609:
610: -- Standard call to get message count and if count is 1, get message info
611: FND_MSG_PUB.Count_And_Get
612: ( p_count => x_msg_count,
613: p_data => x_msg_data,
614: p_encoded => fnd_api.g_false
615: );
616: EXCEPTION
617: WHEN FND_API.G_EXC_ERROR THEN
618: Rollback to Map_Instance_To_Positions_pvt;
619: x_return_status := FND_API.G_RET_STS_ERROR;
620: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
621: p_data => x_msg_data,
622: p_encoded => fnd_api.g_false);
623: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
624: Rollback to Map_Instance_To_Positions_pvt;
622: p_encoded => fnd_api.g_false);
623: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
624: Rollback to Map_Instance_To_Positions_pvt;
625: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
626: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
627: p_data => x_msg_data,
628: p_encoded => fnd_api.g_false);
629: WHEN OTHERS THEN
630: Rollback to Map_Instance_To_Positions_pvt;
628: p_encoded => fnd_api.g_false);
629: WHEN OTHERS THEN
630: Rollback to Map_Instance_To_Positions_pvt;
631: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
632: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
633: p_procedure_name => l_api_name,
634: p_error_text => SQLERRM);
635: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
636: p_data => x_msg_data,
631: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
632: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
633: p_procedure_name => l_api_name,
634: p_error_text => SQLERRM);
635: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
636: p_data => x_msg_data,
637: p_encoded => fnd_api.g_false);
638: END Map_Instance_To_Positions;
639:
718: END IF;
719:
720: -- Initialize message list if p_init_msg_list is set to TRUE
721: IF FND_API.To_Boolean(p_init_msg_list) THEN
722: FND_MSG_PUB.Initialize;
723: END IF;
724:
725: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
726: fnd_log.string(fnd_log.level_statement,l_full_name,'-- p_position_id --'||p_position_id);
869: COMMIT WORK;
870: END IF;
871:
872: -- Standard call to get message count and if count is 1, get message info
873: FND_MSG_PUB.Count_And_Get
874: ( p_count => x_msg_count,
875: p_data => x_msg_data,
876: p_encoded => fnd_api.g_false
877: );
883: EXCEPTION
884: WHEN FND_API.G_EXC_ERROR THEN
885: Rollback to map_position_to_instances_pvt;
886: x_return_status := FND_API.G_RET_STS_ERROR;
887: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
888: p_data => x_msg_data,
889: p_encoded => fnd_api.g_false);
890: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
891: Rollback to map_position_to_instances_pvt;
889: p_encoded => fnd_api.g_false);
890: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
891: Rollback to map_position_to_instances_pvt;
892: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
893: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
894: p_data => x_msg_data,
895: p_encoded => fnd_api.g_false);
896: WHEN OTHERS THEN
897: Rollback to map_position_to_instances_pvt;
895: p_encoded => fnd_api.g_false);
896: WHEN OTHERS THEN
897: Rollback to map_position_to_instances_pvt;
898: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
899: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
900: p_procedure_name => l_api_name,
901: p_error_text => SQLERRM);
902: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
903: p_data => x_msg_data,
898: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
899: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
900: p_procedure_name => l_api_name,
901: p_error_text => SQLERRM);
902: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
903: p_data => x_msg_data,
904: p_encoded => fnd_api.g_false);
905: END Map_Position_To_Instances;
906:
1087: END IF;
1088:
1089: -- Initialize message list if p_init_msg_list is set to TRUE
1090: IF FND_API.To_Boolean(p_init_msg_list) THEN
1091: FND_MSG_PUB.Initialize;
1092: END IF;
1093:
1094: --Step 0) Validate that p_csi_item_instance is not null and valid
1095: IF (p_csi_item_instance_id IS NULL) THEN
1093:
1094: --Step 0) Validate that p_csi_item_instance is not null and valid
1095: IF (p_csi_item_instance_id IS NULL) THEN
1096: FND_MESSAGE.Set_Name('AHL','AHL_MC_POS_INSTANCE_ID_NULL');
1097: FND_MSG_PUB.ADD;
1098: RAISE FND_API.G_EXC_ERROR;
1099: END IF;
1100: --Validate that the input instance is a unit
1101: OPEN check_instance_top_csr (p_csi_item_instance_id);
1101: OPEN check_instance_top_csr (p_csi_item_instance_id);
1102: FETCH check_instance_top_csr INTO l_dummy;
1103: IF (check_instance_top_csr%NOTFOUND) THEN
1104: FND_MESSAGE.Set_Name('AHL','AHL_MC_POS_INSTANCE_ID_INV');
1105: FND_MSG_PUB.ADD;
1106: RAISE FND_API.G_EXC_ERROR;
1107: END IF;
1108: CLOSE check_instance_top_csr;
1109:
1125: -- Populate the lowest level instance id based on this query.
1126: --If table is less than 1 in size, this is invalid path
1127: IF (l_path_tbl.COUNT<1) THEN
1128: FND_MESSAGE.Set_Name('AHL','AHL_MC_POS_PATH_ID_INV');
1129: FND_MSG_PUB.ADD;
1130: RAISE FND_API.G_EXC_ERROR;
1131:
1132: --If there is only 1 row, then lowest level UC = p_csi_instance_id
1133: ELSIF (l_path_tbl.COUNT =1) THEN
1248: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level)THEN
1249: fnd_log.string(fnd_log.level_procedure, l_full_name||'.end', 'At the end of PLSQL procedure. About to count and get error messages.');
1250: END IF;
1251: -- Standard call to get message count and if count is 1, get message info
1252: FND_MSG_PUB.Count_And_Get
1253: ( p_count => x_msg_count,
1254: p_data => x_msg_data,
1255: p_encoded => fnd_api.g_false
1256: );
1257: EXCEPTION
1258: WHEN FND_API.G_EXC_ERROR THEN
1259: Rollback to Get_Pos_Empty_Instance_pvt;
1260: x_return_status := FND_API.G_RET_STS_ERROR;
1261: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1262: p_data => x_msg_data,
1263: p_encoded => fnd_api.g_false);
1264: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1265: Rollback to Get_Pos_Empty_Instance_pvt;
1263: p_encoded => fnd_api.g_false);
1264: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1265: Rollback to Get_Pos_Empty_Instance_pvt;
1266: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1267: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1268: p_data => x_msg_data,
1269: p_encoded => fnd_api.g_false);
1270: WHEN OTHERS THEN
1271: Rollback to Get_Pos_Empty_Instance_pvt;
1269: p_encoded => fnd_api.g_false);
1270: WHEN OTHERS THEN
1271: Rollback to Get_Pos_Empty_Instance_pvt;
1272: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1273: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
1274: p_procedure_name => l_api_name,
1275: p_error_text => SQLERRM);
1276: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1277: p_data => x_msg_data,
1272: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1273: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
1274: p_procedure_name => l_api_name,
1275: p_error_text => SQLERRM);
1276: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1277: p_data => x_msg_data,
1278: p_encoded => fnd_api.g_false);
1279: END Get_Pos_Instance;
1280:
1422: END IF;
1423:
1424: -- Initialize message list if p_init_msg_list is set to TRUE
1425: IF FND_API.To_Boolean(p_init_msg_list) THEN
1426: FND_MSG_PUB.Initialize;
1427: END IF;
1428:
1429: --Check Status of MC allows for editing
1430: OPEN check_mc_status_csr(p_to_mc_header_id);
1431: FETCH check_mc_status_csr INTO l_status_code, l_status;
1432: IF (check_mc_status_csr%NOTFOUND) THEN
1433: FND_MESSAGE.Set_Name('AHL','AHL_UC_MC_HEADER_ID_INVALID');
1434: FND_MESSAGE.Set_Token('MC_HEADER_ID',p_to_mc_header_id);
1435: FND_MSG_PUB.ADD;
1436: CLOSE check_mc_status_csr;
1437: RAISE FND_API.G_EXC_ERROR;
1438: ELSIF ( l_status_code <> 'DRAFT' AND
1439: l_status_code <> 'APPROVAL_REJECTED') THEN
1438: ELSIF ( l_status_code <> 'DRAFT' AND
1439: l_status_code <> 'APPROVAL_REJECTED') THEN
1440: FND_MESSAGE.Set_Name('AHL','AHL_MC_EDIT_INV_MC');
1441: FND_MESSAGE.Set_Token('STATUS', l_status);
1442: FND_MSG_PUB.ADD;
1443: CLOSE check_mc_status_csr;
1444: RAISE FND_API.G_EXC_ERROR;
1445: END IF;
1446: CLOSE check_mc_status_csr;
1515: IF FND_API.TO_BOOLEAN(p_commit) THEN
1516: COMMIT WORK;
1517: END IF;
1518: -- Standard call to get message count and if count is 1, get message info
1519: FND_MSG_PUB.Count_And_Get
1520: ( p_count => x_msg_count,
1521: p_data => x_msg_data,
1522: p_encoded => fnd_api.g_false
1523: );
1524: EXCEPTION
1525: WHEN FND_API.G_EXC_ERROR THEN
1526: Rollback to Copy_Positions_For_Mc_pvt;
1527: x_return_status := FND_API.G_RET_STS_ERROR;
1528: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1529: p_data => x_msg_data,
1530: p_encoded => fnd_api.g_false);
1531: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1532: Rollback to Copy_Positions_For_Mc_pvt;
1530: p_encoded => fnd_api.g_false);
1531: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1532: Rollback to Copy_Positions_For_Mc_pvt;
1533: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1534: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1535: p_data => x_msg_data,
1536: p_encoded => fnd_api.g_false);
1537: WHEN OTHERS THEN
1538: Rollback to Copy_Positions_For_Mc_pvt;
1536: p_encoded => fnd_api.g_false);
1537: WHEN OTHERS THEN
1538: Rollback to Copy_Positions_For_Mc_pvt;
1539: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1540: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
1541: p_procedure_name => l_api_name,
1542: p_error_text => SQLERRM);
1543: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1544: p_data => x_msg_data,
1539: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1540: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
1541: p_procedure_name => l_api_name,
1542: p_error_text => SQLERRM);
1543: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1544: p_data => x_msg_data,
1545: p_encoded => fnd_api.g_false);
1546: END Copy_Positions_For_MC;
1547:
1615: END IF;
1616:
1617: -- Initialize message list if p_init_msg_list is set to TRUE
1618: IF FND_API.To_Boolean(p_init_msg_list) THEN
1619: FND_MSG_PUB.Initialize;
1620: END IF;
1621:
1622: --Fetch the to mc_header_id information
1623: OPEN get_mc_id_ver_csr(p_to_mc_header_id);
1625: IF (get_mc_id_ver_csr%NOTFOUND) THEN
1626: FND_MESSAGE.Set_Name('AHL','AHL_MC_HEADER_ID_INVALID');
1627: FND_MESSAGE.Set_Token('NAME','');
1628: FND_MESSAGE.Set_Token('MC_HEADER_ID',p_to_mc_header_id);
1629: FND_MSG_PUB.ADD;
1630: CLOSE get_mc_id_ver_csr;
1631: RAISE FND_API.G_EXC_ERROR;
1632: END IF;
1633: CLOSE get_mc_id_ver_csr;
1679: FETCH get_path_position_ref_csr INTO l_pos_ref_code;
1680: CLOSE get_path_position_ref_csr;
1681:
1682: -- Check Error Message stack.
1683: x_msg_count := FND_MSG_PUB.count_msg;
1684: IF x_msg_count > 0 THEN
1685: RAISE FND_API.G_EXC_ERROR;
1686: END IF;
1687:
1702: -- Suppress the validation errors from Create API.
1703: IF (l_return_status = FND_API.G_RET_STS_ERROR) THEN
1704: --Suppress the expected errors
1705: --Clean out the messages
1706: FND_MSG_PUB.Initialize;
1707: x_position_id := null;
1708: x_return_status := FND_API.G_RET_STS_SUCCESS;
1709: x_msg_count := 0;
1710: x_msg_data := null;
1727: COMMIT WORK;
1728: END IF;
1729:
1730: -- Standard call to get message count and if count is 1, get message info
1731: FND_MSG_PUB.Count_And_Get
1732: ( p_count => x_msg_count,
1733: p_data => x_msg_data,
1734: p_encoded => fnd_api.g_false
1735: );
1736: EXCEPTION
1737: WHEN FND_API.G_EXC_ERROR THEN
1738: Rollback to Copy_Position_pvt;
1739: x_return_status := FND_API.G_RET_STS_ERROR;
1740: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1741: p_data => x_msg_data,
1742: p_encoded => fnd_api.g_false);
1743: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1744: Rollback to Copy_Position_pvt;
1742: p_encoded => fnd_api.g_false);
1743: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1744: Rollback to Copy_Position_pvt;
1745: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1746: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1747: p_data => x_msg_data,
1748: p_encoded => fnd_api.g_false);
1749: WHEN OTHERS THEN
1750: Rollback to Copy_Position_pvt;
1748: p_encoded => fnd_api.g_false);
1749: WHEN OTHERS THEN
1750: Rollback to Copy_Position_pvt;
1751: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1752: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
1753: p_procedure_name => l_api_name,
1754: p_error_text => SQLERRM);
1755: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1756: p_data => x_msg_data,
1751: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1752: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
1753: p_procedure_name => l_api_name,
1754: p_error_text => SQLERRM);
1755: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1756: p_data => x_msg_data,
1757: p_encoded => fnd_api.g_false);
1758: END Copy_Position;
1759:
1842: END IF;
1843:
1844: -- Initialize message list if p_init_msg_list is set to TRUE
1845: IF FND_API.To_Boolean(p_init_msg_list) THEN
1846: FND_MSG_PUB.Initialize;
1847: END IF;
1848:
1849: --Check Status of MC allows for editing
1850: OPEN check_mc_status_csr(p_mc_header_id);
1852: IF (check_mc_status_csr%NOTFOUND) THEN
1853: FND_MESSAGE.Set_Name('AHL','AHL_MC_HEADER_ID_INVALID');
1854: FND_MESSAGE.Set_Token('NAME','');
1855: FND_MESSAGE.Set_Token('MC_HEADER_ID',p_mc_header_id);
1856: FND_MSG_PUB.ADD;
1857: CLOSE check_mc_status_csr;
1858: RAISE FND_API.G_EXC_ERROR;
1859: ELSIF ( l_status_code <> 'DRAFT' AND
1860: l_status_code <> 'APPROVAL_REJECTED') THEN
1859: ELSIF ( l_status_code <> 'DRAFT' AND
1860: l_status_code <> 'APPROVAL_REJECTED') THEN
1861: FND_MESSAGE.Set_Name('AHL','AHL_MC_EDIT_INV_MC');
1862: FND_MESSAGE.Set_Token('STATUS', l_status);
1863: FND_MSG_PUB.ADD;
1864: CLOSE check_mc_status_csr;
1865: RAISE FND_API.G_EXC_ERROR;
1866: END IF;
1867: CLOSE check_mc_status_csr;
1927: IF FND_API.TO_BOOLEAN(p_commit) THEN
1928: COMMIT WORK;
1929: END IF;
1930: -- Standard call to get message count and if count is 1, get message info
1931: FND_MSG_PUB.Count_And_Get
1932: ( p_count => x_msg_count,
1933: p_data => x_msg_data,
1934: p_encoded => fnd_api.g_false
1935: );
1936: EXCEPTION
1937: WHEN FND_API.G_EXC_ERROR THEN
1938: Rollback to Delete_Positions_For_Mc_pvt;
1939: x_return_status := FND_API.G_RET_STS_ERROR;
1940: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1941: p_data => x_msg_data,
1942: p_encoded => fnd_api.g_false);
1943: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1944: Rollback to Delete_Positions_For_Mc_pvt;
1942: p_encoded => fnd_api.g_false);
1943: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1944: Rollback to Delete_Positions_For_Mc_pvt;
1945: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1946: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1947: p_data => x_msg_data,
1948: p_encoded => fnd_api.g_false);
1949: WHEN OTHERS THEN
1950: Rollback to Delete_Positions_For_Mc_pvt;
1948: p_encoded => fnd_api.g_false);
1949: WHEN OTHERS THEN
1950: Rollback to Delete_Positions_For_Mc_pvt;
1951: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1952: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
1953: p_procedure_name => l_api_name,
1954: p_error_text => SQLERRM);
1955: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1956: p_data => x_msg_data,
1951: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1952: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
1953: p_procedure_name => l_api_name,
1954: p_error_text => SQLERRM);
1955: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1956: p_data => x_msg_data,
1957: p_encoded => fnd_api.g_false);
1958: END Delete_Positions_For_MC;
1959:
2555: END IF;
2556:
2557: -- Initialize message list if p_init_msg_list is set to TRUE
2558: IF FND_API.To_Boolean(p_init_msg_list) THEN
2559: FND_MSG_PUB.Initialize;
2560: END IF;
2561:
2562: --Fetch the position informations for the instance
2563: OPEN get_last_uc_rec_csr(p_csi_item_instance_id);
2634: end if;
2635:
2636: -- SATHAPLI::FP OGMA Issue# 105 - Non-Serialized Item Maintenance, 21-Dec-2007
2637: -- There is no need to call the API Create_Position_ID, if there are pending validation errors.
2638: x_msg_count := FND_MSG_PUB.count_msg;
2639: IF x_msg_count > 0 THEN
2640: RAISE FND_API.G_EXC_ERROR;
2641: END IF;
2642:
2665: COMMIT WORK;
2666: END IF;
2667:
2668: -- Standard call to get message count and if count is 1, get message info
2669: FND_MSG_PUB.Count_And_Get
2670: ( p_count => x_msg_count,
2671: p_data => x_msg_data,
2672: p_encoded => fnd_api.g_false
2673: );
2674: EXCEPTION
2675: WHEN FND_API.G_EXC_ERROR THEN
2676: Rollback to Map_Instance_To_Pos_ID_pvt;
2677: x_return_status := FND_API.G_RET_STS_ERROR;
2678: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2679: p_data => x_msg_data,
2680: p_encoded => fnd_api.g_false);
2681: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2682: Rollback to Map_Instance_To_Pos_ID_pvt;
2680: p_encoded => fnd_api.g_false);
2681: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2682: Rollback to Map_Instance_To_Pos_ID_pvt;
2683: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2684: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2685: p_data => x_msg_data,
2686: p_encoded => fnd_api.g_false);
2687: WHEN OTHERS THEN
2688: Rollback to Map_Instance_To_Pos_ID_pvt;
2686: p_encoded => fnd_api.g_false);
2687: WHEN OTHERS THEN
2688: Rollback to Map_Instance_To_Pos_ID_pvt;
2689: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2690: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
2691: p_procedure_name => l_api_name,
2692: p_error_text => SQLERRM);
2693: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2694: p_data => x_msg_data,
2689: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2690: Fnd_Msg_Pub.add_exc_msg( p_pkg_name => G_PKG_NAME,
2691: p_procedure_name => l_api_name,
2692: p_error_text => SQLERRM);
2693: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2694: p_data => x_msg_data,
2695: p_encoded => fnd_api.g_false);
2696:
2697: END Map_Instance_To_Pos_Id;