1: PACKAGE BODY AHL_PP_MATERIALS_PVT AS
2: /* $Header: AHLVPPMB.pls 120.15.12010000.5 2009/01/09 00:41:02 sikumar ship $*/
3: --
4: -----------------------
5: -- Declare Constants --
3: --
4: -----------------------
5: -- Declare Constants --
6: -----------------------
7: G_PKG_NAME VARCHAR2(30) := 'AHL_PP_MATERIALS_PVT';
8: G_DEBUG VARCHAR2(1) := AHL_DEBUG_PUB.is_log_enabled;
9:
10: -------------------------------------------------
11: -- Declare Locally used Record and Table Types --
1954: p_data => x_msg_data);
1955: IF G_DEBUG='Y' THEN
1956: AHL_DEBUG_PUB.log_app_messages (
1957: x_msg_count, x_msg_data, 'ERROR' );
1958: AHL_DEBUG_PUB.debug( 'ahl_pp_materials_pvt. Create Material Reqst','+PPMRP+');
1959: -- Check if API is called in debug mode. If yes, disable debug.
1960: AHL_DEBUG_PUB.disable_debug;
1961: END IF;
1962:
1969: IF G_DEBUG='Y' THEN
1970: -- Debug info.
1971: AHL_DEBUG_PUB.log_app_messages (
1972: x_msg_count, x_msg_data, 'UNEXPECTED ERROR' );
1973: AHL_DEBUG_PUB.debug( 'ahl_pp_materials_pvt. Create Material Reqst','+PPMRP+');
1974: -- Check if API is called in debug mode. If yes, disable debug.
1975: AHL_DEBUG_PUB.disable_debug;
1976: END IF;
1977: WHEN OTHERS THEN
1978: ROLLBACK TO create_material_reqst;
1979: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1980: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1981: THEN
1982: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_PP_MATERIALS_PVT',
1983: p_procedure_name => 'CREATE_MATERIAL_REQST',
1984: p_error_text => SUBSTR(SQLERRM,1,240));
1985: END IF;
1986: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
1989: IF G_DEBUG='Y' THEN
1990: -- Debug info.
1991: AHL_DEBUG_PUB.log_app_messages (
1992: x_msg_count, x_msg_data, 'SQL ERROR' );
1993: AHL_DEBUG_PUB.debug( 'ahl_pp_materials_pvt. Create Material Reqst','+PPMRP+');
1994: -- Check if API is called in debug mode. If yes, disable debug.
1995: AHL_DEBUG_PUB.disable_debug;
1996: END IF;
1997: END Create_Material_Reqst;
2017: -- x_msg_count OUT NUMBER Required
2018: -- x_msg_data OUT VARCHAR2 Required
2019: --
2020: -- Update Material Request Parameters:
2021: -- p_x_req_material_tbl IN OUT NOCOPY AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type,
2022: -- Contains material information to perform material reservation
2023: --
2024: -- Version :
2025: -- Initial Version 1.0
2031: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
2032: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
2033: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
2034: p_module_type IN VARCHAR2 := NULL,
2035: p_x_req_material_tbl IN OUT NOCOPY AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type,
2036: x_return_status OUT NOCOPY VARCHAR2,
2037: x_msg_count OUT NOCOPY NUMBER,
2038: x_msg_data OUT NOCOPY VARCHAR2
2039: )
2821: p_data => x_msg_data);
2822: IF G_DEBUG='Y' THEN
2823: AHL_DEBUG_PUB.log_app_messages (
2824: x_msg_count, x_msg_data, 'ERROR' );
2825: AHL_DEBUG_PUB.debug( 'ahl_pp_materials_pvt. Update Material Reqst','+PPMRP+');
2826: -- Check if API is called in debug mode. If yes, disable debug.
2827: AHL_DEBUG_PUB.disable_debug;
2828: END IF;
2829: WHEN FND_API.G_EXC_ERROR THEN
2835: IF G_DEBUG='Y' THEN
2836: -- Debug info.
2837: AHL_DEBUG_PUB.log_app_messages (
2838: x_msg_count, x_msg_data, 'UNEXPECTED ERROR' );
2839: AHL_DEBUG_PUB.debug( 'ahl_pp_materials_pvt. Update Material Reqst','+PPMRP+');
2840: -- Check if API is called in debug mode. If yes, disable debug.
2841: AHL_DEBUG_PUB.disable_debug;
2842: END IF;
2843: WHEN OTHERS THEN
2844: ROLLBACK TO update_material_reqst;
2845: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2846: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
2847: THEN
2848: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_PP_MATERIALS_PVT',
2849: p_procedure_name => 'UPDATE_MATERIAL_REQST',
2850: p_error_text => SUBSTR(SQLERRM,1,240));
2851: END IF;
2852: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
2855: IF G_DEBUG='Y' THEN
2856: -- Debug info.
2857: AHL_DEBUG_PUB.log_app_messages (
2858: x_msg_count, x_msg_data, 'SQL ERROR' );
2859: AHL_DEBUG_PUB.debug( 'ahl_pp_materials_pvt. Update Material Reqst','+PPMRP+');
2860: -- Check if API is called in debug mode. If yes, disable debug.
2861: AHL_DEBUG_PUB.disable_debug;
2862: END IF;
2863: END Update_Material_Reqst;
2882: -- x_msg_count OUT NUMBER Required
2883: -- x_msg_data OUT VARCHAR2 Required
2884: --
2885: -- Remove Material Request Parameters:
2886: -- p_x_req_material_tbl IN OUT NOCOPY AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type,
2887: -- Contains material information to perform material reservation
2888: --
2889: -- Version :
2890: -- Initial Version 1.0
2895: p_init_msg_list IN VARCHAR2 := Fnd_Api.g_false,
2896: p_commit IN VARCHAR2 := Fnd_Api.g_false,
2897: p_validation_level IN NUMBER := Fnd_Api.g_valid_level_full,
2898: p_module_type IN VARCHAR2 := 'JSP',
2899: p_x_req_material_tbl IN OUT NOCOPY AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type,
2900: x_return_status OUT NOCOPY VARCHAR2,
2901: x_msg_count OUT NOCOPY NUMBER,
2902: x_msg_data OUT NOCOPY VARCHAR2
2903: )
3035: -- Check if API is called in debug mode. If yes, enable debug.
3036: IF G_DEBUG='Y' THEN
3037: Ahl_Debug_Pub.enable_debug;
3038: -- Debug info.
3039: Ahl_Debug_Pub.debug( 'enter ahl_pp_materials_pvt Remove Material Request ','+MAATP+');
3040: --
3041: END IF;
3042: -- Standard call to check for call compatibility.
3043: IF Fnd_Api.to_boolean(p_init_msg_list)
3309:
3310: IF G_DEBUG='Y' THEN
3311: Ahl_Debug_Pub.log_app_messages (
3312: x_msg_count, x_msg_data, 'ERROR' );
3313: Ahl_Debug_Pub.debug( 'ahl_pp_materials_pvt. Remove Material Request ','+MAMRP+');
3314: -- Check if API is called in debug mode. If yes, disable debug.
3315: Ahl_Debug_Pub.disable_debug;
3316: END IF;
3317: WHEN Fnd_Api.G_EXC_ERROR THEN
3323: IF G_DEBUG='Y' THEN
3324: -- Debug info.
3325: Ahl_Debug_Pub.log_app_messages (
3326: x_msg_count, x_msg_data, 'UNEXPECTED ERROR' );
3327: Ahl_Debug_Pub.debug( 'ahl_pp_materials_pvt. Remove Material Request ','+MAMRP+');
3328: -- Check if API is called in debug mode. If yes, disable debug.
3329: Ahl_Debug_Pub.disable_debug;
3330: END IF;
3331: WHEN OTHERS THEN
3332: ROLLBACK TO remove_material_request;
3333: X_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
3334: IF Fnd_Msg_Pub.check_msg_level(Fnd_Msg_Pub.G_MSG_LVL_UNEXP_ERROR)
3335: THEN
3336: Fnd_Msg_Pub.add_exc_msg(p_pkg_name => 'AHL_PP_MATERIALS_PVT',
3337: p_procedure_name => 'REMOVE_MATERIAL_REQUEST',
3338: p_error_text => SUBSTR(SQLERRM,1,240));
3339: END IF;
3340: Fnd_Msg_Pub.count_and_get( p_encoded => Fnd_Api.G_FALSE,
3344: IF G_DEBUG='Y' THEN
3345: -- Debug info.
3346: Ahl_Debug_Pub.log_app_messages (
3347: x_msg_count, x_msg_data, 'SQL ERROR' );
3348: Ahl_Debug_Pub.debug( 'ahl_pp_materials_pvt. Remove Material Request ','+MTMRP+');
3349: -- Check if API is called in debug mode. If yes, disable debug.
3350: Ahl_Debug_Pub.disable_debug;
3351: END IF;
3352: END Remove_Material_Request;
3375: -- x_msg_count OUT NUMBER Required
3376: -- x_msg_data OUT VARCHAR2 Required
3377: --
3378: -- Process Material Request Parameters:
3379: -- p_x_req_material_tbl IN OUT NOCOPY AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type,
3380: -- Contains material information to perform material reservation depending
3381: -- on operation flag
3382: --
3383: -- Version :
3390: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
3391: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
3392: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
3393: p_module_type IN VARCHAR2 := NULL,
3394: p_x_req_material_tbl IN OUT NOCOPY AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type,
3395: x_return_status OUT NOCOPY VARCHAR2,
3396: x_msg_count OUT NOCOPY NUMBER,
3397: x_msg_data OUT NOCOPY VARCHAR2
3398: )
3404: l_job_return_status VARCHAR2(1);
3405: l_msg_data VARCHAR2(2000);
3406: l_interface_flag VARCHAR2(1) := NULL;
3407: l_called_module VARCHAR2(10) := 'UI';
3408: l_req_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3409: l_req_cr_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3410: l_req_up_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3411: l_req_re_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3412: l_commit VARCHAR2(30) := Fnd_Api.G_FALSE;
3405: l_msg_data VARCHAR2(2000);
3406: l_interface_flag VARCHAR2(1) := NULL;
3407: l_called_module VARCHAR2(10) := 'UI';
3408: l_req_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3409: l_req_cr_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3410: l_req_up_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3411: l_req_re_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3412: l_commit VARCHAR2(30) := Fnd_Api.G_FALSE;
3413:
3406: l_interface_flag VARCHAR2(1) := NULL;
3407: l_called_module VARCHAR2(10) := 'UI';
3408: l_req_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3409: l_req_cr_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3410: l_req_up_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3411: l_req_re_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3412: l_commit VARCHAR2(30) := Fnd_Api.G_FALSE;
3413:
3414: BEGIN
3407: l_called_module VARCHAR2(10) := 'UI';
3408: l_req_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3409: l_req_cr_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3410: l_req_up_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3411: l_req_re_material_tbl AHL_PP_MATERIALS_PVT.Req_Material_Tbl_Type;
3412: l_commit VARCHAR2(30) := Fnd_Api.G_FALSE;
3413:
3414: BEGIN
3415: --------------------Initialize ----------------------------------
3558: p_data => x_msg_data);
3559: IF G_DEBUG='Y' THEN
3560: AHL_DEBUG_PUB.log_app_messages (
3561: x_msg_count, x_msg_data, 'ERROR' );
3562: AHL_DEBUG_PUB.debug( 'ahl_pp_materials_pvt. Process Material Request','+PPMRP+');
3563: -- Check if API is called in debug mode. If yes, disable debug.
3564: AHL_DEBUG_PUB.disable_debug;
3565: END IF;
3566: WHEN FND_API.G_EXC_ERROR THEN
3572: IF G_DEBUG='Y' THEN
3573: -- Debug info.
3574: AHL_DEBUG_PUB.log_app_messages (
3575: x_msg_count, x_msg_data, 'UNEXPECTED ERROR' );
3576: AHL_DEBUG_PUB.debug( 'ahl_pp_materials_pvt. Process Material Request','+PPMRP+');
3577: -- Check if API is called in debug mode. If yes, disable debug.
3578: AHL_DEBUG_PUB.disable_debug;
3579: --
3580: END IF;
3582: ROLLBACK TO process_material_request;
3583: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3584: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
3585: THEN
3586: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_PP_MATERIALS_PVT',
3587: p_procedure_name => 'PROCESS_MATERIAL_REQUEST',
3588: p_error_text => SUBSTR(SQLERRM,1,240));
3589: END IF;
3590: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
3593: IF G_DEBUG='Y' THEN
3594: -- Debug info.
3595: AHL_DEBUG_PUB.log_app_messages (
3596: x_msg_count, x_msg_data, 'SQL ERROR' );
3597: AHL_DEBUG_PUB.debug( 'ahl_pp_materials_pvt. Process Material Request','+PPMRP+');
3598: -- Check if API is called in debug mode. If yes, disable debug.
3599: AHL_DEBUG_PUB.disable_debug;
3600: END IF;
3601: END Process_Material_Request;
4012: -- IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
4013: -- fnd_log.string
4014: -- (
4015: -- fnd_log.level_statement,
4016: -- 'ahl.plsql.AHL_PP_MATERIALS_PVT.GET_NET_QTY',
4017: -- 'l_net_qty -> ' || l_net_qty
4018: -- );
4019: -- END IF;
4020:
4123: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level)THEN
4124: fnd_log.string
4125: (
4126: fnd_log.level_procedure,
4127: 'ahl.plsql.AHL_PP_MATERIALS_PVT.Process_Wo_Op_Materials',
4128: 'At the start of PLSQL procedure'
4129: );
4130: END IF;
4131: --------------------Initialize ----------------------------------
4448: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level)THEN
4449: fnd_log.string
4450: (
4451: fnd_log.level_procedure,
4452: 'ahl.plsql.AHL_PP_MATERIALS_PVT.Process_Wo_Op_Materials.end',
4453: 'At the end of PLSQL procedure'
4454: );
4455: END IF;
4456:
4472: ROLLBACK TO Process_Wo_Op_Materials;
4473: X_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
4474: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
4475: THEN
4476: fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_PP_MATERIALS_PVT',
4477: p_procedure_name => 'PROCESS_WO_OP_MATERIALS',
4478: p_error_text => SUBSTR(SQLERRM,1,240));
4479: END IF;
4480: FND_MSG_PUB.count_and_get( p_encoded => FND_API.G_FALSE,
4617: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level)THEN
4618: fnd_log.string
4619: (
4620: fnd_log.level_procedure,
4621: 'ahl.plsql.AHL_PP_MATERIALS_PVT.Material_Notification',
4622: 'At the start of PLSQL procedure'
4623: );
4624: END IF;
4625:
4787: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level)THEN
4788: fnd_log.string
4789: (
4790: fnd_log.level_procedure,
4791: 'ahl.plsql.AHL_PP_MATERIALS_PVT.Material_Notification.end',
4792: 'At the end of PLSQL procedure'
4793: );
4794: END IF;
4795: