593: */
594:
595: PROCEDURE process_requisition(
596: p_api_version IN NUMBER := 1.0
597: ,p_Init_Msg_List IN VARCHAR2 := FND_API.G_TRUE
598: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
599: ,px_header_rec IN OUT NOCOPY po_create_requisition_sv.header_rec_type
600: ,px_line_table IN OUT NOCOPY po_create_requisition_sv.Line_Tbl_type
601: ,x_return_status OUT NOCOPY VARCHAR2
594:
595: PROCEDURE process_requisition(
596: p_api_version IN NUMBER := 1.0
597: ,p_Init_Msg_List IN VARCHAR2 := FND_API.G_TRUE
598: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
599: ,px_header_rec IN OUT NOCOPY po_create_requisition_sv.header_rec_type
600: ,px_line_table IN OUT NOCOPY po_create_requisition_sv.Line_Tbl_type
601: ,x_return_status OUT NOCOPY VARCHAR2
602: ,x_msg_count OUT NOCOPY NUMBER
605: IS
606:
607: l_api_version_number CONSTANT NUMBER := 1.0;
608: l_api_name CONSTANT VARCHAR2(30) := 'process_requisition';
609: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
610: l_msg_count NUMBER;
611: l_msg_data VARCHAR2(2000);
612: l_commit VARCHAR2(1) := FND_API.G_FALSE;
613: l_user_id NUMBER;
608: l_api_name CONSTANT VARCHAR2(30) := 'process_requisition';
609: l_return_status VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
610: l_msg_count NUMBER;
611: l_msg_data VARCHAR2(2000);
612: l_commit VARCHAR2(1) := FND_API.G_FALSE;
613: l_user_id NUMBER;
614: l_login_id NUMBER;
615: l_today DATE;
616:
779: WHERE mum.uom_code = p_uom_code;
780:
781: BEGIN
782:
783: IF fnd_api.to_boolean(P_Init_Msg_List) THEN
784: -- initialize message list
785: FND_MSG_PUB.initialize;
786: END IF;
787:
786: END IF;
787:
788: -- Standard call to check for call compatibility.
789:
790: IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
791: p_api_version,
792: l_api_name,
793: G_PKG_NAME)
794: THEN
791: p_api_version,
792: l_api_name,
793: G_PKG_NAME)
794: THEN
795: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
796: END IF;
797:
798: -- initialize return status
799: x_return_status := FND_API.G_RET_STS_SUCCESS;
795: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
796: END IF;
797:
798: -- initialize return status
799: x_return_status := FND_API.G_RET_STS_SUCCESS;
800:
801: l_header_rec := px_header_rec;
802: l_line_tbl := px_line_table;
803:
1551:
1552: l_create_req_supply := PO_SUPPLY.create_req(l_header_rec.requisition_header_id,
1553: 'REQ HDR');
1554:
1555: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1556: RAISE FND_API.G_EXC_ERROR;
1557: --Bug 13254403 Added call to maintain_mtl_supply
1558: ELSE
1559: l_return_value := PO_SUPPLY.maintain_mtl_supply;
1552: l_create_req_supply := PO_SUPPLY.create_req(l_header_rec.requisition_header_id,
1553: 'REQ HDR');
1554:
1555: IF l_return_status <> FND_API.G_RET_STS_SUCCESS THEN
1556: RAISE FND_API.G_EXC_ERROR;
1557: --Bug 13254403 Added call to maintain_mtl_supply
1558: ELSE
1559: l_return_value := PO_SUPPLY.maintain_mtl_supply;
1560: IF NOT l_return_value THEN
1557: --Bug 13254403 Added call to maintain_mtl_supply
1558: ELSE
1559: l_return_value := PO_SUPPLY.maintain_mtl_supply;
1560: IF NOT l_return_value THEN
1561: RAISE FND_API.G_EXC_ERROR;
1562: END IF;
1563: END IF;
1564:
1565:
1627: WHEN INVALID_UNIT_OF_MEASURE THEN
1628: po_message_s.app_error('PO_RI_M_INVALID_UOM');
1629: raise;
1630:
1631: WHEN FND_API.G_EXC_ERROR THEN
1632: NULL;
1633:
1634: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1635: FND_MESSAGE.SET_NAME('PO', 'PO_UNEXPECTED_EXEC_ERRORS');
1630:
1631: WHEN FND_API.G_EXC_ERROR THEN
1632: NULL;
1633:
1634: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1635: FND_MESSAGE.SET_NAME('PO', 'PO_UNEXPECTED_EXEC_ERRORS');
1636: FND_MESSAGE.SET_TOKEN('ROUTINE', l_api_name, TRUE);
1637: FND_MESSAGE.SET_TOKEN('SQLERRM', sqlerrm, TRUE);
1638: FND_MSG_PUB.ADD;
1638: FND_MSG_PUB.ADD;
1639: fnd_msg_pub.count_and_get
1640: ( p_count => x_msg_count
1641: , p_data => x_msg_data);
1642: x_return_status := FND_API.G_RET_STS_ERROR;
1643:
1644: WHEN OTHERS THEN
1645: FND_MESSAGE.SET_NAME('PO', 'PO_UNEXPECTED_EXEC_ERRORS');
1646: FND_MESSAGE.SET_TOKEN('ROUTINE', l_api_name, TRUE);
1648: FND_MSG_PUB.ADD;
1649: fnd_msg_pub.count_and_get
1650: ( p_count => x_msg_count
1651: , p_data => x_msg_data);
1652: x_return_status := FND_API.G_RET_STS_ERROR;
1653:
1654: END;
1655:
1656: END PO_CREATE_REQUISITION_SV;