15: ------------------------------------
16: PROCEDURE Process_Route_Details
17: (
18: p_api_version IN NUMBER := '1.0',
19: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
20: p_commit IN VARCHAR2 := FND_API.G_FALSE,
21: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
22: p_default IN VARCHAR2 := FND_API.G_FALSE,
23: p_module_type IN VARCHAR2 := NULL,
16: PROCEDURE Process_Route_Details
17: (
18: p_api_version IN NUMBER := '1.0',
19: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
20: p_commit IN VARCHAR2 := FND_API.G_FALSE,
21: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
22: p_default IN VARCHAR2 := FND_API.G_FALSE,
23: p_module_type IN VARCHAR2 := NULL,
24: x_return_status OUT NOCOPY VARCHAR2,
17: (
18: p_api_version IN NUMBER := '1.0',
19: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
20: p_commit IN VARCHAR2 := FND_API.G_FALSE,
21: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
22: p_default IN VARCHAR2 := FND_API.G_FALSE,
23: p_module_type IN VARCHAR2 := NULL,
24: x_return_status OUT NOCOPY VARCHAR2,
25: x_msg_count OUT NOCOPY NUMBER,
18: p_api_version IN NUMBER := '1.0',
19: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
20: p_commit IN VARCHAR2 := FND_API.G_FALSE,
21: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
22: p_default IN VARCHAR2 := FND_API.G_FALSE,
23: p_module_type IN VARCHAR2 := NULL,
24: x_return_status OUT NOCOPY VARCHAR2,
25: x_msg_count OUT NOCOPY NUMBER,
26: x_msg_data OUT NOCOPY VARCHAR2,
34: ------------------------------------
35: PROCEDURE Process_OP_Details
36: (
37: p_api_version IN NUMBER := '1.0',
38: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
39: p_commit IN VARCHAR2 := FND_API.G_FALSE,
40: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
41: p_default IN VARCHAR2 := FND_API.G_FALSE,
42: p_module_type IN VARCHAR2 := NULL,
35: PROCEDURE Process_OP_Details
36: (
37: p_api_version IN NUMBER := '1.0',
38: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
39: p_commit IN VARCHAR2 := FND_API.G_FALSE,
40: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
41: p_default IN VARCHAR2 := FND_API.G_FALSE,
42: p_module_type IN VARCHAR2 := NULL,
43: x_return_status OUT NOCOPY VARCHAR2,
36: (
37: p_api_version IN NUMBER := '1.0',
38: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
39: p_commit IN VARCHAR2 := FND_API.G_FALSE,
40: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
41: p_default IN VARCHAR2 := FND_API.G_FALSE,
42: p_module_type IN VARCHAR2 := NULL,
43: x_return_status OUT NOCOPY VARCHAR2,
44: x_msg_count OUT NOCOPY NUMBER,
37: p_api_version IN NUMBER := '1.0',
38: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
39: p_commit IN VARCHAR2 := FND_API.G_FALSE,
40: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
41: p_default IN VARCHAR2 := FND_API.G_FALSE,
42: p_module_type IN VARCHAR2 := NULL,
43: x_return_status OUT NOCOPY VARCHAR2,
44: x_msg_count OUT NOCOPY NUMBER,
45: x_msg_data OUT NOCOPY VARCHAR2,
75:
76: IF (l_msg_count = 1) then
77: FND_MSG_PUB.count_and_get(p_count => l_msg_count,
78: p_data => l_temp_msg_data,
79: p_encoded => FND_API.G_FALSE);
80: l_msg_data := l_temp_msg_data;
81: ELSE
82: IF (l_msg_count > 0) THEN
83: FOR i IN 1..l_msg_count LOOP
81: ELSE
82: IF (l_msg_count > 0) THEN
83: FOR i IN 1..l_msg_count LOOP
84: FND_MSG_PUB.get(
85: p_encoded => FND_API.G_FALSE,
86: p_data => l_temp_msg_data,
87: p_msg_index_out => l_msg_index_out);
88: IF (l_log_procedure >= l_log_current_level) THEN
89: fnd_log.string(fnd_log.level_procedure,'Get_Msg_Data','msg ' || l_temp_msg_data);
110: ------------------------------------------------------------------------------------------------------------------
111: PROCEDURE Process_Route_Operations
112: (
113: p_api_version IN NUMBER := 1.0,
114: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
115: p_commit IN VARCHAR2 := FND_API.G_FALSE,
116: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
117: p_module_type IN VARCHAR2,
118: p_context IN VARCHAR2,
111: PROCEDURE Process_Route_Operations
112: (
113: p_api_version IN NUMBER := 1.0,
114: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
115: p_commit IN VARCHAR2 := FND_API.G_FALSE,
116: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
117: p_module_type IN VARCHAR2,
118: p_context IN VARCHAR2,
119: p_pub_date IN DATE,
112: (
113: p_api_version IN NUMBER := 1.0,
114: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
115: p_commit IN VARCHAR2 := FND_API.G_FALSE,
116: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
117: p_module_type IN VARCHAR2,
118: p_context IN VARCHAR2,
119: p_pub_date IN DATE,
120: p_operator IN VARCHAR2,
168: l_api_version CONSTANT NUMBER := 1.0;
169: l_debug_module CONSTANT VARCHAR2(100) := 'ahl.plsql.'||'AHL_ENIGMA_ROUTE_OP_PUB'||'.'||l_api_name;
170:
171: l_dummy VARCHAR2(1);
172: l_route_exists VARCHAR2(1) := FND_API.G_FALSE;
173: l_enigma_route_id VARCHAR2(80);
174:
175:
176: l_route_data_rec enigma_route_rec_type;
192: -- Standard start of API savepoint
193: --SAVEPOINT Process_Route_Operations_SP;
194:
195: -- Initialize return status to success before any code logic/validation
196: x_return_status:= FND_API.G_RET_STS_SUCCESS;
197:
198: -- Standard call to check for call compatibility
199: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME) THEN
200: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
195: -- Initialize return status to success before any code logic/validation
196: x_return_status:= FND_API.G_RET_STS_SUCCESS;
197:
198: -- Standard call to check for call compatibility
199: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME) THEN
200: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
201: END IF;
202:
203: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
196: x_return_status:= FND_API.G_RET_STS_SUCCESS;
197:
198: -- Standard call to check for call compatibility
199: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME) THEN
200: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
201: END IF;
202:
203: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
204: IF FND_API.TO_BOOLEAN(p_init_msg_list) THEN
199: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME) THEN
200: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
201: END IF;
202:
203: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
204: IF FND_API.TO_BOOLEAN(p_init_msg_list) THEN
205: FND_MSG_PUB.INITIALIZE;
206: END IF;
207:
200: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
201: END IF;
202:
203: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
204: IF FND_API.TO_BOOLEAN(p_init_msg_list) THEN
205: FND_MSG_PUB.INITIALIZE;
206: END IF;
207:
208: -- initialise it only if it is a OA Adapter !
246:
247: Process_OP_Details
248: (
249: '1.0',
250: FND_API.G_TRUE,
251: FND_API.G_FALSE,
252: FND_API.G_VALID_LEVEL_FULL,
253: FND_API.G_FALSE,
254: p_module_type,--NULL Sthilak for bug #14036337,
247: Process_OP_Details
248: (
249: '1.0',
250: FND_API.G_TRUE,
251: FND_API.G_FALSE,
252: FND_API.G_VALID_LEVEL_FULL,
253: FND_API.G_FALSE,
254: p_module_type,--NULL Sthilak for bug #14036337,
255: x_return_status,
248: (
249: '1.0',
250: FND_API.G_TRUE,
251: FND_API.G_FALSE,
252: FND_API.G_VALID_LEVEL_FULL,
253: FND_API.G_FALSE,
254: p_module_type,--NULL Sthilak for bug #14036337,
255: x_return_status,
256: x_msg_count,
249: '1.0',
250: FND_API.G_TRUE,
251: FND_API.G_FALSE,
252: FND_API.G_VALID_LEVEL_FULL,
253: FND_API.G_FALSE,
254: p_module_type,--NULL Sthilak for bug #14036337,
255: x_return_status,
256: x_msg_count,
257: x_msg_data,
281:
282: PROCESS_ROUTE_DETAILS
283: (
284: '1.0',
285: FND_API.G_TRUE,
286: FND_API.G_FALSE,
287: FND_API.G_VALID_LEVEL_FULL,
288: FND_API.G_FALSE,
289: p_module_type,--NULL Sthilak for bug #14036337,
282: PROCESS_ROUTE_DETAILS
283: (
284: '1.0',
285: FND_API.G_TRUE,
286: FND_API.G_FALSE,
287: FND_API.G_VALID_LEVEL_FULL,
288: FND_API.G_FALSE,
289: p_module_type,--NULL Sthilak for bug #14036337,
290: x_return_status,
283: (
284: '1.0',
285: FND_API.G_TRUE,
286: FND_API.G_FALSE,
287: FND_API.G_VALID_LEVEL_FULL,
288: FND_API.G_FALSE,
289: p_module_type,--NULL Sthilak for bug #14036337,
290: x_return_status,
291: x_msg_count,
284: '1.0',
285: FND_API.G_TRUE,
286: FND_API.G_FALSE,
287: FND_API.G_VALID_LEVEL_FULL,
288: FND_API.G_FALSE,
289: p_module_type,--NULL Sthilak for bug #14036337,
290: x_return_status,
291: x_msg_count,
292: x_msg_data,
379: -- Calling the procedure to process the route and operation details
380: PROCESS_ROUTE_DETAILS
381: (
382: '1.0',
383: FND_API.G_TRUE,
384: FND_API.G_FALSE,
385: FND_API.G_VALID_LEVEL_FULL,
386: FND_API.G_FALSE,
387: NULL,
380: PROCESS_ROUTE_DETAILS
381: (
382: '1.0',
383: FND_API.G_TRUE,
384: FND_API.G_FALSE,
385: FND_API.G_VALID_LEVEL_FULL,
386: FND_API.G_FALSE,
387: NULL,
388: x_return_status,
381: (
382: '1.0',
383: FND_API.G_TRUE,
384: FND_API.G_FALSE,
385: FND_API.G_VALID_LEVEL_FULL,
386: FND_API.G_FALSE,
387: NULL,
388: x_return_status,
389: x_msg_count,
382: '1.0',
383: FND_API.G_TRUE,
384: FND_API.G_FALSE,
385: FND_API.G_VALID_LEVEL_FULL,
386: FND_API.G_FALSE,
387: NULL,
388: x_return_status,
389: x_msg_count,
390: x_msg_data,
423: END IF;
424:
425: -- Process the incoming enigma record.
426: -- Validate if the Enigma Route Id is null throw an error if the id is null.
427: -- IF (p_enigma_route_rec.enigma_route_id IS NULL OR p_enigma_route_rec.enigma_route_id = FND_API.G_MISS_CHAR)
428: -- THEN
429: -- FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_ROUTE_ID_NULL');
430: -- FND_MSG_PUB.ADD;
431: -- RAISE FND_API.G_EXC_ERROR;
427: -- IF (p_enigma_route_rec.enigma_route_id IS NULL OR p_enigma_route_rec.enigma_route_id = FND_API.G_MISS_CHAR)
428: -- THEN
429: -- FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_ROUTE_ID_NULL');
430: -- FND_MSG_PUB.ADD;
431: -- RAISE FND_API.G_EXC_ERROR;
432: -- END IF;
433:
434: no_records := 0;
435:
446: l_op_data_rec.equipment:= p_model;
447: Process_OP_Details
448: (
449: '1.0',
450: FND_API.G_TRUE,
451: FND_API.G_FALSE,
452: FND_API.G_VALID_LEVEL_FULL,
453: FND_API.G_FALSE,
454: p_module_type,--NULL Sthilak for bug #14036337,
447: Process_OP_Details
448: (
449: '1.0',
450: FND_API.G_TRUE,
451: FND_API.G_FALSE,
452: FND_API.G_VALID_LEVEL_FULL,
453: FND_API.G_FALSE,
454: p_module_type,--NULL Sthilak for bug #14036337,
455: x_return_status,
448: (
449: '1.0',
450: FND_API.G_TRUE,
451: FND_API.G_FALSE,
452: FND_API.G_VALID_LEVEL_FULL,
453: FND_API.G_FALSE,
454: p_module_type,--NULL Sthilak for bug #14036337,
455: x_return_status,
456: x_msg_count,
449: '1.0',
450: FND_API.G_TRUE,
451: FND_API.G_FALSE,
452: FND_API.G_VALID_LEVEL_FULL,
453: FND_API.G_FALSE,
454: p_module_type,--NULL Sthilak for bug #14036337,
455: x_return_status,
456: x_msg_count,
457: x_msg_data,
458: l_op_data_rec,
459: p_model, -- In phase II p_model is model code.
460: p_pub_date
461: );
462: IF ( x_return_status <> FND_API.G_RET_STS_SUCCESS OR x_msg_count > 0) THEN
463: no_records := no_records +1;
464: END IF;
465: -- x_msg_count := FND_MSG_PUB.count_msg;
466: -- IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS OR x_msg_count > 0) THEN
462: IF ( x_return_status <> FND_API.G_RET_STS_SUCCESS OR x_msg_count > 0) THEN
463: no_records := no_records +1;
464: END IF;
465: -- x_msg_count := FND_MSG_PUB.count_msg;
466: -- IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS OR x_msg_count > 0) THEN
467: -- IF (l_log_statement >= l_log_current_level) THEN
468: -- fnd_log.string(fnd_log.level_statement,l_debug_module,'Error in Process_OP_Details');
469: -- END IF;
470: -- RAISE FND_API.G_EXC_ERROR;
466: -- IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS OR x_msg_count > 0) THEN
467: -- IF (l_log_statement >= l_log_current_level) THEN
468: -- fnd_log.string(fnd_log.level_statement,l_debug_module,'Error in Process_OP_Details');
469: -- END IF;
470: -- RAISE FND_API.G_EXC_ERROR;
471: -- END IF;
472: -- END IF;
473: END LOOP;
474:
481:
482: PROCESS_ROUTE_DETAILS
483: (
484: '1.0',
485: FND_API.G_TRUE,
486: FND_API.G_FALSE,
487: FND_API.G_VALID_LEVEL_FULL,
488: FND_API.G_FALSE,
489: p_module_type,--NULL Sthilak for bug #14036337,
482: PROCESS_ROUTE_DETAILS
483: (
484: '1.0',
485: FND_API.G_TRUE,
486: FND_API.G_FALSE,
487: FND_API.G_VALID_LEVEL_FULL,
488: FND_API.G_FALSE,
489: p_module_type,--NULL Sthilak for bug #14036337,
490: x_return_status,
483: (
484: '1.0',
485: FND_API.G_TRUE,
486: FND_API.G_FALSE,
487: FND_API.G_VALID_LEVEL_FULL,
488: FND_API.G_FALSE,
489: p_module_type,--NULL Sthilak for bug #14036337,
490: x_return_status,
491: x_msg_count,
484: '1.0',
485: FND_API.G_TRUE,
486: FND_API.G_FALSE,
487: FND_API.G_VALID_LEVEL_FULL,
488: FND_API.G_FALSE,
489: p_module_type,--NULL Sthilak for bug #14036337,
490: x_return_status,
491: x_msg_count,
492: x_msg_data,
493: l_route_data_rec,
494: p_model, -- In phase II p_model will be used as model.
495: p_pub_date
496: );
497: IF ( x_return_status <> FND_API.G_RET_STS_SUCCESS OR x_msg_count > 0) THEN
498: no_records := no_records +1;
499: END IF;
500: -- x_msg_count := FND_MSG_PUB.count_msg;
501: -- IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
497: IF ( x_return_status <> FND_API.G_RET_STS_SUCCESS OR x_msg_count > 0) THEN
498: no_records := no_records +1;
499: END IF;
500: -- x_msg_count := FND_MSG_PUB.count_msg;
501: -- IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
502: -- IF (l_log_statement >= l_log_current_level OR x_msg_count > 0) THEN
503: -- fnd_log.string(fnd_log.level_statement,l_debug_module,'Error in PROCESS_ROUTE_DETAILS');
504: -- END IF;
505: -- RAISE FND_API.G_EXC_ERROR;
501: -- IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
502: -- IF (l_log_statement >= l_log_current_level OR x_msg_count > 0) THEN
503: -- fnd_log.string(fnd_log.level_statement,l_debug_module,'Error in PROCESS_ROUTE_DETAILS');
504: -- END IF;
505: -- RAISE FND_API.G_EXC_ERROR;
506: -- END IF;
507: END LOOP;
508:
509: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
518: fnd_log.string(fnd_log.level_statement,l_debug_module,'After get_message_data... ' || x_msg_data);
519: END IF;
520:
521: IF (no_records > 0) THEN
522: x_return_status := FND_API.G_RET_STS_ERROR;
523: x_msg_data := to_char(no_records) || ' Records Encountered An Error During Execution.' ;
524: END IF;
525:
526: -- IF x_msg_count > 0 THEN
523: x_msg_data := to_char(no_records) || ' Records Encountered An Error During Execution.' ;
524: END IF;
525:
526: -- IF x_msg_count > 0 THEN
527: -- RAISE FND_API.G_EXC_ERROR;
528: -- END IF;
529:
530: -- Standard check for p_commit
531: -- IF FND_API.To_Boolean (p_commit)THEN
527: -- RAISE FND_API.G_EXC_ERROR;
528: -- END IF;
529:
530: -- Standard check for p_commit
531: -- IF FND_API.To_Boolean (p_commit)THEN
532: -- COMMIT WORK;
533: -- END IF;
534:
535: -- Standard call to get message count and if count is 1, get message info
534:
535: -- Standard call to get message count and if count is 1, get message info
536: -- FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,
537: -- p_data => x_msg_data,
538: -- p_encoded => fnd_api.g_false );
539:
540: EXCEPTION
541: WHEN FND_API.G_EXC_ERROR THEN
542: x_return_status := FND_API.G_RET_STS_ERROR;
537: -- p_data => x_msg_data,
538: -- p_encoded => fnd_api.g_false );
539:
540: EXCEPTION
541: WHEN FND_API.G_EXC_ERROR THEN
542: x_return_status := FND_API.G_RET_STS_ERROR;
543: --Rollback to Process_Route_Operations_SP;
544: x_msg_count := FND_MSG_PUB.count_msg;
545: x_msg_data := Get_Msg_Data(x_msg_count);
538: -- p_encoded => fnd_api.g_false );
539:
540: EXCEPTION
541: WHEN FND_API.G_EXC_ERROR THEN
542: x_return_status := FND_API.G_RET_STS_ERROR;
543: --Rollback to Process_Route_Operations_SP;
544: x_msg_count := FND_MSG_PUB.count_msg;
545: x_msg_data := Get_Msg_Data(x_msg_count);
546:
543: --Rollback to Process_Route_Operations_SP;
544: x_msg_count := FND_MSG_PUB.count_msg;
545: x_msg_data := Get_Msg_Data(x_msg_count);
546:
547: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
548: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
549: --Rollback to Process_Route_Operations_SP;
550: x_msg_count := FND_MSG_PUB.count_msg;
551: x_msg_data := Get_Msg_Data(x_msg_count);
544: x_msg_count := FND_MSG_PUB.count_msg;
545: x_msg_data := Get_Msg_Data(x_msg_count);
546:
547: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
548: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
549: --Rollback to Process_Route_Operations_SP;
550: x_msg_count := FND_MSG_PUB.count_msg;
551: x_msg_data := Get_Msg_Data(x_msg_count);
552:
550: x_msg_count := FND_MSG_PUB.count_msg;
551: x_msg_data := Get_Msg_Data(x_msg_count);
552:
553: WHEN OTHERS THEN
554: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
555: --Rollback to Process_Route_Operations_SP;
556: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
557: THEN
558: fnd_msg_pub.add_exc_msg(p_pkg_name => G_PKG_NAME,
581: BEGIN
582: IF (l_log_statement >= l_log_current_level) THEN
583: fnd_log.string(fnd_log.level_statement,l_debug_module,'In Map_Enigma_To_CMRO_Route_Rec');
584: END IF;
585: IF (p_enigma_route_rec.dml_operation <> 'C' AND p_route_id <> FND_API.G_MISS_NUM AND p_route_id IS NOT NULL) THEN
586: x_process_route_input_rec.route_id := p_route_id;
587: END IF;
588: IF (p_enigma_route_rec.dml_operation <> 'C' AND p_object_version_number <> FND_API.G_MISS_NUM AND p_object_version_number IS NOT NULL) THEN
589: x_process_route_input_rec.object_version_number := p_object_version_number;
584: END IF;
585: IF (p_enigma_route_rec.dml_operation <> 'C' AND p_route_id <> FND_API.G_MISS_NUM AND p_route_id IS NOT NULL) THEN
586: x_process_route_input_rec.route_id := p_route_id;
587: END IF;
588: IF (p_enigma_route_rec.dml_operation <> 'C' AND p_object_version_number <> FND_API.G_MISS_NUM AND p_object_version_number IS NOT NULL) THEN
589: x_process_route_input_rec.object_version_number := p_object_version_number;
590: END IF;
591: IF p_enigma_route_rec.pdf_file_name IS NOT NULL THEN
592: -- Call the procedure to upload the file
599: END IF;
600: IF (l_log_statement >= l_log_current_level) THEN
601: fnd_log.string(fnd_log.level_statement,l_debug_module,'After UPLOAD_REVISION_REPORT Call File Id -> = ' || x_file_id);
602: END IF;
603: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
604: IF (l_log_statement >= l_log_current_level) THEN
605: fnd_log.string(fnd_log.level_statement,l_debug_module,'UPLOAD_REVISION_REPORT Error');
606: END IF;
607: RAISE FND_API.G_EXC_ERROR;
603: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
604: IF (l_log_statement >= l_log_current_level) THEN
605: fnd_log.string(fnd_log.level_statement,l_debug_module,'UPLOAD_REVISION_REPORT Error');
606: END IF;
607: RAISE FND_API.G_EXC_ERROR;
608: END IF;
609: -- If the return status is success, populate the input rec for process_route for updation
610: IF ( x_file_id <> FND_API.G_MISS_NUM AND x_file_id IS NOT NULL) THEN
611: x_process_route_input_rec.file_id := x_file_id ;
606: END IF;
607: RAISE FND_API.G_EXC_ERROR;
608: END IF;
609: -- If the return status is success, populate the input rec for process_route for updation
610: IF ( x_file_id <> FND_API.G_MISS_NUM AND x_file_id IS NOT NULL) THEN
611: x_process_route_input_rec.file_id := x_file_id ;
612: END IF;
613: IF (p_context <> FND_API.G_MISS_CHAR AND p_context IS NOT NULL ) THEN
614: x_process_route_input_rec.model_code := p_context;
609: -- If the return status is success, populate the input rec for process_route for updation
610: IF ( x_file_id <> FND_API.G_MISS_NUM AND x_file_id IS NOT NULL) THEN
611: x_process_route_input_rec.file_id := x_file_id ;
612: END IF;
613: IF (p_context <> FND_API.G_MISS_CHAR AND p_context IS NOT NULL ) THEN
614: x_process_route_input_rec.model_code := p_context;
615: END IF;
616: IF (p_pub_date <> FND_API.G_MISS_DATE AND p_pub_date IS NOT NULL ) THEN
617: x_process_route_input_rec.enigma_publish_date := p_pub_date ;
612: END IF;
613: IF (p_context <> FND_API.G_MISS_CHAR AND p_context IS NOT NULL ) THEN
614: x_process_route_input_rec.model_code := p_context;
615: END IF;
616: IF (p_pub_date <> FND_API.G_MISS_DATE AND p_pub_date IS NOT NULL ) THEN
617: x_process_route_input_rec.enigma_publish_date := p_pub_date ;
618: END IF;
619: IF (p_enigma_route_rec.description <> FND_API.G_MISS_CHAR AND p_enigma_route_rec.description IS NOT NULL ) THEN
620: x_process_route_input_rec.title := p_enigma_route_rec.description;
615: END IF;
616: IF (p_pub_date <> FND_API.G_MISS_DATE AND p_pub_date IS NOT NULL ) THEN
617: x_process_route_input_rec.enigma_publish_date := p_pub_date ;
618: END IF;
619: IF (p_enigma_route_rec.description <> FND_API.G_MISS_CHAR AND p_enigma_route_rec.description IS NOT NULL ) THEN
620: x_process_route_input_rec.title := p_enigma_route_rec.description;
621: ELSIF p_enigma_route_rec.dml_operation = 'C' THEN
622: x_process_route_input_rec.title := p_enigma_route_rec.ata_code;
623: END IF;
620: x_process_route_input_rec.title := p_enigma_route_rec.description;
621: ELSIF p_enigma_route_rec.dml_operation = 'C' THEN
622: x_process_route_input_rec.title := p_enigma_route_rec.ata_code;
623: END IF;
624: IF (p_enigma_route_rec.revision_date <> FND_API.G_MISS_DATE AND p_enigma_route_rec.revision_date IS NOT NULL ) THEN
625: x_process_route_input_rec.active_start_date := p_enigma_route_rec.revision_date;
626: ELSIF p_enigma_route_rec.dml_operation = 'C' THEN
627: x_process_route_input_rec.active_start_date := sysdate;
628: END IF;
625: x_process_route_input_rec.active_start_date := p_enigma_route_rec.revision_date;
626: ELSIF p_enigma_route_rec.dml_operation = 'C' THEN
627: x_process_route_input_rec.active_start_date := sysdate;
628: END IF;
629: IF (p_enigma_route_rec.enigma_doc_id <> FND_API.G_MISS_CHAR AND p_enigma_route_rec.enigma_doc_id IS NOT NULL ) THEN
630: x_process_route_input_rec.enigma_doc_id := p_enigma_route_rec.enigma_doc_id;
631: END IF;
632: IF (p_enigma_route_rec.enigma_route_id <> FND_API.G_MISS_CHAR AND p_enigma_route_rec.enigma_route_id IS NOT NULL ) THEN
633: x_process_route_input_rec.enigma_route_id := p_enigma_route_rec.enigma_route_id;
628: END IF;
629: IF (p_enigma_route_rec.enigma_doc_id <> FND_API.G_MISS_CHAR AND p_enigma_route_rec.enigma_doc_id IS NOT NULL ) THEN
630: x_process_route_input_rec.enigma_doc_id := p_enigma_route_rec.enigma_doc_id;
631: END IF;
632: IF (p_enigma_route_rec.enigma_route_id <> FND_API.G_MISS_CHAR AND p_enigma_route_rec.enigma_route_id IS NOT NULL ) THEN
633: x_process_route_input_rec.enigma_route_id := p_enigma_route_rec.enigma_route_id;
634: END IF;
635: IF (p_enigma_route_rec.dml_operation = 'C' AND p_enigma_route_rec.ata_code <> FND_API.G_MISS_CHAR AND p_enigma_route_rec.ata_code IS NOT NULL ) THEN
636: x_process_route_input_rec.route_no := p_enigma_route_rec.ata_code;
631: END IF;
632: IF (p_enigma_route_rec.enigma_route_id <> FND_API.G_MISS_CHAR AND p_enigma_route_rec.enigma_route_id IS NOT NULL ) THEN
633: x_process_route_input_rec.enigma_route_id := p_enigma_route_rec.enigma_route_id;
634: END IF;
635: IF (p_enigma_route_rec.dml_operation = 'C' AND p_enigma_route_rec.ata_code <> FND_API.G_MISS_CHAR AND p_enigma_route_rec.ata_code IS NOT NULL ) THEN
636: x_process_route_input_rec.route_no := p_enigma_route_rec.ata_code;
637: END IF;
638: x_process_route_input_rec.dml_operation := p_enigma_route_rec.dml_operation;
639: IF (l_log_statement >= l_log_current_level) THEN
756: new_op_assos_table cmro_op_id_table_type; -- This table contains CMRO operation id for the operations passed for association
757: old_op_assos_table asso_record_table_type;
758:
759: BEGIN
760: x_return_status:= FND_API.G_RET_STS_SUCCESS;
761: IF (l_log_statement >= l_log_current_level) THEN
762: fnd_log.string(fnd_log.level_statement,l_debug_module,'In process_rt_op_assoc Route Id ' || p_route_id);
763: END IF;
764: -- change = 0 : Delete
800: END IF;
801: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_OP_DONOT_EXIST');
802: FND_MESSAGE.SET_TOKEN('FIELD', p_enigma_op_asso_tbl(l_new_ctr));
803: FND_MSG_PUB.ADD;
804: RAISE FND_API.G_EXC_ERROR;
805: END IF;
806: END LOOP;
807:
808: -- Determine which associations are to be retained,which to be deleted and which are new associations
861: IF (l_route_op_asso_table.COUNT > 0) THEN
862: AHL_RM_OP_ROUTE_AS_PVT.process_route_operation_as
863: (
864: p_api_version => 1.0,
865: p_init_msg_list => FND_API.G_TRUE,
866: p_commit => FND_API.G_FALSE,
867: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
868: p_default => FND_API.G_TRUE,
869: p_module_type => 'BPEL',--NULL Sthilak for bug #14036337,,
862: AHL_RM_OP_ROUTE_AS_PVT.process_route_operation_as
863: (
864: p_api_version => 1.0,
865: p_init_msg_list => FND_API.G_TRUE,
866: p_commit => FND_API.G_FALSE,
867: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
868: p_default => FND_API.G_TRUE,
869: p_module_type => 'BPEL',--NULL Sthilak for bug #14036337,,
870: x_return_status => x_return_status,
863: (
864: p_api_version => 1.0,
865: p_init_msg_list => FND_API.G_TRUE,
866: p_commit => FND_API.G_FALSE,
867: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
868: p_default => FND_API.G_TRUE,
869: p_module_type => 'BPEL',--NULL Sthilak for bug #14036337,,
870: x_return_status => x_return_status,
871: x_msg_count => x_msg_count ,
864: p_api_version => 1.0,
865: p_init_msg_list => FND_API.G_TRUE,
866: p_commit => FND_API.G_FALSE,
867: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
868: p_default => FND_API.G_TRUE,
869: p_module_type => 'BPEL',--NULL Sthilak for bug #14036337,,
870: x_return_status => x_return_status,
871: x_msg_count => x_msg_count ,
872: x_msg_data => x_msg_data ,
874: p_route_id => p_route_id
875: );
876: END IF;
877:
878: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
879: IF (l_log_statement >= l_log_current_level) THEN
880: fnd_log.string(fnd_log.level_statement,l_debug_module,'Error in Process Association');
881: END IF;
882: RAISE FND_API.G_EXC_ERROR;
878: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
879: IF (l_log_statement >= l_log_current_level) THEN
880: fnd_log.string(fnd_log.level_statement,l_debug_module,'Error in Process Association');
881: END IF;
882: RAISE FND_API.G_EXC_ERROR;
883: END IF;
884:
885: EXCEPTION
886: WHEN FND_API.G_EXC_ERROR THEN
882: RAISE FND_API.G_EXC_ERROR;
883: END IF;
884:
885: EXCEPTION
886: WHEN FND_API.G_EXC_ERROR THEN
887: x_return_status := FND_API.G_RET_STS_ERROR;
888: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
889: p_data => x_msg_data,
890: p_encoded => fnd_api.g_false);
883: END IF;
884:
885: EXCEPTION
886: WHEN FND_API.G_EXC_ERROR THEN
887: x_return_status := FND_API.G_RET_STS_ERROR;
888: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
889: p_data => x_msg_data,
890: p_encoded => fnd_api.g_false);
891:
886: WHEN FND_API.G_EXC_ERROR THEN
887: x_return_status := FND_API.G_RET_STS_ERROR;
888: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
889: p_data => x_msg_data,
890: p_encoded => fnd_api.g_false);
891:
892: WHEN OTHERS THEN
893: x_return_status := FND_API.G_RET_STS_ERROR;
894: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
889: p_data => x_msg_data,
890: p_encoded => fnd_api.g_false);
891:
892: WHEN OTHERS THEN
893: x_return_status := FND_API.G_RET_STS_ERROR;
894: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
895: p_data => x_msg_data,
896: p_encoded => fnd_api.g_false);
897:
892: WHEN OTHERS THEN
893: x_return_status := FND_API.G_RET_STS_ERROR;
894: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
895: p_data => x_msg_data,
896: p_encoded => fnd_api.g_false);
897:
898: END process_rt_op_assoc;
899:
900: PROCEDURE Process_Route_Details
899:
900: PROCEDURE Process_Route_Details
901: (
902: p_api_version IN NUMBER := '1.0',
903: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
904: p_commit IN VARCHAR2 := FND_API.G_FALSE,
905: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
906: p_default IN VARCHAR2 := FND_API.G_FALSE,
907: p_module_type IN VARCHAR2 := NULL,
900: PROCEDURE Process_Route_Details
901: (
902: p_api_version IN NUMBER := '1.0',
903: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
904: p_commit IN VARCHAR2 := FND_API.G_FALSE,
905: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
906: p_default IN VARCHAR2 := FND_API.G_FALSE,
907: p_module_type IN VARCHAR2 := NULL,
908: x_return_status OUT NOCOPY VARCHAR2,
901: (
902: p_api_version IN NUMBER := '1.0',
903: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
904: p_commit IN VARCHAR2 := FND_API.G_FALSE,
905: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
906: p_default IN VARCHAR2 := FND_API.G_FALSE,
907: p_module_type IN VARCHAR2 := NULL,
908: x_return_status OUT NOCOPY VARCHAR2,
909: x_msg_count OUT NOCOPY NUMBER,
902: p_api_version IN NUMBER := '1.0',
903: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
904: p_commit IN VARCHAR2 := FND_API.G_FALSE,
905: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
906: p_default IN VARCHAR2 := FND_API.G_FALSE,
907: p_module_type IN VARCHAR2 := NULL,
908: x_return_status OUT NOCOPY VARCHAR2,
909: x_msg_count OUT NOCOPY NUMBER,
910: x_msg_data OUT NOCOPY VARCHAR2,
956: -- Standard start of API savepoint
957: SAVEPOINT Process_Route_Details_SP;
958:
959: -- Initialize return status to success before any code logic/validation
960: x_return_status:= FND_API.G_RET_STS_SUCCESS;
961:
962: -- Standard call to check for call compatibility
963: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)THEN
964: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
959: -- Initialize return status to success before any code logic/validation
960: x_return_status:= FND_API.G_RET_STS_SUCCESS;
961:
962: -- Standard call to check for call compatibility
963: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)THEN
964: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
965: END IF;
966:
967: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
960: x_return_status:= FND_API.G_RET_STS_SUCCESS;
961:
962: -- Standard call to check for call compatibility
963: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)THEN
964: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
965: END IF;
966:
967: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
968: IF FND_API.TO_BOOLEAN(p_init_msg_list)THEN
963: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)THEN
964: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
965: END IF;
966:
967: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
968: IF FND_API.TO_BOOLEAN(p_init_msg_list)THEN
969: FND_MSG_PUB.INITIALIZE;
970: END IF;
971:
964: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
965: END IF;
966:
967: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
968: IF FND_API.TO_BOOLEAN(p_init_msg_list)THEN
969: FND_MSG_PUB.INITIALIZE;
970: END IF;
971:
972: -- Log API entry point
988: FND_MESSAGE.SET_NAME('AHL', 'AHL_COM_INVALID_DML');
989: FND_MESSAGE.SET_TOKEN('FIELD', p_enigma_route_rec.DML_OPERATION);
990: FND_MESSAGE.SET_TOKEN('RECORD', p_enigma_route_rec.enigma_route_id);
991: FND_MSG_PUB.ADD;
992: RAISE FND_API.G_EXC_ERROR;
993: END IF;
994:
995: -- IF (p_enigma_route_rec.enigma_route_id IS NULL OR p_enigma_route_rec.enigma_route_id = FND_API.G_MISS_CHAR)
996: -- THEN
991: FND_MSG_PUB.ADD;
992: RAISE FND_API.G_EXC_ERROR;
993: END IF;
994:
995: -- IF (p_enigma_route_rec.enigma_route_id IS NULL OR p_enigma_route_rec.enigma_route_id = FND_API.G_MISS_CHAR)
996: -- THEN
997: -- FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_ROUTE_ID_NULL');
998: -- FND_MSG_PUB.ADD;
999: -- RAISE FND_API.G_EXC_ERROR;
995: -- IF (p_enigma_route_rec.enigma_route_id IS NULL OR p_enigma_route_rec.enigma_route_id = FND_API.G_MISS_CHAR)
996: -- THEN
997: -- FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_ROUTE_ID_NULL');
998: -- FND_MSG_PUB.ADD;
999: -- RAISE FND_API.G_EXC_ERROR;
1000: -- END IF;
1001: --if DML_OPERATION <> c then validate that route with this enigma_route_id exists.
1002: IF (p_enigma_route_rec.DML_OPERATION <> 'C') THEN
1003: OPEN get_latest_route_rev (p_enigma_route_rec.enigma_route_id);
1009: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_ROUTE_DONOT_EXIST');
1010: FND_MESSAGE.SET_TOKEN('FIELD', p_enigma_route_rec.enigma_route_id);
1011: FND_MSG_PUB.ADD;
1012: CLOSE get_latest_route_rev;
1013: RAISE FND_API.G_EXC_ERROR;
1014: END IF;
1015: CLOSE get_latest_route_rev;
1016: END IF;
1017:
1032: -- IF the route is in Approval Pending status , then insert the Enigma Record into the staging table with status as pending.
1033: IF ( upper(l_get_latest_route_rev.revision_status) = 'APPROVAL_PENDING' ) THEN
1034: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_ROUTE_APR_PENDING');
1035: FND_MSG_PUB.ADD;
1036: RAISE FND_API.G_EXC_ERROR;
1037: /*Update_Route_Interface_table
1038: (
1039: p_enigma_route_rec,
1040: p_context,
1057: END IF;
1058: IF (l_log_statement >= l_log_current_level) THEN
1059: fnd_log.string(fnd_log.level_statement,l_debug_module,'After UPLOAD_REVISION_REPORT Call File Id -> = ' || x_file_id);
1060: END IF;
1061: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
1062: IF (l_log_statement >= l_log_current_level) THEN
1063: fnd_log.string(fnd_log.level_statement,l_debug_module,'UPLOAD_REVISION_REPORT Error');
1064: END IF;
1065: RAISE FND_API.G_EXC_ERROR;
1061: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
1062: IF (l_log_statement >= l_log_current_level) THEN
1063: fnd_log.string(fnd_log.level_statement,l_debug_module,'UPLOAD_REVISION_REPORT Error');
1064: END IF;
1065: RAISE FND_API.G_EXC_ERROR;
1066: END IF;
1067: -- If the return status is success, populate the input rec for process_route for updation
1068: IF ( x_file_id <> FND_API.G_MISS_NUM AND x_file_id IS NOT NULL) THEN
1069: p_process_route_input_rec.file_id := x_file_id ;
1064: END IF;
1065: RAISE FND_API.G_EXC_ERROR;
1066: END IF;
1067: -- If the return status is success, populate the input rec for process_route for updation
1068: IF ( x_file_id <> FND_API.G_MISS_NUM AND x_file_id IS NOT NULL) THEN
1069: p_process_route_input_rec.file_id := x_file_id ;
1070: END IF;
1071: p_process_route_input_rec.DML_OPERATION :='N';
1072: -- Call the API for update
1072: -- Call the API for update
1073: AHL_RM_ROUTE_PVT.process_route
1074: (
1075: '1.0',
1076: FND_API.G_TRUE,
1077: FND_API.G_FALSE,
1078: FND_API.G_VALID_LEVEL_FULL,
1079: FND_API.G_FALSE,
1080: p_module_type,--NULL Sthilak for bug #14036337,,
1073: AHL_RM_ROUTE_PVT.process_route
1074: (
1075: '1.0',
1076: FND_API.G_TRUE,
1077: FND_API.G_FALSE,
1078: FND_API.G_VALID_LEVEL_FULL,
1079: FND_API.G_FALSE,
1080: p_module_type,--NULL Sthilak for bug #14036337,,
1081: x_return_status,
1074: (
1075: '1.0',
1076: FND_API.G_TRUE,
1077: FND_API.G_FALSE,
1078: FND_API.G_VALID_LEVEL_FULL,
1079: FND_API.G_FALSE,
1080: p_module_type,--NULL Sthilak for bug #14036337,,
1081: x_return_status,
1082: x_msg_count,
1075: '1.0',
1076: FND_API.G_TRUE,
1077: FND_API.G_FALSE,
1078: FND_API.G_VALID_LEVEL_FULL,
1079: FND_API.G_FALSE,
1080: p_module_type,--NULL Sthilak for bug #14036337,,
1081: x_return_status,
1082: x_msg_count,
1083: x_msg_data,
1086: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
1087: fnd_log.string(fnd_log.level_statement,l_debug_module,'After calling process_route in update mode x_return_status -> ' || x_return_status);
1088: END IF;
1089:
1090: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
1091: IF (l_log_statement >= l_log_current_level) THEN
1092: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_ROUTE_PVT.process_route Error');
1093: END IF;
1094: /*Update_Route_Interface_table
1098: p_pub_date,
1099: 'N',
1100: x_msg_data
1101: );*/
1102: RAISE FND_API.G_EXC_ERROR;
1103: END IF;
1104:
1105: -- Insert the transaction record into the staging table, with status as success
1106: /*Update_Route_Interface_table
1118: -- IF the route is in Approval Pending status , then insert the Enigma Record into the staging table with status as pending.
1119: IF ( upper(l_get_latest_route_rev.revision_status) = 'APPROVAL_PENDING' ) THEN
1120: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_ROUTE_APR_PENDING');
1121: FND_MSG_PUB.ADD;
1122: RAISE FND_API.G_EXC_ERROR;
1123: /*Update_Route_Interface_table
1124: (
1125: p_enigma_route_rec,
1126: p_context,
1132: -- Call delete_route procedure to delete the route from CMRO End.
1133: AHL_RM_ROUTE_PVT.delete_route
1134: (
1135: '1.0',
1136: FND_API.G_TRUE,
1137: FND_API.G_FALSE,
1138: FND_API.G_VALID_LEVEL_FULL,
1139: FND_API.G_FALSE,
1140: p_module_type,--'ENIGMA' Sthilak for bug #14036337,,
1133: AHL_RM_ROUTE_PVT.delete_route
1134: (
1135: '1.0',
1136: FND_API.G_TRUE,
1137: FND_API.G_FALSE,
1138: FND_API.G_VALID_LEVEL_FULL,
1139: FND_API.G_FALSE,
1140: p_module_type,--'ENIGMA' Sthilak for bug #14036337,,
1141: x_return_status,
1134: (
1135: '1.0',
1136: FND_API.G_TRUE,
1137: FND_API.G_FALSE,
1138: FND_API.G_VALID_LEVEL_FULL,
1139: FND_API.G_FALSE,
1140: p_module_type,--'ENIGMA' Sthilak for bug #14036337,,
1141: x_return_status,
1142: x_msg_count,
1135: '1.0',
1136: FND_API.G_TRUE,
1137: FND_API.G_FALSE,
1138: FND_API.G_VALID_LEVEL_FULL,
1139: FND_API.G_FALSE,
1140: p_module_type,--'ENIGMA' Sthilak for bug #14036337,,
1141: x_return_status,
1142: x_msg_count,
1143: x_msg_data,
1149: fnd_log.string(fnd_log.level_statement,l_debug_module,'After calling delete_routes..Return Status: ' || x_return_status);
1150: END IF;
1151:
1152: -- Check the return status , and if the status is not success , then raise an error
1153: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
1154: IF (l_log_statement >= l_log_current_level) THEN
1155: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_ROUTE_PVT.delete_route Error');
1156: END IF;
1157: /*Update_Route_Interface_table
1161: p_pub_date,
1162: 'N',
1163: x_msg_data
1164: );*/
1165: RAISE FND_API.G_EXC_ERROR;
1166: END IF;
1167: END IF;
1168: END IF; -- change Flag
1169:
1171: -- IF the route is in Approval Pending status , then insert the Enigma Record into the staging table with status as pending.
1172: IF ( upper(l_get_latest_route_rev.revision_status) = 'APPROVAL_PENDING' ) THEN
1173: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_ROUTE_APR_PENDING');
1174: FND_MSG_PUB.ADD;
1175: RAISE FND_API.G_EXC_ERROR;
1176: /*Update_Route_Interface_table
1177: (
1178: p_enigma_route_rec,
1179: p_context,
1221:
1222: AHL_RM_ROUTE_PVT.create_route_revision
1223: (
1224: '1.0',
1225: FND_API.G_TRUE,
1226: FND_API.G_FALSE,
1227: FND_API.G_VALID_LEVEL_FULL,
1228: FND_API.G_FALSE,
1229: p_module_type,--NULL Sthilak for bug #14036337,,
1222: AHL_RM_ROUTE_PVT.create_route_revision
1223: (
1224: '1.0',
1225: FND_API.G_TRUE,
1226: FND_API.G_FALSE,
1227: FND_API.G_VALID_LEVEL_FULL,
1228: FND_API.G_FALSE,
1229: p_module_type,--NULL Sthilak for bug #14036337,,
1230: x_return_status,
1223: (
1224: '1.0',
1225: FND_API.G_TRUE,
1226: FND_API.G_FALSE,
1227: FND_API.G_VALID_LEVEL_FULL,
1228: FND_API.G_FALSE,
1229: p_module_type,--NULL Sthilak for bug #14036337,,
1230: x_return_status,
1231: x_msg_count,
1224: '1.0',
1225: FND_API.G_TRUE,
1226: FND_API.G_FALSE,
1227: FND_API.G_VALID_LEVEL_FULL,
1228: FND_API.G_FALSE,
1229: p_module_type,--NULL Sthilak for bug #14036337,,
1230: x_return_status,
1231: x_msg_count,
1232: x_msg_data,
1238: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
1239: fnd_log.string(fnd_log.level_statement,l_debug_module,'After calling create_route_revision..Return Status: ' || x_return_status || ' New Route Id: ' || x_route_id);
1240: END IF;
1241:
1242: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
1243: IF (l_log_statement >= l_log_current_level) THEN
1244: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_ROUTE_PVT.create_route_revision Error');
1245: END IF;
1246: /*Update_Route_Interface_table
1250: p_pub_date,
1251: 'N',
1252: x_msg_data
1253: );*/
1254: RAISE FND_API.G_EXC_ERROR;
1255: END IF;
1256:
1257: --to get the object version number of new revision
1258: SELECT object_version_number INTO l_ovn from
1276: -- Call the API for update
1277: AHL_RM_ROUTE_PVT.process_route
1278: (
1279: '1.0',
1280: FND_API.G_TRUE,
1281: FND_API.G_FALSE,
1282: FND_API.G_VALID_LEVEL_FULL,
1283: FND_API.G_FALSE,
1284: p_module_type,--NULL Sthilak for bug #14036337,,
1277: AHL_RM_ROUTE_PVT.process_route
1278: (
1279: '1.0',
1280: FND_API.G_TRUE,
1281: FND_API.G_FALSE,
1282: FND_API.G_VALID_LEVEL_FULL,
1283: FND_API.G_FALSE,
1284: p_module_type,--NULL Sthilak for bug #14036337,,
1285: x_return_status,
1278: (
1279: '1.0',
1280: FND_API.G_TRUE,
1281: FND_API.G_FALSE,
1282: FND_API.G_VALID_LEVEL_FULL,
1283: FND_API.G_FALSE,
1284: p_module_type,--NULL Sthilak for bug #14036337,,
1285: x_return_status,
1286: x_msg_count,
1279: '1.0',
1280: FND_API.G_TRUE,
1281: FND_API.G_FALSE,
1282: FND_API.G_VALID_LEVEL_FULL,
1283: FND_API.G_FALSE,
1284: p_module_type,--NULL Sthilak for bug #14036337,,
1285: x_return_status,
1286: x_msg_count,
1287: x_msg_data,
1291: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
1292: fnd_log.string(fnd_log.level_statement,l_debug_module,'After calling process_route in update mode x_return_status -> ' || x_return_status);
1293: END IF;
1294:
1295: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
1296: IF (l_log_statement >= l_log_current_level) THEN
1297: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_ROUTE_PVT.process_route Error');
1298: END IF;
1299: /*Update_Route_Interface_table
1303: p_pub_date,
1304: 'N',
1305: x_msg_data
1306: );*/
1307: RAISE FND_API.G_EXC_ERROR;
1308: END IF;
1309:
1310: -- Insert the transaction record into the staging table, with status as success
1311: /*Update_Route_Interface_table
1326: p_enigma_route_rec.op_asso_tbl,
1327: x_route_id
1328: );
1329:
1330: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
1331: IF (l_log_statement >= l_log_current_level) THEN
1332: fnd_log.string(fnd_log.level_statement,l_debug_module,'process_route_operation_association Error');
1333: END IF;
1334: /*Update_Route_Interface_table
1338: p_pub_date,
1339: 'N',
1340: x_msg_data
1341: );*/
1342: RAISE FND_API.G_EXC_ERROR;
1343: END IF;
1344:
1345: ELSIF ( l_get_latest_route_rev.revision_status = 'DRAFT'
1346: OR l_get_latest_route_rev.revision_status = 'APPROVAL_REJECTED' ) THEN
1358: -- Call the API for update.
1359: AHL_RM_ROUTE_PVT.process_route
1360: (
1361: '1.0',
1362: FND_API.G_TRUE,
1363: FND_API.G_FALSE,
1364: FND_API.G_VALID_LEVEL_FULL,
1365: FND_API.G_FALSE,
1366: p_module_type,--NULL Sthilak for bug #14036337,,
1359: AHL_RM_ROUTE_PVT.process_route
1360: (
1361: '1.0',
1362: FND_API.G_TRUE,
1363: FND_API.G_FALSE,
1364: FND_API.G_VALID_LEVEL_FULL,
1365: FND_API.G_FALSE,
1366: p_module_type,--NULL Sthilak for bug #14036337,,
1367: x_return_status,
1360: (
1361: '1.0',
1362: FND_API.G_TRUE,
1363: FND_API.G_FALSE,
1364: FND_API.G_VALID_LEVEL_FULL,
1365: FND_API.G_FALSE,
1366: p_module_type,--NULL Sthilak for bug #14036337,,
1367: x_return_status,
1368: x_msg_count,
1361: '1.0',
1362: FND_API.G_TRUE,
1363: FND_API.G_FALSE,
1364: FND_API.G_VALID_LEVEL_FULL,
1365: FND_API.G_FALSE,
1366: p_module_type,--NULL Sthilak for bug #14036337,,
1367: x_return_status,
1368: x_msg_count,
1369: x_msg_data,
1373: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
1374: fnd_log.string(fnd_log.level_statement,l_debug_module,'after calling process_route');
1375: END IF;
1376:
1377: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
1378: IF (l_log_statement >= l_log_current_level) THEN
1379: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_ROUTE_PVT.process_route Error');
1380: END IF;
1381: /*Update_Route_Interface_table
1385: p_pub_date,
1386: 'N',
1387: x_msg_data
1388: );*/
1389: RAISE FND_API.G_EXC_ERROR;
1390: END IF;
1391:
1392: /*Update_Route_Interface_table(
1393: p_enigma_route_rec,
1405: p_enigma_route_rec.op_asso_tbl,
1406: l_get_latest_route_rev.route_id
1407: );
1408:
1409: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
1410: IF (l_log_statement >= l_log_current_level) THEN
1411: fnd_log.string(fnd_log.level_statement,l_debug_module,'process_route_operation_association Error');
1412: END IF;
1413: /*Update_Route_Interface_table
1417: p_pub_date,
1418: 'N',
1419: x_msg_data
1420: );*/
1421: RAISE FND_API.G_EXC_ERROR;
1422: END IF;
1423: END IF; -- Status check
1424: END IF; -- Change Flag U
1425:
1424: END IF; -- Change Flag U
1425:
1426: IF (p_enigma_route_rec.DML_OPERATION = 'C') THEN
1427: --Validation::Publish Date can not be null
1428: IF (p_pub_date IS NULL OR p_pub_date = FND_API.G_MISS_DATE)THEN
1429: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_PUB_DATE_NULL');
1430: FND_MSG_PUB.ADD;
1431: END IF;
1432:
1430: FND_MSG_PUB.ADD;
1431: END IF;
1432:
1433: --Validation::p_context can not be null
1434: IF (p_context IS NULL OR p_context = FND_API.G_MISS_CHAR)THEN
1435: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_CONTEXT_NULL');
1436: FND_MSG_PUB.ADD;
1437: END IF;
1438:
1436: FND_MSG_PUB.ADD;
1437: END IF;
1438:
1439: -- Validation::ENIGMA_DOC_ID can nnot be null
1440: IF (p_enigma_route_rec.ENIGMA_DOC_ID IS NULL OR p_enigma_route_rec.ENIGMA_DOC_ID = FND_API.G_MISS_CHAR)THEN
1441: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_DOC_ID_NULL');
1442: FND_MSG_PUB.ADD;
1443: END IF;
1444:
1454: x_msg_count := FND_MSG_PUB.count_msg;
1455: IF x_msg_count > 0 THEN
1456: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1457: p_data => x_msg_data,
1458: p_encoded => fnd_api.g_false);
1459: /*Update_Route_Interface_table
1460: (
1461: p_enigma_route_rec,
1462: p_context,
1463: p_pub_date,
1464: 'N',
1465: x_msg_data
1466: );*/
1467: RAISE FND_API.G_EXC_ERROR;
1468: END IF;
1469:
1470: -- Populate the input record with values.
1471: Map_Enigma_To_CMRO_Route_Rec
1481: -- Call the API for Create.
1482: AHL_RM_ROUTE_PVT.process_route
1483: (
1484: '1.0',
1485: FND_API.G_TRUE,
1486: FND_API.G_FALSE,
1487: FND_API.G_VALID_LEVEL_FULL,
1488: FND_API.G_FALSE,
1489: p_module_type,--NULL Sthilak for bug #14036337,
1482: AHL_RM_ROUTE_PVT.process_route
1483: (
1484: '1.0',
1485: FND_API.G_TRUE,
1486: FND_API.G_FALSE,
1487: FND_API.G_VALID_LEVEL_FULL,
1488: FND_API.G_FALSE,
1489: p_module_type,--NULL Sthilak for bug #14036337,
1490: x_return_status,
1483: (
1484: '1.0',
1485: FND_API.G_TRUE,
1486: FND_API.G_FALSE,
1487: FND_API.G_VALID_LEVEL_FULL,
1488: FND_API.G_FALSE,
1489: p_module_type,--NULL Sthilak for bug #14036337,
1490: x_return_status,
1491: x_msg_count,
1484: '1.0',
1485: FND_API.G_TRUE,
1486: FND_API.G_FALSE,
1487: FND_API.G_VALID_LEVEL_FULL,
1488: FND_API.G_FALSE,
1489: p_module_type,--NULL Sthilak for bug #14036337,
1490: x_return_status,
1491: x_msg_count,
1492: x_msg_data,
1496: fnd_log.string
1497: (fnd_log.level_statement,l_debug_module,'After Calling process_route in Create mode Route Id ' || p_process_route_input_rec.enigma_route_id);
1498: END IF;
1499:
1500: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
1501: IF (l_log_statement >= l_log_current_level) THEN
1502: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_ROUTE_PVT.process_route Error');
1503: END IF;
1504: /*Update_Route_Interface_table
1508: p_pub_date,
1509: 'N',
1510: x_msg_data
1511: );*/
1512: RAISE FND_API.G_EXC_ERROR;
1513: END IF;
1514:
1515: -- If the return status is success, then add the transaction to the stating table and status as "Success"
1516: /*Update_Route_Interface_table
1530: x_msg_data ,
1531: p_enigma_route_rec.op_asso_tbl,
1532: p_process_route_input_rec.route_id
1533: );
1534: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
1535: IF (l_log_statement >= l_log_current_level) THEN
1536: fnd_log.string(fnd_log.level_statement,l_debug_module,'process_route_operation_association Error');
1537: END IF;
1538: /*Update_Route_Interface_table
1542: p_pub_date,
1543: 'N',
1544: x_msg_data
1545: );*/
1546: RAISE FND_API.G_EXC_ERROR;
1547: END IF;
1548: END IF; -- status check 'C'
1549:
1550: -- Check Error Message stack.
1549:
1550: -- Check Error Message stack.
1551: x_msg_count := FND_MSG_PUB.count_msg;
1552: IF x_msg_count > 0 THEN
1553: RAISE FND_API.G_EXC_ERROR;
1554: END IF;
1555:
1556: -- Standard check for p_commit
1557: IF FND_API.To_Boolean (p_commit)THEN
1553: RAISE FND_API.G_EXC_ERROR;
1554: END IF;
1555:
1556: -- Standard check for p_commit
1557: IF FND_API.To_Boolean (p_commit)THEN
1558: COMMIT WORK;
1559: END IF;
1560:
1561: -- Standard call to get message count and if count is 1, get message info
1560:
1561: -- Standard call to get message count and if count is 1, get message info
1562: FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,
1563: p_data => x_msg_data,
1564: p_encoded => fnd_api.g_false );
1565:
1566: EXCEPTION
1567: WHEN FND_API.G_EXC_ERROR THEN
1568: x_return_status := FND_API.G_RET_STS_ERROR;
1563: p_data => x_msg_data,
1564: p_encoded => fnd_api.g_false );
1565:
1566: EXCEPTION
1567: WHEN FND_API.G_EXC_ERROR THEN
1568: x_return_status := FND_API.G_RET_STS_ERROR;
1569: Rollback to Process_Route_Details_SP;
1570: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1571: p_data => x_msg_data,
1564: p_encoded => fnd_api.g_false );
1565:
1566: EXCEPTION
1567: WHEN FND_API.G_EXC_ERROR THEN
1568: x_return_status := FND_API.G_RET_STS_ERROR;
1569: Rollback to Process_Route_Details_SP;
1570: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1571: p_data => x_msg_data,
1572: p_encoded => fnd_api.g_false);
1568: x_return_status := FND_API.G_RET_STS_ERROR;
1569: Rollback to Process_Route_Details_SP;
1570: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1571: p_data => x_msg_data,
1572: p_encoded => fnd_api.g_false);
1573: IF (upper(l_get_latest_route_rev.revision_status) = 'APPROVAL_PENDING') THEN
1574: isrecoverable := 'Y';
1575: ELSE
1576: isrecoverable := 'N';
1583: isrecoverable,
1584: x_msg_data
1585: );
1586:
1587: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1588: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1589: Rollback to Process_Route_Details_SP;
1590: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1591: p_data => x_msg_data,
1584: x_msg_data
1585: );
1586:
1587: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1588: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1589: Rollback to Process_Route_Details_SP;
1590: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1591: p_data => x_msg_data,
1592: p_encoded => fnd_api.g_false);
1588: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1589: Rollback to Process_Route_Details_SP;
1590: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1591: p_data => x_msg_data,
1592: p_encoded => fnd_api.g_false);
1593: isrecoverable := 'N';
1594: Update_Route_Interface_table
1595: (
1596: p_enigma_route_rec,
1600: x_msg_data
1601: );
1602:
1603: WHEN OTHERS THEN
1604: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1605: Rollback to Process_Route_Details_SP;
1606: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1607: THEN
1608: fnd_msg_pub.add_exc_msg(p_pkg_name => G_PKG_NAME,
1610: p_error_text => SUBSTR(SQLERRM,1,240));
1611: END IF;
1612: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1613: p_data => x_msg_data,
1614: p_encoded => fnd_api.g_false);
1615: isrecoverable := 'N';
1616: Update_Route_Interface_table
1617: (
1618: p_enigma_route_rec,
1686:
1687: PROCEDURE Process_OP_Details
1688: (
1689: p_api_version IN NUMBER := '1.0',
1690: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
1691: p_commit IN VARCHAR2 := FND_API.G_FALSE,
1692: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1693: p_default IN VARCHAR2 := FND_API.G_FALSE,
1694: p_module_type IN VARCHAR2 := NULL,
1687: PROCEDURE Process_OP_Details
1688: (
1689: p_api_version IN NUMBER := '1.0',
1690: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
1691: p_commit IN VARCHAR2 := FND_API.G_FALSE,
1692: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1693: p_default IN VARCHAR2 := FND_API.G_FALSE,
1694: p_module_type IN VARCHAR2 := NULL,
1695: x_return_status OUT NOCOPY VARCHAR2,
1688: (
1689: p_api_version IN NUMBER := '1.0',
1690: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
1691: p_commit IN VARCHAR2 := FND_API.G_FALSE,
1692: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1693: p_default IN VARCHAR2 := FND_API.G_FALSE,
1694: p_module_type IN VARCHAR2 := NULL,
1695: x_return_status OUT NOCOPY VARCHAR2,
1696: x_msg_count OUT NOCOPY NUMBER,
1689: p_api_version IN NUMBER := '1.0',
1690: p_init_msg_list IN VARCHAR2 := FND_API.G_TRUE,
1691: p_commit IN VARCHAR2 := FND_API.G_FALSE,
1692: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
1693: p_default IN VARCHAR2 := FND_API.G_FALSE,
1694: p_module_type IN VARCHAR2 := NULL,
1695: x_return_status OUT NOCOPY VARCHAR2,
1696: x_msg_count OUT NOCOPY NUMBER,
1697: x_msg_data OUT NOCOPY VARCHAR2,
1744: -- Standard start of API savepoint
1745: SAVEPOINT Process_OP_Details_SP;
1746:
1747: -- Initialize return status to success before any code logic/validation
1748: x_return_status:= FND_API.G_RET_STS_SUCCESS;
1749:
1750: -- Standard call to check for call compatibility
1751: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
1752: THEN
1747: -- Initialize return status to success before any code logic/validation
1748: x_return_status:= FND_API.G_RET_STS_SUCCESS;
1749:
1750: -- Standard call to check for call compatibility
1751: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
1752: THEN
1753: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1754: END IF;
1755:
1749:
1750: -- Standard call to check for call compatibility
1751: IF NOT FND_API.COMPATIBLE_API_CALL (l_api_version, p_api_version, l_api_name, G_PKG_NAME)
1752: THEN
1753: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1754: END IF;
1755:
1756: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
1757: IF FND_API.TO_BOOLEAN(p_init_msg_list)
1752: THEN
1753: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1754: END IF;
1755:
1756: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
1757: IF FND_API.TO_BOOLEAN(p_init_msg_list)
1758: THEN
1759: FND_MSG_PUB.INITIALIZE;
1760: END IF;
1753: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1754: END IF;
1755:
1756: -- Initialize message list if p_init_msg_list = FND_API.G_TRUE
1757: IF FND_API.TO_BOOLEAN(p_init_msg_list)
1758: THEN
1759: FND_MSG_PUB.INITIALIZE;
1760: END IF;
1761:
1781: FND_MESSAGE.SET_NAME('AHL', 'AHL_COM_INVALID_DML');
1782: FND_MESSAGE.SET_TOKEN('FIELD', p_enigma_op_rec.DML_OPERATION);
1783: FND_MESSAGE.SET_TOKEN('RECORD', p_enigma_op_rec.ENIGMA_OP_ID);
1784: FND_MSG_PUB.ADD;
1785: RAISE FND_API.G_EXC_ERROR;
1786: END IF;
1787:
1788: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)
1789: THEN
1800:
1801: -- Validating ALL Mandatory Fields.
1802:
1803: --validate Enigma Document Id
1804: IF ( p_enigma_op_rec.ENIGMA_DOC_ID IS NULL OR p_enigma_op_rec.ENIGMA_DOC_ID = FND_API.G_MISS_CHAR)
1805: THEN
1806: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_ENIGMA_ID_NULL');
1807: FND_MSG_PUB.ADD;
1808: END IF;
1806: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_ENIGMA_ID_NULL');
1807: FND_MSG_PUB.ADD;
1808: END IF;
1809: --validate Enigma Operation Id
1810: IF ( p_enigma_op_rec.ENIGMA_OP_ID IS NULL OR p_enigma_op_rec.ENIGMA_OP_ID = FND_API.G_MISS_CHAR)
1811: THEN
1812: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_OPER_ID_NULL');
1813: FND_MSG_PUB.ADD;
1814: END IF;
1812: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_OPER_ID_NULL');
1813: FND_MSG_PUB.ADD;
1814: END IF;
1815: --validate Opearator
1816: IF ( p_enigma_op_rec.OPERATOR IS NULL OR p_enigma_op_rec.OPERATOR = FND_API.G_MISS_CHAR)
1817: THEN
1818: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_OPERATOR_ID_NULL');
1819: FND_MSG_PUB.ADD;
1820: END IF;
1818: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_OPERATOR_ID_NULL');
1819: FND_MSG_PUB.ADD;
1820: END IF;
1821: -- validate Oem Doc Type
1822: IF ( p_enigma_op_rec.OEM_DOC_TYPE IS NULL OR p_enigma_op_rec.OEM_DOC_TYPE = FND_API.G_MISS_CHAR)
1823: THEN
1824: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_OEM_DOC_TYPE_NULL');
1825: FND_MSG_PUB.ADD;
1826: END IF;
1824: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_OEM_DOC_TYPE_NULL');
1825: FND_MSG_PUB.ADD;
1826: END IF;
1827: -- validate Chapter,Section,Subject
1828: IF ( p_enigma_op_rec.CHAPTER_SECTION_SUBJECT IS NULL OR p_enigma_op_rec.CHAPTER_SECTION_SUBJECT = FND_API.G_MISS_CHAR)
1829: THEN
1830: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_CHA_SEC_SUB_NULL');
1831: FND_MSG_PUB.ADD;
1832: END IF;
1830: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_CHA_SEC_SUB_NULL');
1831: FND_MSG_PUB.ADD;
1832: END IF;
1833: -- Validate AMTOSS Function
1834: IF ( p_enigma_op_rec.AMTOSS_Function IS NULL OR p_enigma_op_rec.AMTOSS_Function = FND_API.G_MISS_CHAR)
1835: THEN
1836: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_AMTOSS_FUN_NULL');
1837: FND_MSG_PUB.ADD;
1838: END IF;
1837: FND_MSG_PUB.ADD;
1838: END IF;
1839:
1840: --Validate Model Code
1841: IF (p_context IS NULL AND p_context = FND_API.G_MISS_CHAR)
1842: THEN
1843: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_CONTEXT_NULL');
1844: FND_MSG_PUB.ADD;
1845: END IF;
1846:
1847: x_msg_count := FND_MSG_PUB.count_msg;
1848: IF x_msg_count > 0
1849: THEN
1850: RAISE FND_API.G_EXC_ERROR;
1851: END IF;
1852:
1853: -- Populate the input records
1854: IF (p_enigma_op_rec.OPERATOR <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.OPERATOR IS NOT NULL ) THEN
1850: RAISE FND_API.G_EXC_ERROR;
1851: END IF;
1852:
1853: -- Populate the input records
1854: IF (p_enigma_op_rec.OPERATOR <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.OPERATOR IS NOT NULL ) THEN
1855: p_process_oper_input_rec.SEGMENT1 := p_enigma_op_rec.OPERATOR;
1856: END IF;
1857:
1858: IF (p_enigma_op_rec.EQUIPMENT <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.EQUIPMENT IS NOT NULL ) THEN
1854: IF (p_enigma_op_rec.OPERATOR <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.OPERATOR IS NOT NULL ) THEN
1855: p_process_oper_input_rec.SEGMENT1 := p_enigma_op_rec.OPERATOR;
1856: END IF;
1857:
1858: IF (p_enigma_op_rec.EQUIPMENT <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.EQUIPMENT IS NOT NULL ) THEN
1859: p_process_oper_input_rec.SEGMENT2 := p_enigma_op_rec.EQUIPMENT;
1860: END IF;
1861:
1862: IF (p_enigma_op_rec.OEM_DOC_TYPE <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.OEM_DOC_TYPE IS NOT NULL ) THEN
1858: IF (p_enigma_op_rec.EQUIPMENT <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.EQUIPMENT IS NOT NULL ) THEN
1859: p_process_oper_input_rec.SEGMENT2 := p_enigma_op_rec.EQUIPMENT;
1860: END IF;
1861:
1862: IF (p_enigma_op_rec.OEM_DOC_TYPE <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.OEM_DOC_TYPE IS NOT NULL ) THEN
1863: p_process_oper_input_rec.SEGMENT3 := p_enigma_op_rec.OEM_DOC_TYPE;
1864: END IF;
1865:
1866: IF (p_enigma_op_rec.CHAPTER_SECTION_SUBJECT <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.CHAPTER_SECTION_SUBJECT IS NOT NULL ) THEN
1862: IF (p_enigma_op_rec.OEM_DOC_TYPE <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.OEM_DOC_TYPE IS NOT NULL ) THEN
1863: p_process_oper_input_rec.SEGMENT3 := p_enigma_op_rec.OEM_DOC_TYPE;
1864: END IF;
1865:
1866: IF (p_enigma_op_rec.CHAPTER_SECTION_SUBJECT <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.CHAPTER_SECTION_SUBJECT IS NOT NULL ) THEN
1867: p_process_oper_input_rec.SEGMENT4 := p_enigma_op_rec.CHAPTER_SECTION_SUBJECT;
1868: END IF;
1869:
1870: IF (p_enigma_op_rec.AMTOSS_Function <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.AMTOSS_Function IS NOT NULL ) THEN
1866: IF (p_enigma_op_rec.CHAPTER_SECTION_SUBJECT <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.CHAPTER_SECTION_SUBJECT IS NOT NULL ) THEN
1867: p_process_oper_input_rec.SEGMENT4 := p_enigma_op_rec.CHAPTER_SECTION_SUBJECT;
1868: END IF;
1869:
1870: IF (p_enigma_op_rec.AMTOSS_Function <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.AMTOSS_Function IS NOT NULL ) THEN
1871: p_process_oper_input_rec.SEGMENT5 := p_enigma_op_rec.AMTOSS_Function;
1872: END IF;
1873:
1874: --If OP_SEQ is not passed from enigma document sequence will be passed.
1871: p_process_oper_input_rec.SEGMENT5 := p_enigma_op_rec.AMTOSS_Function;
1872: END IF;
1873:
1874: --If OP_SEQ is not passed from enigma document sequence will be passed.
1875: IF (p_enigma_op_rec.OP_SEQ <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.OP_SEQ IS NOT NULL ) THEN
1876: p_process_oper_input_rec.SEGMENT6 := p_enigma_op_rec.OP_SEQ;
1877: ELSIF ( p_enigma_op_rec.OP_SEQ IS NULL OR p_enigma_op_rec.OP_SEQ = FND_API.G_MISS_CHAR) THEN
1878: SELECT AHL_ENIGMA_OP_SEQ_S.NEXTVAL
1879: INTO l_op_sq
1873:
1874: --If OP_SEQ is not passed from enigma document sequence will be passed.
1875: IF (p_enigma_op_rec.OP_SEQ <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.OP_SEQ IS NOT NULL ) THEN
1876: p_process_oper_input_rec.SEGMENT6 := p_enigma_op_rec.OP_SEQ;
1877: ELSIF ( p_enigma_op_rec.OP_SEQ IS NULL OR p_enigma_op_rec.OP_SEQ = FND_API.G_MISS_CHAR) THEN
1878: SELECT AHL_ENIGMA_OP_SEQ_S.NEXTVAL
1879: INTO l_op_sq
1880: FROM DUAL;
1881: p_process_oper_input_rec.SEGMENT6 := l_op_sq || fnd_profile.value('AHL_ENIGMA_OP_SEQ');
1880: FROM DUAL;
1881: p_process_oper_input_rec.SEGMENT6 := l_op_sq || fnd_profile.value('AHL_ENIGMA_OP_SEQ');
1882: END IF;
1883:
1884: IF (p_enigma_op_rec.CONFIG_LETTER <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.CONFIG_LETTER IS NOT NULL ) THEN
1885: p_process_oper_input_rec.SEGMENT7 := p_enigma_op_rec.CONFIG_LETTER;
1886: END IF;
1887:
1888: IF (p_enigma_op_rec.description <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.description IS NOT NULL ) THEN
1884: IF (p_enigma_op_rec.CONFIG_LETTER <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.CONFIG_LETTER IS NOT NULL ) THEN
1885: p_process_oper_input_rec.SEGMENT7 := p_enigma_op_rec.CONFIG_LETTER;
1886: END IF;
1887:
1888: IF (p_enigma_op_rec.description <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.description IS NOT NULL ) THEN
1889: p_process_oper_input_rec.DESCRIPTION := substr(p_enigma_op_rec.description,1,500);
1890: p_process_oper_input_rec.remarks := p_enigma_op_rec.description;
1891: ELSE
1892: p_process_oper_input_rec.DESCRIPTION := p_enigma_op_rec.ATA_CODE;
1891: ELSE
1892: p_process_oper_input_rec.DESCRIPTION := p_enigma_op_rec.ATA_CODE;
1893: END IF;
1894:
1895: IF (p_enigma_op_rec.ENIGMA_OP_ID <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.ENIGMA_OP_ID IS NOT NULL ) THEN
1896: p_process_oper_input_rec.ENIGMA_OP_ID := p_enigma_op_rec.ENIGMA_OP_ID;
1897: END IF;
1898:
1899: IF (p_enigma_op_rec.ENIGMA_DOC_ID <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.ENIGMA_DOC_ID IS NOT NULL ) THEN
1895: IF (p_enigma_op_rec.ENIGMA_OP_ID <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.ENIGMA_OP_ID IS NOT NULL ) THEN
1896: p_process_oper_input_rec.ENIGMA_OP_ID := p_enigma_op_rec.ENIGMA_OP_ID;
1897: END IF;
1898:
1899: IF (p_enigma_op_rec.ENIGMA_DOC_ID <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.ENIGMA_DOC_ID IS NOT NULL ) THEN
1900: p_process_oper_input_rec.ENIGMA_DOC_ID := p_enigma_op_rec.ENIGMA_DOC_ID;
1901: END IF;
1902:
1903: IF (p_context <> FND_API.G_MISS_CHAR AND p_context IS NOT NULL ) THEN
1899: IF (p_enigma_op_rec.ENIGMA_DOC_ID <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.ENIGMA_DOC_ID IS NOT NULL ) THEN
1900: p_process_oper_input_rec.ENIGMA_DOC_ID := p_enigma_op_rec.ENIGMA_DOC_ID;
1901: END IF;
1902:
1903: IF (p_context <> FND_API.G_MISS_CHAR AND p_context IS NOT NULL ) THEN
1904: p_process_oper_input_rec.MODEL_CODE := p_context;
1905: END IF;
1906:
1907: IF (p_pub_date > sysdate ) THEN
1921: -- Call the API for update
1922: AHL_RM_OPERATION_PVT.process_operation
1923: (
1924: '1.0',
1925: FND_API.G_TRUE,
1926: FND_API.G_FALSE,
1927: FND_API.G_VALID_LEVEL_FULL,
1928: FND_API.G_FALSE,
1929: p_module_type,--NULL Sthilak for bug #14036337,,
1922: AHL_RM_OPERATION_PVT.process_operation
1923: (
1924: '1.0',
1925: FND_API.G_TRUE,
1926: FND_API.G_FALSE,
1927: FND_API.G_VALID_LEVEL_FULL,
1928: FND_API.G_FALSE,
1929: p_module_type,--NULL Sthilak for bug #14036337,,
1930: x_return_status,
1923: (
1924: '1.0',
1925: FND_API.G_TRUE,
1926: FND_API.G_FALSE,
1927: FND_API.G_VALID_LEVEL_FULL,
1928: FND_API.G_FALSE,
1929: p_module_type,--NULL Sthilak for bug #14036337,,
1930: x_return_status,
1931: x_msg_count,
1924: '1.0',
1925: FND_API.G_TRUE,
1926: FND_API.G_FALSE,
1927: FND_API.G_VALID_LEVEL_FULL,
1928: FND_API.G_FALSE,
1929: p_module_type,--NULL Sthilak for bug #14036337,,
1930: x_return_status,
1931: x_msg_count,
1932: x_msg_data,
1946: IF (l_log_statement >= l_log_current_level) THEN
1947: fnd_log.string(fnd_log.level_statement,l_debug_module,'After AHL_RM_OPERATION_PVT.process_operation');
1948: END IF;
1949:
1950: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
1951: IF (l_log_statement >= l_log_current_level) THEN
1952: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.process_operation Error');
1953: END IF;
1954: RAISE FND_API.G_EXC_ERROR;
1950: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
1951: IF (l_log_statement >= l_log_current_level) THEN
1952: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.process_operation Error');
1953: END IF;
1954: RAISE FND_API.G_EXC_ERROR;
1955: END IF;
1956:
1957: IF (l_log_statement >= l_log_current_level) THEN
1958: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.process_operation -> creation Successful');
1985:
1986: l_get_latest_oper_rev := NULL;
1987:
1988: --validate Enigma Document Id, It should not be null
1989: IF ( p_enigma_op_rec.ENIGMA_DOC_ID IS NULL OR p_enigma_op_rec.ENIGMA_DOC_ID = FND_API.G_MISS_CHAR)
1990: THEN
1991: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_ENIGMA_ID_NULL');
1992: FND_MSG_PUB.ADD;
1993: END IF;
1992: FND_MSG_PUB.ADD;
1993: END IF;
1994:
1995: --validate Enigma Operation Id
1996: IF ( p_enigma_op_rec.ENIGMA_OP_ID IS NULL OR p_enigma_op_rec.ENIGMA_OP_ID = FND_API.G_MISS_CHAR)
1997: THEN
1998: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_OPER_ID_NULL');
1999: FND_MSG_PUB.ADD;
2000: END IF;
1999: FND_MSG_PUB.ADD;
2000: END IF;
2001:
2002: --Validate Model Code
2003: IF (p_context IS NULL AND p_context = FND_API.G_MISS_DATE)
2004: THEN
2005: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_CONTEXT_NULL');
2006: FND_MSG_PUB.ADD;
2007: END IF;
2008:
2009: x_msg_count := FND_MSG_PUB.count_msg;
2010: IF x_msg_count > 0
2011: THEN
2012: RAISE FND_API.G_EXC_ERROR;
2013: END IF;
2014:
2015: -- Fetch the data from Table
2016: OPEN get_latest_oper_rev (p_enigma_op_rec.ENIGMA_OP_ID);
2038: -- staging table with status as pending.
2039: IF ( upper(l_get_latest_oper_rev.revision_status) = 'APPROVAL_PENDING' ) THEN
2040: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_OP_APR_PENDING');
2041: FND_MSG_PUB.ADD;
2042: RAISE FND_API.G_EXC_ERROR;
2043: /*OP_interface_insert_row(
2044: X_CONTEXT => p_context,
2045: X_PUBLISH_DATE => p_pub_date,
2046: X_ENIGMA_OPERATION_ID => p_enigma_op_rec.ENIGMA_OP_ID,
2056: -- Call the API to create a new revision of the operation.
2057: AHL_RM_OPERATION_PVT.create_oper_revision
2058: (
2059: '1.0',
2060: FND_API.G_TRUE,
2061: FND_API.G_FALSE,
2062: FND_API.G_VALID_LEVEL_FULL,
2063: FND_API.G_FALSE,
2064: p_module_type,--NULL Sthilak for bug #14036337,,
2057: AHL_RM_OPERATION_PVT.create_oper_revision
2058: (
2059: '1.0',
2060: FND_API.G_TRUE,
2061: FND_API.G_FALSE,
2062: FND_API.G_VALID_LEVEL_FULL,
2063: FND_API.G_FALSE,
2064: p_module_type,--NULL Sthilak for bug #14036337,,
2065: x_return_status,
2058: (
2059: '1.0',
2060: FND_API.G_TRUE,
2061: FND_API.G_FALSE,
2062: FND_API.G_VALID_LEVEL_FULL,
2063: FND_API.G_FALSE,
2064: p_module_type,--NULL Sthilak for bug #14036337,,
2065: x_return_status,
2066: x_msg_count,
2059: '1.0',
2060: FND_API.G_TRUE,
2061: FND_API.G_FALSE,
2062: FND_API.G_VALID_LEVEL_FULL,
2063: FND_API.G_FALSE,
2064: p_module_type,--NULL Sthilak for bug #14036337,,
2065: x_return_status,
2066: x_msg_count,
2067: x_msg_data,
2073: IF (l_log_statement >= l_log_current_level) THEN
2074: fnd_log.string(fnd_log.level_statement,l_debug_module,'After AHL_RM_OPERATION_PVT.create_oper_revision');
2075: END IF;
2076:
2077: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
2078: IF (l_log_statement >= l_log_current_level) THEN
2079: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.create_oper_revision Error');
2080: END IF;
2081: RAISE FND_API.G_EXC_ERROR;
2077: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
2078: IF (l_log_statement >= l_log_current_level) THEN
2079: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.create_oper_revision Error');
2080: END IF;
2081: RAISE FND_API.G_EXC_ERROR;
2082: END IF;
2083:
2084: IF (l_log_statement >= l_log_current_level) THEN
2085: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.create_oper_revision -> revision Created');
2087: END IF;
2088:
2089: -- If the return status is success, populate the input rec for process_operation for updation
2090:
2091: IF ( x_operation_id <> FND_API.G_MISS_NUM AND x_operation_id IS NOT NULL) THEN
2092: p_process_oper_input_rec.OPERATION_ID := x_operation_id ;
2093: END IF;
2094:
2095: OPEN c_get_op_rec (p_process_oper_input_rec.OPERATION_ID);
2096: FETCH c_get_op_rec INTO
2097: l_rev_op_rec.object_version_number;
2098: CLOSE c_get_op_rec;
2099:
2100: IF (l_rev_op_rec.object_version_number <> FND_API.G_MISS_NUM AND l_rev_op_rec.object_version_number IS NOT NULL ) THEN
2101: p_process_oper_input_rec.OBJECT_VERSION_NUMBER := l_rev_op_rec.object_version_number;
2102: END IF;
2103:
2104: IF (p_context <> FND_API.G_MISS_CHAR AND p_context IS NOT NULL ) THEN
2100: IF (l_rev_op_rec.object_version_number <> FND_API.G_MISS_NUM AND l_rev_op_rec.object_version_number IS NOT NULL ) THEN
2101: p_process_oper_input_rec.OBJECT_VERSION_NUMBER := l_rev_op_rec.object_version_number;
2102: END IF;
2103:
2104: IF (p_context <> FND_API.G_MISS_CHAR AND p_context IS NOT NULL ) THEN
2105: p_process_oper_input_rec.MODEL_CODE := p_context;
2106: END IF;
2107:
2108: IF (p_enigma_op_rec.description <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.description IS NOT NULL ) THEN
2104: IF (p_context <> FND_API.G_MISS_CHAR AND p_context IS NOT NULL ) THEN
2105: p_process_oper_input_rec.MODEL_CODE := p_context;
2106: END IF;
2107:
2108: IF (p_enigma_op_rec.description <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.description IS NOT NULL ) THEN
2109: p_process_oper_input_rec.DESCRIPTION := substr(p_enigma_op_rec.description,1,500);
2110: p_process_oper_input_rec.remarks := p_enigma_op_rec.description;
2111: END IF;
2112:
2120: -- Call the API for update
2121: AHL_RM_OPERATION_PVT.process_operation
2122: (
2123: '1.0',
2124: FND_API.G_TRUE,
2125: FND_API.G_FALSE,
2126: FND_API.G_VALID_LEVEL_FULL,
2127: FND_API.G_FALSE,
2128: p_module_type,--NULL Sthilak for bug #14036337,,
2121: AHL_RM_OPERATION_PVT.process_operation
2122: (
2123: '1.0',
2124: FND_API.G_TRUE,
2125: FND_API.G_FALSE,
2126: FND_API.G_VALID_LEVEL_FULL,
2127: FND_API.G_FALSE,
2128: p_module_type,--NULL Sthilak for bug #14036337,,
2129: x_return_status,
2122: (
2123: '1.0',
2124: FND_API.G_TRUE,
2125: FND_API.G_FALSE,
2126: FND_API.G_VALID_LEVEL_FULL,
2127: FND_API.G_FALSE,
2128: p_module_type,--NULL Sthilak for bug #14036337,,
2129: x_return_status,
2130: x_msg_count,
2123: '1.0',
2124: FND_API.G_TRUE,
2125: FND_API.G_FALSE,
2126: FND_API.G_VALID_LEVEL_FULL,
2127: FND_API.G_FALSE,
2128: p_module_type,--NULL Sthilak for bug #14036337,,
2129: x_return_status,
2130: x_msg_count,
2131: x_msg_data,
2135: IF (l_log_statement >= l_log_current_level) THEN
2136: fnd_log.string(fnd_log.level_statement,l_debug_module,'After AHL_RM_OPERATION_PVT.process_operation');
2137: END IF;
2138:
2139: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
2140: IF (l_log_statement >= l_log_current_level) THEN
2141: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.process_operation Error');
2142: END IF;
2143: RAISE FND_API.G_EXC_ERROR;
2139: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
2140: IF (l_log_statement >= l_log_current_level) THEN
2141: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.process_operation Error');
2142: END IF;
2143: RAISE FND_API.G_EXC_ERROR;
2144: END IF;
2145:
2146: IF (l_log_statement >= l_log_current_level) THEN
2147: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.process_operation:COMPLETE -> updation Successful');
2157: fnd_log.string(fnd_log.level_statement,l_debug_module,'populate the input rec');
2158: END IF;
2159:
2160: -- If the return status is success, populate the input rec for process_operation for updation
2161: IF ( l_get_latest_oper_rev.operation_id <> FND_API.G_MISS_NUM AND l_get_latest_oper_rev.operation_id IS NOT NULL) THEN
2162: p_process_oper_input_rec.OPERATION_ID := l_get_latest_oper_rev.operation_id ;
2163: END IF;
2164:
2165: IF (l_get_latest_oper_rev.object_version_number <> FND_API.G_MISS_NUM AND l_get_latest_oper_rev.object_version_number IS NOT NULL ) THEN
2161: IF ( l_get_latest_oper_rev.operation_id <> FND_API.G_MISS_NUM AND l_get_latest_oper_rev.operation_id IS NOT NULL) THEN
2162: p_process_oper_input_rec.OPERATION_ID := l_get_latest_oper_rev.operation_id ;
2163: END IF;
2164:
2165: IF (l_get_latest_oper_rev.object_version_number <> FND_API.G_MISS_NUM AND l_get_latest_oper_rev.object_version_number IS NOT NULL ) THEN
2166: p_process_oper_input_rec.OBJECT_VERSION_NUMBER := l_get_latest_oper_rev.object_version_number;
2167: END IF;
2168:
2169: IF (p_context <> FND_API.G_MISS_CHAR AND p_context IS NOT NULL ) THEN
2165: IF (l_get_latest_oper_rev.object_version_number <> FND_API.G_MISS_NUM AND l_get_latest_oper_rev.object_version_number IS NOT NULL ) THEN
2166: p_process_oper_input_rec.OBJECT_VERSION_NUMBER := l_get_latest_oper_rev.object_version_number;
2167: END IF;
2168:
2169: IF (p_context <> FND_API.G_MISS_CHAR AND p_context IS NOT NULL ) THEN
2170: p_process_oper_input_rec.MODEL_CODE := p_context;
2171: END IF;
2172:
2173: IF (p_enigma_op_rec.description <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.description IS NOT NULL ) THEN
2169: IF (p_context <> FND_API.G_MISS_CHAR AND p_context IS NOT NULL ) THEN
2170: p_process_oper_input_rec.MODEL_CODE := p_context;
2171: END IF;
2172:
2173: IF (p_enigma_op_rec.description <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.description IS NOT NULL ) THEN
2174: p_process_oper_input_rec.DESCRIPTION := substr(p_enigma_op_rec.description,1,500);
2175: p_process_oper_input_rec.remarks := p_enigma_op_rec.description;
2176: END IF;
2177:
2174: p_process_oper_input_rec.DESCRIPTION := substr(p_enigma_op_rec.description,1,500);
2175: p_process_oper_input_rec.remarks := p_enigma_op_rec.description;
2176: END IF;
2177:
2178: IF (p_enigma_op_rec.ENIGMA_DOC_ID <> FND_API.G_MISS_CHAR AND p_enigma_op_rec.ENIGMA_DOC_ID IS NOT NULL ) THEN
2179: p_process_oper_input_rec.ENIGMA_DOC_ID := p_enigma_op_rec.ENIGMA_DOC_ID;
2180: END IF;
2181:
2182: p_process_oper_input_rec.DML_OPERATION := 'U';
2197: -- Call the API for update
2198: AHL_RM_OPERATION_PVT.process_operation
2199: (
2200: '1.0',
2201: FND_API.G_TRUE,
2202: FND_API.G_FALSE,
2203: FND_API.G_VALID_LEVEL_FULL,
2204: FND_API.G_FALSE,
2205: p_module_type,--NULL Sthilak for bug #14036337,,
2198: AHL_RM_OPERATION_PVT.process_operation
2199: (
2200: '1.0',
2201: FND_API.G_TRUE,
2202: FND_API.G_FALSE,
2203: FND_API.G_VALID_LEVEL_FULL,
2204: FND_API.G_FALSE,
2205: p_module_type,--NULL Sthilak for bug #14036337,,
2206: x_return_status,
2199: (
2200: '1.0',
2201: FND_API.G_TRUE,
2202: FND_API.G_FALSE,
2203: FND_API.G_VALID_LEVEL_FULL,
2204: FND_API.G_FALSE,
2205: p_module_type,--NULL Sthilak for bug #14036337,,
2206: x_return_status,
2207: x_msg_count,
2200: '1.0',
2201: FND_API.G_TRUE,
2202: FND_API.G_FALSE,
2203: FND_API.G_VALID_LEVEL_FULL,
2204: FND_API.G_FALSE,
2205: p_module_type,--NULL Sthilak for bug #14036337,,
2206: x_return_status,
2207: x_msg_count,
2208: x_msg_data,
2212: IF (l_log_statement >= l_log_current_level) THEN
2213: fnd_log.string(fnd_log.level_statement,l_debug_module,'After AHL_RM_OPERATION_PVT.process_operation');
2214: END IF;
2215:
2216: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
2217: IF (l_log_statement >= l_log_current_level) THEN
2218: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.process_operation Error');
2219: END IF;
2220: RAISE FND_API.G_EXC_ERROR;
2216: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
2217: IF (l_log_statement >= l_log_current_level) THEN
2218: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.process_operation Error');
2219: END IF;
2220: RAISE FND_API.G_EXC_ERROR;
2221: END IF;
2222:
2223: IF (l_log_statement >= l_log_current_level) THEN
2224: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.process_operation:DRAFT -> updation Successful');
2248: END IF;
2249: ELSE
2250: FND_MESSAGE.SET_NAME('AHL', 'AHL_ENIGMA_OPER_DONOT_EXIST');
2251: FND_MSG_PUB.ADD;
2252: RAISE FND_API.G_EXC_ERROR;
2253: END IF; -- Enigma Operation ID is NOT NULL Cursor Found
2254: -- If the operation change flag is "D" then process the operation accordingly .
2255: ELSIF (p_enigma_op_rec.DML_OPERATION = 'D') THEN
2256:
2287: -- This table is going to be restructured and based on new table this part of code will be modified.
2288: IF ( upper(l_get_latest_oper_rev.revision_status) = 'APPROVAL_PENDING' ) THEN
2289: FND_MESSAGE.Set_Name('AHL','AHL_ENIGMA_OP_APR_PENDING');
2290: FND_MSG_PUB.ADD;
2291: RAISE FND_API.G_EXC_ERROR;
2292: /*OP_interface_insert_row(
2293: X_CONTEXT => p_context,
2294: X_PUBLISH_DATE => p_pub_date,
2295: X_ENIGMA_OPERATION_ID => p_enigma_op_rec.ENIGMA_OP_ID,
2308: -- Call the delete operation API
2309: AHL_RM_OPERATION_PVT.delete_operation
2310: (
2311: 1.0,
2312: FND_API.G_TRUE,
2313: FND_API.G_FALSE,
2314: FND_API.G_VALID_LEVEL_FULL,
2315: FND_API.G_FALSE,
2316: NULL,
2309: AHL_RM_OPERATION_PVT.delete_operation
2310: (
2311: 1.0,
2312: FND_API.G_TRUE,
2313: FND_API.G_FALSE,
2314: FND_API.G_VALID_LEVEL_FULL,
2315: FND_API.G_FALSE,
2316: NULL,
2317: x_return_status,
2310: (
2311: 1.0,
2312: FND_API.G_TRUE,
2313: FND_API.G_FALSE,
2314: FND_API.G_VALID_LEVEL_FULL,
2315: FND_API.G_FALSE,
2316: NULL,
2317: x_return_status,
2318: x_msg_count,
2311: 1.0,
2312: FND_API.G_TRUE,
2313: FND_API.G_FALSE,
2314: FND_API.G_VALID_LEVEL_FULL,
2315: FND_API.G_FALSE,
2316: NULL,
2317: x_return_status,
2318: x_msg_count,
2319: x_msg_data,
2324: IF (l_log_statement >= l_log_current_level) THEN
2325: fnd_log.string(fnd_log.level_statement,l_debug_module,'After AHL_RM_OPERATION_PVT.delete_operation');
2326: END IF;
2327:
2328: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
2329: IF (l_log_statement >= l_log_current_level) THEN
2330: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.delete_operation Error');
2331: END IF;
2332: RAISE FND_API.G_EXC_ERROR;
2328: IF ( upper(x_return_status) <> FND_API.G_RET_STS_SUCCESS ) THEN
2329: IF (l_log_statement >= l_log_current_level) THEN
2330: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.delete_operation Error');
2331: END IF;
2332: RAISE FND_API.G_EXC_ERROR;
2333: END IF;
2334:
2335: IF (l_log_statement >= l_log_current_level) THEN
2336: fnd_log.string(fnd_log.level_statement,l_debug_module,'AHL_RM_OPERATION_PVT.delete_operation -> deletion Successful');
2339: ELSE
2340: -- If the operation is not found, then raise an error
2341: FND_MESSAGE.SET_NAME('AHL', 'AHL_ENIGMA_OPER_DONOT_EXIST');
2342: FND_MSG_PUB.ADD;
2343: RAISE FND_API.G_EXC_ERROR;
2344: END IF; -- Enigma operation ID not null
2345: END IF; -- Change Flag "D"
2346:
2347:
2348: -- Check Error Message stack.
2349: x_msg_count := FND_MSG_PUB.count_msg;
2350: IF x_msg_count > 0
2351: THEN
2352: RAISE FND_API.G_EXC_ERROR;
2353: END IF;
2354:
2355: -- Standard check for p_commit
2356: IF FND_API.To_Boolean (p_commit)
2352: RAISE FND_API.G_EXC_ERROR;
2353: END IF;
2354:
2355: -- Standard check for p_commit
2356: IF FND_API.To_Boolean (p_commit)
2357: THEN
2358: COMMIT WORK;
2359: END IF;
2360:
2360:
2361: -- Standard call to get message count and if count is 1, get message info
2362: FND_MSG_PUB.Count_And_Get ( p_count => x_msg_count,
2363: p_data => x_msg_data,
2364: p_encoded => fnd_api.g_false );
2365:
2366: EXCEPTION
2367: WHEN FND_API.G_EXC_ERROR THEN
2368: x_return_status := FND_API.G_RET_STS_ERROR;
2363: p_data => x_msg_data,
2364: p_encoded => fnd_api.g_false );
2365:
2366: EXCEPTION
2367: WHEN FND_API.G_EXC_ERROR THEN
2368: x_return_status := FND_API.G_RET_STS_ERROR;
2369: Rollback to Process_OP_Details_SP;
2370: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2371: p_data => x_msg_data,
2364: p_encoded => fnd_api.g_false );
2365:
2366: EXCEPTION
2367: WHEN FND_API.G_EXC_ERROR THEN
2368: x_return_status := FND_API.G_RET_STS_ERROR;
2369: Rollback to Process_OP_Details_SP;
2370: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2371: p_data => x_msg_data,
2372: p_encoded => fnd_api.g_false);
2368: x_return_status := FND_API.G_RET_STS_ERROR;
2369: Rollback to Process_OP_Details_SP;
2370: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2371: p_data => x_msg_data,
2372: p_encoded => fnd_api.g_false);
2373: IF (upper(l_get_latest_oper_rev.revision_status) = 'APPROVAL_PENDING') THEN
2374: isrecoverable := 'Y';
2375: ELSE
2376: isrecoverable := 'N';
2383: isrecoverable,
2384: x_msg_data
2385: );
2386:
2387: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2388: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2389: Rollback to Process_OP_Details_SP;
2390: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2391: p_data => x_msg_data,
2384: x_msg_data
2385: );
2386:
2387: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2388: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2389: Rollback to Process_OP_Details_SP;
2390: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2391: p_data => x_msg_data,
2392: p_encoded => fnd_api.g_false);
2388: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2389: Rollback to Process_OP_Details_SP;
2390: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2391: p_data => x_msg_data,
2392: p_encoded => fnd_api.g_false);
2393: isrecoverable := 'N';
2394: Update_OP_Interface_table
2395: (
2396: p_enigma_op_rec,
2400: x_msg_data
2401: );
2402:
2403: WHEN OTHERS THEN
2404: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2405: Rollback to Process_OP_Details_SP;
2406: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
2407: THEN
2408: fnd_msg_pub.add_exc_msg(p_pkg_name => G_PKG_NAME,
2410: p_error_text => SUBSTR(SQLERRM,1,240));
2411: END IF;
2412: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2413: p_data => x_msg_data,
2414: p_encoded => fnd_api.g_false);
2415: isrecoverable := 'N';
2416: Update_OP_Interface_table
2417: (
2418: p_enigma_op_rec,
2439: l_debug_module CONSTANT VARCHAR2(100) := 'ahl.plsql.'||'AHL_ENIGMA_ROUTE_OP_PUB'||'.'||l_api_name;
2440:
2441: BEGIN
2442:
2443: x_return_status := FND_API.G_RET_STS_SUCCESS;
2444:
2445: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)
2446: THEN
2447:
2456:
2457: IF p_file_name IS NULL THEN
2458: FND_MESSAGE.set_name( 'AHL','AHL_COM_REQD_PARAM_MISSING' );
2459: FND_MSG_PUB.add;
2460: x_return_status := FND_API.G_RET_STS_ERROR;
2461:
2462: IF (fnd_log.level_error >= fnd_log.g_current_runtime_level)THEN
2463: fnd_log.string
2464: (
2505:
2506:
2507: EXCEPTION
2508: WHEN OTHERS THEN
2509: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2510: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
2511: THEN
2512: fnd_msg_pub.add_exc_msg(p_pkg_name => G_PKG_NAME,
2513: p_procedure_name => 'UPLOAD_REVISION_REPORT',