30: G_DEBUG VARCHAR2(1) := AHL_DEBUG_PUB.is_log_enabled;
31:
32: PROCEDURE GET_OTHER_TASK_ITEMS (
33: p_api_version IN NUMBER,
34: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
35: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
36: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
37: p_module_type IN VARCHAR2 := NULL,
38: x_return_status OUT NOCOPY VARCHAR2,
31:
32: PROCEDURE GET_OTHER_TASK_ITEMS (
33: p_api_version IN NUMBER,
34: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
35: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
36: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
37: p_module_type IN VARCHAR2 := NULL,
38: x_return_status OUT NOCOPY VARCHAR2,
39: x_msg_count OUT NOCOPY NUMBER,
32: PROCEDURE GET_OTHER_TASK_ITEMS (
33: p_api_version IN NUMBER,
34: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
35: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
36: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
37: p_module_type IN VARCHAR2 := NULL,
38: x_return_status OUT NOCOPY VARCHAR2,
39: x_msg_count OUT NOCOPY NUMBER,
40: x_msg_data OUT NOCOPY VARCHAR2,
46:
47:
48: PROCEDURE GET_UNASSOCIATED_ITEMS (
49: p_api_version IN NUMBER,
50: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
51: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
52: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
53: p_module_type IN VARCHAR2 := NULL,
54: x_return_status OUT NOCOPY VARCHAR2,
47:
48: PROCEDURE GET_UNASSOCIATED_ITEMS (
49: p_api_version IN NUMBER,
50: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
51: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
52: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
53: p_module_type IN VARCHAR2 := NULL,
54: x_return_status OUT NOCOPY VARCHAR2,
55: x_msg_count OUT NOCOPY NUMBER,
48: PROCEDURE GET_UNASSOCIATED_ITEMS (
49: p_api_version IN NUMBER,
50: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
51: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
52: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
53: p_module_type IN VARCHAR2 := NULL,
54: x_return_status OUT NOCOPY VARCHAR2,
55: x_msg_count OUT NOCOPY NUMBER,
56: x_msg_data OUT NOCOPY VARCHAR2,
71: -- Parameters :
72: --
73: -- Standard IN Parameters :
74: -- p_api_version IN NUMBER Required
75: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
76: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
77: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
78: --
79: -- Standard OUT Parameters :
72: --
73: -- Standard IN Parameters :
74: -- p_api_version IN NUMBER Required
75: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
76: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
77: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
78: --
79: -- Standard OUT Parameters :
80: -- x_return_status OUT VARCHAR2 Required
73: -- Standard IN Parameters :
74: -- p_api_version IN NUMBER Required
75: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
76: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
77: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
78: --
79: -- Standard OUT Parameters :
80: -- x_return_status OUT VARCHAR2 Required
81: -- x_msg_count OUT NUMBER Required
91: -- End of Comments.
92:
93: PROCEDURE Get_Task_Cost_Details (
94: p_api_version IN NUMBER,
95: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
96: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
97: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
98: p_module_type IN VARCHAR2 := NULL,
99: p_x_cost_price_rec IN OUT NOCOPY AHL_VWP_VISIT_CST_PR_PVT.cost_price_rec_type,
92:
93: PROCEDURE Get_Task_Cost_Details (
94: p_api_version IN NUMBER,
95: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
96: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
97: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
98: p_module_type IN VARCHAR2 := NULL,
99: p_x_cost_price_rec IN OUT NOCOPY AHL_VWP_VISIT_CST_PR_PVT.cost_price_rec_type,
100: x_return_status OUT NOCOPY VARCHAR2,
93: PROCEDURE Get_Task_Cost_Details (
94: p_api_version IN NUMBER,
95: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
96: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
97: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
98: p_module_type IN VARCHAR2 := NULL,
99: p_x_cost_price_rec IN OUT NOCOPY AHL_VWP_VISIT_CST_PR_PVT.cost_price_rec_type,
100: x_return_status OUT NOCOPY VARCHAR2,
101: x_msg_count OUT NOCOPY NUMBER,
178: l_error_msg_code VARCHAR2(30);
179: l_module_type VARCHAR2(10);
180: l_found VARCHAR2(1);
181: l_valid_flag VARCHAR2(1);
182: l_commit VARCHAR2(10) := Fnd_Api.G_FALSE;
183:
184: l_wo_actual_cost NUMBER;
185: l_wo_estimated_cost NUMBER;
186: l_idx NUMBER;
203: -- Standard start of API savepoint
204: SAVEPOINT Get_Task_Cost_Details;
205:
206: -- Initialize message list if p_init_msg_list is set to TRUE
207: IF FND_API.To_Boolean( p_init_msg_list) THEN
208: FND_MSG_PUB.Initialize;
209: END IF;
210:
211: -- Initialize API return status to success
208: FND_MSG_PUB.Initialize;
209: END IF;
210:
211: -- Initialize API return status to success
212: x_return_status := FND_API.G_RET_STS_SUCCESS;
213:
214: --
215: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
216: fnd_log.string
234: END IF;
235:
236: -- Check for Required Parameters
237: IF(l_cost_price_rec.visit_task_id IS NULL OR
238: l_cost_price_rec.visit_task_id = FND_API.G_MISS_NUM) THEN
239: FND_MESSAGE.Set_Name(G_APP_NAME,'AHL_VWP_CST_INPUT_MISS');
240: FND_MSG_PUB.ADD;
241: IF (fnd_log.level_error >= fnd_log.g_current_runtime_level)THEN
242: fnd_log.string
245: 'ahl.plsql.'||g_pkg_name||'.'||l_api_name||':',
246: 'Visit Task id is mandatory but found null in input '
247: );
248: END IF;
249: RAISE FND_API.G_EXC_ERROR;
250: END IF;
251:
252: -- Get Cost and Price associated to task
253: OPEN Get_task_cost_price_cur(p_x_cost_price_rec.visit_task_id);
269: 'Visit Task not found in ahl_visit_tasks_b table'
270: );
271: END IF;
272: CLOSE Get_task_cost_price_cur;
273: RAISE FND_API.G_EXC_ERROR;
274: END IF;
275: CLOSE Get_task_cost_price_cur;
276:
277: -- Assign values to out variable
349: 'Price List Name not found in qp_list_headers table'
350: );
351: END IF;
352: CLOSE Get_price_list_name_cur;
353: RAISE FND_API.G_EXC_ERROR;
354: END IF;
355: CLOSE Get_price_list_name_cur;
356:
357: END IF; -- Price list not null
373: END IF;
374:
375: -- Get billing item id
376: IF (l_task_cost_price_rec.mr_id IS NOT NULL AND
377: l_task_cost_price_rec.mr_id <> FND_API.G_MISS_NUM ) THEN
378: -- Retrieve billing item
379: OPEN Get_billing_item_cur(l_task_cost_price_rec.mr_id);
380: FETCH Get_billing_item_cur INTO l_cost_price_rec.billing_item_id,l_cost_price_rec.item_name,l_cost_price_rec.mr_title;
381: CLOSE Get_billing_item_cur;
417: 'Visit id not found in ahl_visits_b table'
418: );
419: END IF;
420: CLOSE visit_info_csr;
421: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
422: END IF;
423: CLOSE visit_info_csr;
424:
425: -- Not to calculate cost if visit is in cancelled status
465:
466: -- Check Error Message stack.
467: l_msg_count := FND_MSG_PUB.count_msg;
468: IF l_msg_count > 0 THEN
469: x_return_status := FND_API.G_RET_STS_ERROR;
470: RAISE FND_API.G_EXC_ERROR;
471: END IF;
472:
473: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level) THEN
466: -- Check Error Message stack.
467: l_msg_count := FND_MSG_PUB.count_msg;
468: IF l_msg_count > 0 THEN
469: x_return_status := FND_API.G_RET_STS_ERROR;
470: RAISE FND_API.G_EXC_ERROR;
471: END IF;
472:
473: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level) THEN
474: fnd_log.string
522:
523: -- Check Error Message stack.
524: l_msg_count := FND_MSG_PUB.count_msg;
525: IF l_msg_count > 0 THEN
526: x_return_status := FND_API.G_RET_STS_ERROR;
527: RAISE FND_API.G_EXC_ERROR;
528: END IF;
529:
530: --Log message
523: -- Check Error Message stack.
524: l_msg_count := FND_MSG_PUB.count_msg;
525: IF l_msg_count > 0 THEN
526: x_return_status := FND_API.G_RET_STS_ERROR;
527: RAISE FND_API.G_EXC_ERROR;
528: END IF;
529:
530: --Log message
531: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level) THEN
583:
584: -- Check Error Message stack.
585: l_msg_count := FND_MSG_PUB.count_msg;
586: IF l_msg_count > 0 THEN
587: x_return_status := FND_API.G_RET_STS_ERROR;
588: RAISE FND_API.G_EXC_ERROR;
589: END IF;
590:
591: --Log message
584: -- Check Error Message stack.
585: l_msg_count := FND_MSG_PUB.count_msg;
586: IF l_msg_count > 0 THEN
587: x_return_status := FND_API.G_RET_STS_ERROR;
588: RAISE FND_API.G_EXC_ERROR;
589: END IF;
590:
591: --Log message
592: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level) THEN
750:
751: -- Check Error Message stack.
752: x_msg_count := FND_MSG_PUB.count_msg;
753: IF x_msg_count > 0 THEN
754: RAISE FND_API.G_EXC_ERROR;
755: END IF;
756:
757: -- Standard check of p_commit
758: p_x_cost_price_rec:=l_cost_price_rec;
755: END IF;
756:
757: -- Standard check of p_commit
758: p_x_cost_price_rec:=l_cost_price_rec;
759: IF FND_API.TO_BOOLEAN(p_commit) THEN
760: COMMIT WORK;
761: END IF;
762:
763: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level)THEN
768: 'At the end of PLSQL procedure'
769: );
770: END IF;
771: EXCEPTION
772: WHEN FND_API.G_EXC_ERROR THEN
773: x_return_status := FND_API.G_RET_STS_ERROR;
774: ROLLBACK TO Get_Task_Cost_Details;
775: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
776: p_data => x_msg_data,
769: );
770: END IF;
771: EXCEPTION
772: WHEN FND_API.G_EXC_ERROR THEN
773: x_return_status := FND_API.G_RET_STS_ERROR;
774: ROLLBACK TO Get_Task_Cost_Details;
775: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
776: p_data => x_msg_data,
777: p_encoded => fnd_api.g_false);
773: x_return_status := FND_API.G_RET_STS_ERROR;
774: ROLLBACK TO Get_Task_Cost_Details;
775: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
776: p_data => x_msg_data,
777: p_encoded => fnd_api.g_false);
778:
779:
780: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
781: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
776: p_data => x_msg_data,
777: p_encoded => fnd_api.g_false);
778:
779:
780: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
781: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
782: ROLLBACK TO Get_Task_Cost_Details;
783: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
784: p_data => x_msg_data,
777: p_encoded => fnd_api.g_false);
778:
779:
780: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
781: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
782: ROLLBACK TO Get_Task_Cost_Details;
783: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
784: p_data => x_msg_data,
785: p_encoded => fnd_api.g_false);
781: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
782: ROLLBACK TO Get_Task_Cost_Details;
783: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
784: p_data => x_msg_data,
785: p_encoded => fnd_api.g_false);
786:
787:
788: WHEN OTHERS THEN
789: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
785: p_encoded => fnd_api.g_false);
786:
787:
788: WHEN OTHERS THEN
789: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
790: ROLLBACK TO Get_Task_Cost_Details;
791: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
792: fnd_msg_pub.add_exc_msg(p_pkg_name => G_PKG_NAME,
793: p_procedure_name => 'Get_Task_Cost_Details',
794: p_error_text => SUBSTR(SQLERRM,1,500));
795: END IF;
796: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
797: p_data => x_msg_data,
798: p_encoded => fnd_api.g_false);
799:
800: END Get_Task_Cost_Details;
801:
802: -- Start of Comments --
810: -- Parameters :
811: --
812: -- Standard IN Parameters :
813: -- p_api_version IN NUMBER Required
814: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
815: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
816: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
817: --
818: -- Standard OUT Parameters :
811: --
812: -- Standard IN Parameters :
813: -- p_api_version IN NUMBER Required
814: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
815: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
816: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
817: --
818: -- Standard OUT Parameters :
819: -- x_return_status OUT VARCHAR2 Required
812: -- Standard IN Parameters :
813: -- p_api_version IN NUMBER Required
814: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
815: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
816: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
817: --
818: -- Standard OUT Parameters :
819: -- x_return_status OUT VARCHAR2 Required
820: -- x_msg_count OUT NUMBER Required
829: -- End of Comments.
830:
831: PROCEDURE Update_Task_Cost_Details (
832: p_api_version IN NUMBER,
833: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
834: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
835: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
836: p_module_type IN VARCHAR2 := NULL,
837: p_cost_price_rec IN AHL_VWP_VISIT_CST_PR_PVT.cost_price_rec_type,
830:
831: PROCEDURE Update_Task_Cost_Details (
832: p_api_version IN NUMBER,
833: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
834: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
835: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
836: p_module_type IN VARCHAR2 := NULL,
837: p_cost_price_rec IN AHL_VWP_VISIT_CST_PR_PVT.cost_price_rec_type,
838: x_return_status OUT NOCOPY VARCHAR2,
831: PROCEDURE Update_Task_Cost_Details (
832: p_api_version IN NUMBER,
833: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
834: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
835: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
836: p_module_type IN VARCHAR2 := NULL,
837: p_cost_price_rec IN AHL_VWP_VISIT_CST_PR_PVT.cost_price_rec_type,
838: x_return_status OUT NOCOPY VARCHAR2,
839: x_msg_count OUT NOCOPY NUMBER,
899: l_msg_data VARCHAR2(2000);
900: l_default VARCHAR2(30);
901: l_error_msg_code VARCHAR2(30);
902: l_module_type VARCHAR2(10);
903: l_commit VARCHAR2(10) := Fnd_Api.G_FALSE;
904: l_return_status VARCHAR2(1);
905: l_flag VARCHAR2(1);
906: l_valid_flag VARCHAR2(1);
907:
932: -- Standard start of API savepoint
933: SAVEPOINT Update_Task_Cost_Details;
934:
935: -- Initialize message list if p_init_msg_list is set to TRUE
936: IF FND_API.To_Boolean( p_init_msg_list) THEN
937: FND_MSG_PUB.Initialize;
938: END IF;
939:
940: -- Initialize API return status to success
937: FND_MSG_PUB.Initialize;
938: END IF;
939:
940: -- Initialize API return status to success
941: x_return_status := FND_API.G_RET_STS_SUCCESS;
942: --
943: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
944: fnd_log.string
945: (
950: END IF;
951:
952: -- Check for Required Parameters
953: IF(l_cost_price_rec.visit_task_id IS NULL OR
954: l_cost_price_rec.visit_task_id = FND_API.G_MISS_NUM) THEN
955: FND_MESSAGE.Set_Name(G_APP_NAME,'AHL_VWP_CST_INPUT_MISS');
956: FND_MSG_PUB.ADD;
957: IF (fnd_log.level_error >= fnd_log.g_current_runtime_level)THEN
958: fnd_log.string
961: 'ahl.plsql.'||g_pkg_name||'.'||l_api_name||':',
962: 'Visit Task id is mandatory but found null in input '
963: );
964: END IF;
965: RAISE FND_API.G_EXC_ERROR;
966: END IF;
967:
968: -- Retrieve task related information
969: OPEN Get_visit_task_dtls_cur(l_cost_price_rec.visit_task_id);
980: 'Task id not found in ahl_visit_tasks_b table'
981: );
982: END IF;
983: CLOSE Get_visit_task_dtls_cur;
984: RAISE FND_API.G_EXC_ERROR;
985: END IF;
986: CLOSE Get_visit_task_dtls_cur;
987:
988: --Assign
1004: 'Visit id not found in ahl_visits_b table'
1005: );
1006: END IF;
1007: CLOSE Get_visit_dtls_cur;
1008: RAISE FND_API.G_EXC_ERROR;
1009: END IF;
1010: CLOSE Get_visit_dtls_cur;
1011:
1012: -- Assign
1057: 'Valid price list not found with price list name ' || p_price_list_name
1058: );
1059: END IF;
1060:
1061: x_return_status := FND_API.G_RET_STS_ERROR;
1062: END IF;
1063: CLOSE price_list_id_csr;
1064:
1065:
1220:
1221: -- Check Error Message stack.
1222: x_msg_count := FND_MSG_PUB.count_msg;
1223: IF x_msg_count > 0 THEN
1224: RAISE FND_API.G_EXC_ERROR;
1225: END IF;
1226:
1227: -- Standard check of p_commit
1228: IF FND_API.TO_BOOLEAN(p_commit) THEN
1224: RAISE FND_API.G_EXC_ERROR;
1225: END IF;
1226:
1227: -- Standard check of p_commit
1228: IF FND_API.TO_BOOLEAN(p_commit) THEN
1229: COMMIT WORK;
1230: END IF;
1231:
1232: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level)THEN
1237: 'At the end of PLSQL procedure'
1238: );
1239: END IF;
1240: EXCEPTION
1241: WHEN FND_API.G_EXC_ERROR THEN
1242: x_return_status := FND_API.G_RET_STS_ERROR;
1243: ROLLBACK TO Update_Task_Cost_Details;
1244: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1245: p_data => x_msg_data,
1238: );
1239: END IF;
1240: EXCEPTION
1241: WHEN FND_API.G_EXC_ERROR THEN
1242: x_return_status := FND_API.G_RET_STS_ERROR;
1243: ROLLBACK TO Update_Task_Cost_Details;
1244: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1245: p_data => x_msg_data,
1246: p_encoded => fnd_api.g_false);
1242: x_return_status := FND_API.G_RET_STS_ERROR;
1243: ROLLBACK TO Update_Task_Cost_Details;
1244: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1245: p_data => x_msg_data,
1246: p_encoded => fnd_api.g_false);
1247:
1248:
1249: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1250: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1245: p_data => x_msg_data,
1246: p_encoded => fnd_api.g_false);
1247:
1248:
1249: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1250: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1251: ROLLBACK TO Update_Task_Cost_Details;
1252: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1253: p_data => x_msg_data,
1246: p_encoded => fnd_api.g_false);
1247:
1248:
1249: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1250: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1251: ROLLBACK TO Update_Task_Cost_Details;
1252: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1253: p_data => x_msg_data,
1254: p_encoded => fnd_api.g_false);
1250: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1251: ROLLBACK TO Update_Task_Cost_Details;
1252: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1253: p_data => x_msg_data,
1254: p_encoded => fnd_api.g_false);
1255:
1256:
1257: WHEN OTHERS THEN
1258: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1254: p_encoded => fnd_api.g_false);
1255:
1256:
1257: WHEN OTHERS THEN
1258: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1259: ROLLBACK TO Update_Task_Cost_Details;
1260: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
1261: fnd_msg_pub.add_exc_msg(p_pkg_name => G_PKG_NAME,
1262: p_procedure_name => 'Update_Task_Cost_Details',
1263: p_error_text => SUBSTR(SQLERRM,1,500));
1264: END IF;
1265: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1266: p_data => x_msg_data,
1267: p_encoded => fnd_api.g_false);
1268:
1269: END Update_Task_Cost_Details;
1270:
1271:
1280: -- Parameters :
1281: --
1282: -- Standard IN Parameters :
1283: -- p_api_version IN NUMBER Required
1284: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
1285: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
1286: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
1287: --
1288: -- Standard OUT Parameters :
1281: --
1282: -- Standard IN Parameters :
1283: -- p_api_version IN NUMBER Required
1284: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
1285: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
1286: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
1287: --
1288: -- Standard OUT Parameters :
1289: -- x_return_status OUT VARCHAR2 Required
1282: -- Standard IN Parameters :
1283: -- p_api_version IN NUMBER Required
1284: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
1285: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
1286: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
1287: --
1288: -- Standard OUT Parameters :
1289: -- x_return_status OUT VARCHAR2 Required
1290: -- x_msg_count OUT NUMBER Required
1300: -- End of Comments.
1301:
1302: PROCEDURE Estimate_Task_Cost (
1303: p_api_version IN NUMBER,
1304: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
1305: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
1306: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
1307: p_module_type IN VARCHAR2 := NULL,
1308: p_x_cost_price_rec IN OUT NOCOPY AHL_VWP_VISIT_CST_PR_PVT.cost_price_rec_type,
1301:
1302: PROCEDURE Estimate_Task_Cost (
1303: p_api_version IN NUMBER,
1304: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
1305: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
1306: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
1307: p_module_type IN VARCHAR2 := NULL,
1308: p_x_cost_price_rec IN OUT NOCOPY AHL_VWP_VISIT_CST_PR_PVT.cost_price_rec_type,
1309: x_return_status OUT NOCOPY VARCHAR2,
1302: PROCEDURE Estimate_Task_Cost (
1303: p_api_version IN NUMBER,
1304: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
1305: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
1306: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
1307: p_module_type IN VARCHAR2 := NULL,
1308: p_x_cost_price_rec IN OUT NOCOPY AHL_VWP_VISIT_CST_PR_PVT.cost_price_rec_type,
1309: x_return_status OUT NOCOPY VARCHAR2,
1310: x_msg_count OUT NOCOPY NUMBER,
1330: l_api_version CONSTANT NUMBER := 1.0;
1331: l_msg_data VARCHAR2(2000);
1332: l_return_status VARCHAR2(1);
1333: l_msg_count NUMBER;
1334: l_commit VARCHAR2(10) := Fnd_Api.G_FALSE;
1335: --
1336: l_cost_price_rec AHL_VWP_VISIT_CST_PR_PVT.cost_price_rec_type := p_x_cost_price_rec;
1337: --
1338:
1353: -- Standard start of API savepoint
1354: SAVEPOINT Estimate_Task_Cost;
1355:
1356: -- Initialize message list if p_init_msg_list is set to TRUE
1357: IF FND_API.To_Boolean( p_init_msg_list) THEN
1358: FND_MSG_PUB.Initialize;
1359: END IF;
1360: -- Initialize API return status to success
1361: x_return_status := FND_API.G_RET_STS_SUCCESS;
1357: IF FND_API.To_Boolean( p_init_msg_list) THEN
1358: FND_MSG_PUB.Initialize;
1359: END IF;
1360: -- Initialize API return status to success
1361: x_return_status := FND_API.G_RET_STS_SUCCESS;
1362: --
1363: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
1364: fnd_log.string
1365: (
1384:
1385: END IF;
1386: -- Check for Required Parameters
1387: IF(l_cost_price_rec.visit_task_id IS NULL OR
1388: l_cost_price_rec.visit_task_id = FND_API.G_MISS_NUM) THEN
1389: FND_MESSAGE.Set_Name(G_APP_NAME,'AHL_VWP_CST_INPUT_MISS');
1390: FND_MSG_PUB.ADD;
1391: IF (fnd_log.level_error >= fnd_log.g_current_runtime_level)THEN
1392: fnd_log.string
1395: 'ahl.plsql.'||g_pkg_name||'.'||l_api_name||':',
1396: 'Visit Task id is mandatory but found null in input '
1397: );
1398: END IF;
1399: RAISE FND_API.G_EXC_ERROR;
1400: END IF;
1401:
1402: --Required to get visit id
1403: OPEN Get_visit_task_cur(l_cost_price_rec.visit_task_id);
1448: );
1449: END IF;
1450:
1451: -- Check Error Message stack.
1452: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1453: l_msg_count := FND_MSG_PUB.count_msg;
1454: IF l_msg_count > 0 THEN
1455: RAISE FND_API.G_EXC_ERROR;
1456: END IF;
1451: -- Check Error Message stack.
1452: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1453: l_msg_count := FND_MSG_PUB.count_msg;
1454: IF l_msg_count > 0 THEN
1455: RAISE FND_API.G_EXC_ERROR;
1456: END IF;
1457: END IF;
1458:
1459: END IF; -- released required flag
1475: ( p_x_cost_price_rec => l_cost_price_rec,
1476: x_return_status => l_return_status);
1477:
1478: -- Check return status.
1479: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1480: RAISE FND_API.G_EXC_ERROR;
1481: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1482: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1483: END IF;
1476: x_return_status => l_return_status);
1477:
1478: -- Check return status.
1479: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1480: RAISE FND_API.G_EXC_ERROR;
1481: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1482: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1483: END IF;
1484:
1477:
1478: -- Check return status.
1479: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1480: RAISE FND_API.G_EXC_ERROR;
1481: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1482: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1483: END IF;
1484:
1485: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level) THEN
1478: -- Check return status.
1479: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1480: RAISE FND_API.G_EXC_ERROR;
1481: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1482: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1483: END IF;
1484:
1485: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level) THEN
1486: fnd_log.string
1519: p_x_cost_price_rec.mr_session_id := l_cost_price_rec.mr_session_id;
1520: p_x_cost_price_rec.Is_Cst_Struc_updated := l_cost_price_rec.Is_Cst_Struc_updated;
1521:
1522: -- Standard check of p_commit
1523: IF FND_API.TO_BOOLEAN(p_commit) THEN
1524: COMMIT WORK;
1525: END IF;
1526:
1527: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level)THEN
1532: 'At the end of PLSQL procedure'
1533: );
1534: END IF;
1535: EXCEPTION
1536: WHEN FND_API.G_EXC_ERROR THEN
1537: x_return_status := FND_API.G_RET_STS_ERROR;
1538: ROLLBACK TO Estimate_Task_Cost;
1539: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1540: p_data => x_msg_data,
1533: );
1534: END IF;
1535: EXCEPTION
1536: WHEN FND_API.G_EXC_ERROR THEN
1537: x_return_status := FND_API.G_RET_STS_ERROR;
1538: ROLLBACK TO Estimate_Task_Cost;
1539: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1540: p_data => x_msg_data,
1541: p_encoded => fnd_api.g_false);
1537: x_return_status := FND_API.G_RET_STS_ERROR;
1538: ROLLBACK TO Estimate_Task_Cost;
1539: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1540: p_data => x_msg_data,
1541: p_encoded => fnd_api.g_false);
1542:
1543:
1544: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1545: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1540: p_data => x_msg_data,
1541: p_encoded => fnd_api.g_false);
1542:
1543:
1544: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1545: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1546: ROLLBACK TO Estimate_Task_Cost;
1547: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1548: p_data => x_msg_data,
1541: p_encoded => fnd_api.g_false);
1542:
1543:
1544: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1545: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1546: ROLLBACK TO Estimate_Task_Cost;
1547: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1548: p_data => x_msg_data,
1549: p_encoded => fnd_api.g_false);
1545: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1546: ROLLBACK TO Estimate_Task_Cost;
1547: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1548: p_data => x_msg_data,
1549: p_encoded => fnd_api.g_false);
1550:
1551:
1552: WHEN OTHERS THEN
1553: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1549: p_encoded => fnd_api.g_false);
1550:
1551:
1552: WHEN OTHERS THEN
1553: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1554: ROLLBACK TO Estimate_Task_Cost;
1555: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
1556: fnd_msg_pub.add_exc_msg(p_pkg_name => G_PKG_NAME,
1557: p_procedure_name => 'Estimate_Task_Cost',
1558: p_error_text => SUBSTR(SQLERRM,1,500));
1559: END IF;
1560: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
1561: p_data => x_msg_data,
1562: p_encoded => fnd_api.g_false);
1563:
1564: END Estimate_Task_Cost;
1565:
1566: -- Start of Comments --
1574: -- Parameters :
1575: --
1576: -- Standard IN Parameters :
1577: -- p_api_version IN NUMBER Required
1578: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
1579: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
1580: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
1581: --
1582: -- Standard OUT Parameters :
1575: --
1576: -- Standard IN Parameters :
1577: -- p_api_version IN NUMBER Required
1578: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
1579: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
1580: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
1581: --
1582: -- Standard OUT Parameters :
1583: -- x_return_status OUT VARCHAR2 Required
1576: -- Standard IN Parameters :
1577: -- p_api_version IN NUMBER Required
1578: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
1579: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
1580: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
1581: --
1582: -- Standard OUT Parameters :
1583: -- x_return_status OUT VARCHAR2 Required
1584: -- x_msg_count OUT NUMBER Required
1594: -- End of Comments.
1595:
1596: PROCEDURE Estimate_Task_Price (
1597: p_api_version IN NUMBER,
1598: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
1599: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
1600: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
1601: p_module_type IN VARCHAR2 := NULL,
1602: p_x_cost_price_rec IN OUT NOCOPY AHL_VWP_VISIT_CST_PR_PVT.cost_price_rec_type,
1595:
1596: PROCEDURE Estimate_Task_Price (
1597: p_api_version IN NUMBER,
1598: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
1599: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
1600: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
1601: p_module_type IN VARCHAR2 := NULL,
1602: p_x_cost_price_rec IN OUT NOCOPY AHL_VWP_VISIT_CST_PR_PVT.cost_price_rec_type,
1603: x_return_status OUT NOCOPY VARCHAR2,
1596: PROCEDURE Estimate_Task_Price (
1597: p_api_version IN NUMBER,
1598: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
1599: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
1600: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
1601: p_module_type IN VARCHAR2 := NULL,
1602: p_x_cost_price_rec IN OUT NOCOPY AHL_VWP_VISIT_CST_PR_PVT.cost_price_rec_type,
1603: x_return_status OUT NOCOPY VARCHAR2,
1604: x_msg_count OUT NOCOPY NUMBER,
1685: i NUMBER;
1686:
1687: --Validate visit variables
1688:
1689: l_commit VARCHAR2(10) := Fnd_Api.G_FALSE;
1690:
1691: BEGIN
1692: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level)THEN
1693: fnd_log.string
1700: END IF;
1701: -- Standard start of API savepoint
1702: SAVEPOINT Estimate_Task_Price;
1703: -- Initialize message list if p_init_msg_list is set to TRUE
1704: IF FND_API.To_Boolean( p_init_msg_list) THEN
1705: FND_MSG_PUB.Initialize;
1706: END IF;
1707: -- Initialize API return status to success
1708: x_return_status := FND_API.G_RET_STS_SUCCESS;
1704: IF FND_API.To_Boolean( p_init_msg_list) THEN
1705: FND_MSG_PUB.Initialize;
1706: END IF;
1707: -- Initialize API return status to success
1708: x_return_status := FND_API.G_RET_STS_SUCCESS;
1709: --
1710: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
1711: fnd_log.string
1712: (
1728: END IF;
1729:
1730: -- Check for Required Parameters
1731: IF(l_cost_price_rec.visit_task_id IS NULL OR
1732: l_cost_price_rec.visit_task_id = FND_API.G_MISS_NUM) THEN
1733: FND_MESSAGE.Set_Name(G_APP_NAME,'AHL_VWP_CST_INPUT_MISS');
1734: FND_MSG_PUB.ADD;
1735: IF (fnd_log.level_error >= fnd_log.g_current_runtime_level)THEN
1736: fnd_log.string
1739: 'ahl.plsql.'||g_pkg_name||'.'||l_api_name||':',
1740: 'Visit Task id is mandatory but found null in input '
1741: );
1742: END IF;
1743: RAISE FND_API.G_EXC_ERROR;
1744: END IF;
1745:
1746: -- Retrieve visit info
1747: OPEN Get_visit_task_dtls_cur(l_cost_price_rec.visit_task_id) ;
1757: 'Visit Task not found in ahl_visit_tasks_b table'
1758: );
1759: END IF;
1760: CLOSE Get_visit_task_dtls_cur;
1761: RAISE FND_API.G_EXC_ERROR;
1762: END IF;
1763: CLOSE Get_visit_task_dtls_cur;
1764:
1765: --Assign derieved values
1811: 'ahl.plsql.'||G_PKG_NAME||'.'||L_API_NAME,
1812: 'No curency is defined for the organization of the visit'
1813: );
1814: END IF;
1815: RAISE FND_API.G_EXC_ERROR;
1816: END IF; -- error handling
1817: END IF; --If currency is null
1818:
1819: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
1828:
1829: -- Validation for Price list, Task has price list associated consider it else use
1830: -- visit price list. If both not exists then raise an error message
1831: IF (l_cost_price_rec.price_list_id IS NULL OR
1832: l_cost_price_rec.price_list_id = FND_API.G_MISS_NUM ) THEN
1833: FND_MESSAGE.set_name( 'AHL','AHL_VWP_PRICE_LIST_INVALID' );
1834: FND_MSG_PUB.add;
1835: IF (fnd_log.level_error >= fnd_log.g_current_runtime_level)THEN
1836: fnd_log.string
1839: 'ahl.plsql.'||g_pkg_name||'.'||l_api_name||':',
1840: 'Price list not found for either Task Or Visit'
1841: );
1842: END IF;
1843: RAISE FND_API.G_EXC_ERROR;
1844: END IF;
1845:
1846: IF p_module_type = 'JSP' THEN
1847:
1867: x_msg_count => l_msg_count,
1868: x_msg_data => l_msg_data);
1869:
1870: -- Check return status.
1871: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1872: RAISE FND_API.G_EXC_ERROR;
1873: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1874: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1875: END IF;
1868: x_msg_data => l_msg_data);
1869:
1870: -- Check return status.
1871: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1872: RAISE FND_API.G_EXC_ERROR;
1873: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1874: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1875: END IF;
1876:
1869:
1870: -- Check return status.
1871: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1872: RAISE FND_API.G_EXC_ERROR;
1873: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1874: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1875: END IF;
1876:
1877: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level) THEN
1870: -- Check return status.
1871: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1872: RAISE FND_API.G_EXC_ERROR;
1873: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1874: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1875: END IF;
1876:
1877: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level) THEN
1878: fnd_log.string
1938: );
1939: END IF;
1940:
1941: -- Check return status.
1942: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1943: RAISE FND_API.G_EXC_ERROR;
1944: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1945: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1946: END IF;
1939: END IF;
1940:
1941: -- Check return status.
1942: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1943: RAISE FND_API.G_EXC_ERROR;
1944: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1945: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1946: END IF;
1947:
1940:
1941: -- Check return status.
1942: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1943: RAISE FND_API.G_EXC_ERROR;
1944: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1945: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1946: END IF;
1947:
1948: --Assign returned values
1941: -- Check return status.
1942: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1943: RAISE FND_API.G_EXC_ERROR;
1944: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1945: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1946: END IF;
1947:
1948: --Assign returned values
1949: l_estimated_price := l_cost_price_rec.estimated_price;
2002: -- error hanling
2003: IF (l_job_status_code is NULL) THEN
2004: l_msg_count := FND_MSG_PUB.count_msg;
2005: IF l_msg_count > 0 THEN
2006: RAISE FND_API.G_EXC_ERROR;
2007: END IF;
2008: END IF;
2009:
2010: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
2131: END IF;
2132:
2133: -- Task Date can not be null
2134: IF (l_cost_price_rec.task_start_date IS NULL OR
2135: l_cost_price_rec.task_start_date = FND_API.G_MISS_DATE ) THEN
2136:
2137: FND_MESSAGE.set_name( 'AHL','AHL_VWP_VALIDATE_ERROR' );
2138: FND_MSG_PUB.add;
2139:
2140: IF G_DEBUG='Y' THEN
2141: Ahl_Debug_Pub.debug( l_full_name ||'Task Start Date is null');
2142: END IF;
2143:
2144: RAISE FND_API.G_EXC_ERROR;
2145: END IF;
2146:
2147: ahl_vwp_price_pvt.Get_Task_Estimated_Price (
2148: p_visit_task_id => l_cost_price_rec.visit_task_id,
2165: );
2166: END IF;
2167:
2168: -- Check return status.
2169: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2170: RAISE FND_API.G_EXC_ERROR;
2171: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2172: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2173: END IF;
2166: END IF;
2167:
2168: -- Check return status.
2169: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2170: RAISE FND_API.G_EXC_ERROR;
2171: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2172: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2173: END IF;
2174:
2167:
2168: -- Check return status.
2169: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2170: RAISE FND_API.G_EXC_ERROR;
2171: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2172: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2173: END IF;
2174:
2175: --Assign derived value
2168: -- Check return status.
2169: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2170: RAISE FND_API.G_EXC_ERROR;
2171: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2172: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2173: END IF;
2174:
2175: --Assign derived value
2176: l_cost_price_rec.estimated_price := l_estimated_price;
2250: );
2251: END IF;
2252:
2253: -- Check return status.
2254: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2255: RAISE FND_API.G_EXC_ERROR;
2256: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2257: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2258: END IF;
2251: END IF;
2252:
2253: -- Check return status.
2254: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2255: RAISE FND_API.G_EXC_ERROR;
2256: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2257: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2258: END IF;
2259:
2252:
2253: -- Check return status.
2254: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2255: RAISE FND_API.G_EXC_ERROR;
2256: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2257: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2258: END IF;
2259:
2260: -- Assign
2253: -- Check return status.
2254: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2255: RAISE FND_API.G_EXC_ERROR;
2256: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2257: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2258: END IF;
2259:
2260: -- Assign
2261: l_cost_price_rec.estimated_price := l_estimated_price;
2319: );
2320: END IF;
2321:
2322: -- Check return status.
2323: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2324: RAISE FND_API.G_EXC_ERROR;
2325: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2326: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2327: END IF;
2320: END IF;
2321:
2322: -- Check return status.
2323: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2324: RAISE FND_API.G_EXC_ERROR;
2325: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2326: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2327: END IF;
2328:
2321:
2322: -- Check return status.
2323: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2324: RAISE FND_API.G_EXC_ERROR;
2325: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2326: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2327: END IF;
2328:
2329: --Assign derived value
2322: -- Check return status.
2323: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2324: RAISE FND_API.G_EXC_ERROR;
2325: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2326: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2327: END IF;
2328:
2329: --Assign derived value
2330: l_cost_price_rec.actual_price := l_actual_price;
2560:
2561: -- Check Error Message stack.
2562: x_msg_count := FND_MSG_PUB.count_msg;
2563: IF x_msg_count > 0 THEN
2564: RAISE FND_API.G_EXC_ERROR;
2565: END IF;
2566:
2567: -- Standard check of p_commit
2568: IF FND_API.TO_BOOLEAN(p_commit) THEN
2564: RAISE FND_API.G_EXC_ERROR;
2565: END IF;
2566:
2567: -- Standard check of p_commit
2568: IF FND_API.TO_BOOLEAN(p_commit) THEN
2569: COMMIT WORK;
2570: END IF;
2571:
2572: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level)THEN
2578: );
2579: END IF;
2580:
2581: EXCEPTION
2582: WHEN FND_API.G_EXC_ERROR THEN
2583: x_return_status := FND_API.G_RET_STS_ERROR;
2584: ROLLBACK TO Estimate_Task_Price;
2585: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2586: p_data => x_msg_data,
2579: END IF;
2580:
2581: EXCEPTION
2582: WHEN FND_API.G_EXC_ERROR THEN
2583: x_return_status := FND_API.G_RET_STS_ERROR;
2584: ROLLBACK TO Estimate_Task_Price;
2585: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2586: p_data => x_msg_data,
2587: p_encoded => fnd_api.g_false);
2583: x_return_status := FND_API.G_RET_STS_ERROR;
2584: ROLLBACK TO Estimate_Task_Price;
2585: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2586: p_data => x_msg_data,
2587: p_encoded => fnd_api.g_false);
2588:
2589:
2590: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2591: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2586: p_data => x_msg_data,
2587: p_encoded => fnd_api.g_false);
2588:
2589:
2590: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2591: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2592: ROLLBACK TO Estimate_Task_Price;
2593: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2594: p_data => x_msg_data,
2587: p_encoded => fnd_api.g_false);
2588:
2589:
2590: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2591: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2592: ROLLBACK TO Estimate_Task_Price;
2593: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2594: p_data => x_msg_data,
2595: p_encoded => fnd_api.g_false);
2591: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2592: ROLLBACK TO Estimate_Task_Price;
2593: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2594: p_data => x_msg_data,
2595: p_encoded => fnd_api.g_false);
2596:
2597:
2598: WHEN OTHERS THEN
2599: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2595: p_encoded => fnd_api.g_false);
2596:
2597:
2598: WHEN OTHERS THEN
2599: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2600: ROLLBACK TO Estimate_Task_Price;
2601: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2602: fnd_msg_pub.add_exc_msg(p_pkg_name => G_PKG_NAME,
2603: p_procedure_name => 'Estimate_Task_Price',
2604: p_error_text => SUBSTR(SQLERRM,1,500));
2605: END IF;
2606: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2607: p_data => x_msg_data,
2608: p_encoded => fnd_api.g_false);
2609: END Estimate_Task_Price;
2610:
2611: -- -- Start of Comments --
2612: -- Procedure name : Get_Node_Cost_Details
2619: -- Parameters :
2620: --
2621: -- Standard IN Parameters :
2622: -- p_api_version IN NUMBER Required
2623: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
2624: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
2625: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
2626: --
2627: -- Standard OUT Parameters :
2620: --
2621: -- Standard IN Parameters :
2622: -- p_api_version IN NUMBER Required
2623: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
2624: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
2625: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
2626: --
2627: -- Standard OUT Parameters :
2628: -- x_return_status OUT VARCHAR2 Required
2621: -- Standard IN Parameters :
2622: -- p_api_version IN NUMBER Required
2623: -- p_init_msg_list IN VARCHAR2 Default FND_API.G_FALSE
2624: -- p_commit IN VARCHAR2 Default FND_API.G_FALSE
2625: -- p_validation_level IN NUMBER Default FND_API.G_VALID_LEVEL_FULL
2626: --
2627: -- Standard OUT Parameters :
2628: -- x_return_status OUT VARCHAR2 Required
2629: -- x_msg_count OUT NUMBER Required
2638: -- End of Comments.
2639:
2640: PROCEDURE Get_Node_Cost_Details (
2641: p_api_version IN NUMBER,
2642: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
2643: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
2644: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
2645: p_module_type IN VARCHAR2 := NULL,
2646: x_return_status OUT NOCOPY VARCHAR2,
2639:
2640: PROCEDURE Get_Node_Cost_Details (
2641: p_api_version IN NUMBER,
2642: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
2643: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
2644: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
2645: p_module_type IN VARCHAR2 := NULL,
2646: x_return_status OUT NOCOPY VARCHAR2,
2647: x_msg_count OUT NOCOPY NUMBER,
2640: PROCEDURE Get_Node_Cost_Details (
2641: p_api_version IN NUMBER,
2642: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
2643: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
2644: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
2645: p_module_type IN VARCHAR2 := NULL,
2646: x_return_status OUT NOCOPY VARCHAR2,
2647: x_msg_count OUT NOCOPY NUMBER,
2648: x_msg_data OUT NOCOPY VARCHAR2,
2679: );
2680: END IF;
2681:
2682: -- Standard call to check for call compatibility
2683: IF NOT Fnd_Api.Compatible_API_Call(l_api_version, p_api_version, l_api_name,
2684: G_PKG_NAME) THEN
2685: RAISE Fnd_Api.G_EXC_UNEXPECTED_ERROR;
2686: END IF;
2687:
2681:
2682: -- Standard call to check for call compatibility
2683: IF NOT Fnd_Api.Compatible_API_Call(l_api_version, p_api_version, l_api_name,
2684: G_PKG_NAME) THEN
2685: RAISE Fnd_Api.G_EXC_UNEXPECTED_ERROR;
2686: END IF;
2687:
2688: -- Initialize message list if p_init_msg_list is set to TRUE
2689: IF Fnd_Api.To_Boolean(p_init_msg_list) THEN
2685: RAISE Fnd_Api.G_EXC_UNEXPECTED_ERROR;
2686: END IF;
2687:
2688: -- Initialize message list if p_init_msg_list is set to TRUE
2689: IF Fnd_Api.To_Boolean(p_init_msg_list) THEN
2690: Fnd_Msg_Pub.Initialize;
2691: END IF;
2692:
2693: -- Initialize API return status to success
2690: Fnd_Msg_Pub.Initialize;
2691: END IF;
2692:
2693: -- Initialize API return status to success
2694: x_return_status := Fnd_Api.G_RET_STS_SUCCESS;
2695:
2696: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
2697: fnd_log.string
2698: (
2723: 'Visit id not found in ahl_visits_b table'
2724: );
2725: END IF;
2726: CLOSE visit_info_csr;
2727: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2728: END IF;
2729: CLOSE visit_info_csr;
2730:
2731: -- Not to calculate cost if visit is in cancelled status
2741: END IF;
2742:
2743: AHL_VWP_COST_PVT.calculate_wo_cost
2744: (p_api_version => p_api_version,
2745: p_init_msg_list => Fnd_Api.G_FALSE,
2746: p_commit => Fnd_Api.G_FALSE,
2747: p_validation_level =>Fnd_Api.G_VALID_LEVEL_FULL,
2748: p_x_cost_price_rec => l_cost_price_rec,
2749: x_return_status =>x_return_status );
2742:
2743: AHL_VWP_COST_PVT.calculate_wo_cost
2744: (p_api_version => p_api_version,
2745: p_init_msg_list => Fnd_Api.G_FALSE,
2746: p_commit => Fnd_Api.G_FALSE,
2747: p_validation_level =>Fnd_Api.G_VALID_LEVEL_FULL,
2748: p_x_cost_price_rec => l_cost_price_rec,
2749: x_return_status =>x_return_status );
2750:
2743: AHL_VWP_COST_PVT.calculate_wo_cost
2744: (p_api_version => p_api_version,
2745: p_init_msg_list => Fnd_Api.G_FALSE,
2746: p_commit => Fnd_Api.G_FALSE,
2747: p_validation_level =>Fnd_Api.G_VALID_LEVEL_FULL,
2748: p_x_cost_price_rec => l_cost_price_rec,
2749: x_return_status =>x_return_status );
2750:
2751: --x_msg_count := Fnd_Msg_Pub.count_msg;
2748: p_x_cost_price_rec => l_cost_price_rec,
2749: x_return_status =>x_return_status );
2750:
2751: --x_msg_count := Fnd_Msg_Pub.count_msg;
2752: IF x_return_status <> Fnd_Api.G_RET_STS_SUCCESS THEN
2753:
2754: IF (fnd_log.level_procedure >= fnd_log.g_current_runtime_level)THEN
2755: fnd_log.string
2756: (
2759: 'Error thrown by AHL_VWP_COST_PVT.calculate_wo_cost'
2760: );
2761: END IF;
2762:
2763: RAISE Fnd_Api.G_EXC_ERROR;
2764: END IF;
2765:
2766:
2767: IF (l_cost_price_rec.Is_Cst_Struc_updated = 'N') AND (l_cost_price_rec.workorder_id IS NOT NULL) THEN
2800: );
2801:
2802: FND_MESSAGE.Set_Name(G_APP_NAME,'AHL_VWP_CST_INPUT_MISS');
2803: FND_MSG_PUB.ADD;
2804: RAISE FND_API.G_EXC_ERROR;
2805: END IF;
2806:
2807: END IF;
2808:
2816: 'Error thrown by AHL_VWP_COST_PVT.calculate_task_cost'
2817: );
2818: END IF;
2819:
2820: RAISE Fnd_Api.G_EXC_ERROR;
2821: END IF;
2822:
2823: p_x_cost_price_rec:= l_cost_price_rec;
2824:
2822:
2823: p_x_cost_price_rec:= l_cost_price_rec;
2824:
2825:
2826: IF Fnd_Api.TO_BOOLEAN(p_commit) THEN
2827: COMMIT WORK;
2828: END IF;
2829:
2830:
2828: END IF;
2829:
2830:
2831: EXCEPTION
2832: WHEN FND_API.G_EXC_ERROR THEN
2833: x_return_status := FND_API.G_RET_STS_ERROR;
2834: ROLLBACK TO Get_Node_Cost_Details_pvt;
2835: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2836: p_data => x_msg_data,
2829:
2830:
2831: EXCEPTION
2832: WHEN FND_API.G_EXC_ERROR THEN
2833: x_return_status := FND_API.G_RET_STS_ERROR;
2834: ROLLBACK TO Get_Node_Cost_Details_pvt;
2835: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2836: p_data => x_msg_data,
2837: p_encoded => fnd_api.g_false);
2833: x_return_status := FND_API.G_RET_STS_ERROR;
2834: ROLLBACK TO Get_Node_Cost_Details_pvt;
2835: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2836: p_data => x_msg_data,
2837: p_encoded => fnd_api.g_false);
2838:
2839:
2840: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2841: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2836: p_data => x_msg_data,
2837: p_encoded => fnd_api.g_false);
2838:
2839:
2840: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2841: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2842: ROLLBACK TO Get_Node_Cost_Details_pvt;
2843: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2844: p_data => x_msg_data,
2837: p_encoded => fnd_api.g_false);
2838:
2839:
2840: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2841: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2842: ROLLBACK TO Get_Node_Cost_Details_pvt;
2843: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2844: p_data => x_msg_data,
2845: p_encoded => fnd_api.g_false);
2841: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2842: ROLLBACK TO Get_Node_Cost_Details_pvt;
2843: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2844: p_data => x_msg_data,
2845: p_encoded => fnd_api.g_false);
2846:
2847:
2848: WHEN OTHERS THEN
2849: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2845: p_encoded => fnd_api.g_false);
2846:
2847:
2848: WHEN OTHERS THEN
2849: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2850: ROLLBACK TO Get_Node_Cost_Details_pvt;
2851: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2852: fnd_msg_pub.add_exc_msg(p_pkg_name => G_PKG_NAME,
2853: p_procedure_name => 'Get_Node_Cost_Details',
2854: p_error_text => SUBSTR(SQLERRM,1,500));
2855: END IF;
2856: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
2857: p_data => x_msg_data,
2858: p_encoded => fnd_api.g_false);
2859:
2860:
2861: end Get_Node_Cost_Details;
2862:
2862:
2863:
2864: PROCEDURE GET_TASK_ITEMS_NO_PRICE (
2865: p_api_version IN NUMBER,
2866: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
2867: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
2868: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
2869: p_module_type IN VARCHAR2 := NULL,
2870: x_return_status OUT NOCOPY VARCHAR2,
2863:
2864: PROCEDURE GET_TASK_ITEMS_NO_PRICE (
2865: p_api_version IN NUMBER,
2866: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
2867: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
2868: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
2869: p_module_type IN VARCHAR2 := NULL,
2870: x_return_status OUT NOCOPY VARCHAR2,
2871: x_msg_count OUT NOCOPY NUMBER,
2864: PROCEDURE GET_TASK_ITEMS_NO_PRICE (
2865: p_api_version IN NUMBER,
2866: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
2867: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
2868: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
2869: p_module_type IN VARCHAR2 := NULL,
2870: x_return_status OUT NOCOPY VARCHAR2,
2871: x_msg_count OUT NOCOPY NUMBER,
2872: x_msg_data OUT NOCOPY VARCHAR2,
3023:
3024: SAVEPOINT GET_TASK_ITEMS_NO_PRICE_PVT;
3025:
3026: -- Standard call to check for call compatibility
3027: IF NOT Fnd_Api.Compatible_API_Call(l_api_version, p_api_version, l_api_name,
3028: G_PKG_NAME) THEN
3029: RAISE Fnd_Api.G_EXC_UNEXPECTED_ERROR;
3030: END IF;
3031:
3025:
3026: -- Standard call to check for call compatibility
3027: IF NOT Fnd_Api.Compatible_API_Call(l_api_version, p_api_version, l_api_name,
3028: G_PKG_NAME) THEN
3029: RAISE Fnd_Api.G_EXC_UNEXPECTED_ERROR;
3030: END IF;
3031:
3032: -- Initialize message list if p_init_msg_list is set to TRUE
3033: IF Fnd_Api.To_Boolean(p_init_msg_list) THEN
3029: RAISE Fnd_Api.G_EXC_UNEXPECTED_ERROR;
3030: END IF;
3031:
3032: -- Initialize message list if p_init_msg_list is set to TRUE
3033: IF Fnd_Api.To_Boolean(p_init_msg_list) THEN
3034: Fnd_Msg_Pub.Initialize;
3035: END IF;
3036:
3037: -- Initialize API return status to success
3034: Fnd_Msg_Pub.Initialize;
3035: END IF;
3036:
3037: -- Initialize API return status to success
3038: x_return_status := FND_API.G_RET_STS_SUCCESS;
3039:
3040: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
3041: fnd_log.string
3042: (
3048: END IF;
3049:
3050: -- Check for Required Parameters
3051: IF(l_cost_price_rec.visit_task_id IS NULL OR
3052: l_cost_price_rec.visit_task_id = FND_API.G_MISS_NUM) THEN
3053: FND_MESSAGE.Set_Name(G_APP_NAME,'AHL_VWP_CST_INPUT_MISS');
3054: FND_MSG_PUB.ADD;
3055: IF (fnd_log.level_error >= fnd_log.g_current_runtime_level)THEN
3056: fnd_log.string
3059: 'ahl.plsql.'||g_pkg_name||'.'||l_api_name||':',
3060: 'Visit Task id is mandatory but found null in input '
3061: );
3062: END IF;
3063: RAISE FND_API.G_EXC_ERROR;
3064: END IF;
3065:
3066:
3067:
3080: 'Visit Task not found in ahl_visit_tasks_b table'
3081: );
3082: END IF;
3083: CLOSE c_task_csr;
3084: RAISE FND_API.G_EXC_ERROR;
3085: END IF;
3086: CLOSE c_task_csr;
3087:
3088: l_cost_price_rec.visit_id:=l_task_rec.visit_id;
3118:
3119: AHL_VWP_PROJ_PROD_PVT.release_visit
3120: (
3121: p_api_version =>l_api_version,
3122: p_init_msg_list =>Fnd_Api.g_false,
3123: p_commit =>Fnd_Api.g_false,
3124: p_validation_level =>Fnd_Api.g_valid_level_full,
3125: p_module_type => 'CST',
3126: x_return_status =>l_return_Status,
3119: AHL_VWP_PROJ_PROD_PVT.release_visit
3120: (
3121: p_api_version =>l_api_version,
3122: p_init_msg_list =>Fnd_Api.g_false,
3123: p_commit =>Fnd_Api.g_false,
3124: p_validation_level =>Fnd_Api.g_valid_level_full,
3125: p_module_type => 'CST',
3126: x_return_status =>l_return_Status,
3127: x_msg_count =>x_msg_count,
3120: (
3121: p_api_version =>l_api_version,
3122: p_init_msg_list =>Fnd_Api.g_false,
3123: p_commit =>Fnd_Api.g_false,
3124: p_validation_level =>Fnd_Api.g_valid_level_full,
3125: p_module_type => 'CST',
3126: x_return_status =>l_return_Status,
3127: x_msg_count =>x_msg_count,
3128: x_msg_data =>x_msg_data,
3138: );
3139: END IF;
3140:
3141: -- Check Error Message stack.
3142: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
3143: l_msg_count := FND_MSG_PUB.count_msg;
3144: IF l_msg_count > 0 THEN
3145: RAISE FND_API.G_EXC_ERROR;
3146: END IF;
3141: -- Check Error Message stack.
3142: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
3143: l_msg_count := FND_MSG_PUB.count_msg;
3144: IF l_msg_count > 0 THEN
3145: RAISE FND_API.G_EXC_ERROR;
3146: END IF;
3147: END IF;
3148:
3149: END IF; -- release required flag
3157: If l_visit_rec.outside_party_flag ='N'
3158: then
3159: FND_MESSAGE.Set_Name(G_APP_NAME,'AHL_VWP_CST_OUTSDPRTY_FLAG');
3160: FND_MSG_PUB.ADD;
3161: RAISE FND_API.G_EXC_ERROR;
3162: --Display an error message `Visit number visit_number is not an outside party.'
3163: Else
3164: If l_task_rec.price_list_id is not Null
3165: then
3169: l_cost_price_rec.price_list_id :=l_visit_rec.price_list_id;
3170: Else
3171: FND_MESSAGE.Set_Name(G_APP_NAME,'AHL_VWP_CST_PRICELISTIDNULL');
3172: FND_MSG_PUB.ADD;
3173: RAISE FND_API.G_EXC_ERROR;
3174:
3175: END IF;
3176:
3177: End if;
3199: END IF;
3200:
3201: -- Populate customer ID if not passed
3202: IF (l_cost_price_rec.Customer_Id is null) OR
3203: (l_cost_price_rec.Customer_Id = FND_API.G_MISS_NUM) THEN
3204:
3205: Open c_customer_csr(l_visit_rec.service_request_id);
3206: fetch c_customer_csr into l_cost_price_rec.customer_id;
3207: close c_customer_csr;
3217: END IF;
3218:
3219: -- Populate currency code if not passed
3220: IF(l_cost_price_rec.currency IS NULL OR
3221: l_cost_price_rec.currency = FND_API.G_MISS_CHAR) THEN
3222:
3223: AHL_VWP_RULES_PVT.check_currency_for_costing
3224: (p_visit_id =>l_task_rec.visit_id,
3225: x_currency_code =>l_cost_price_rec.currency
3236: 'ahl.plsql.'||G_PKG_NAME||'.'||L_API_NAME,
3237: 'No curency is defined for the organization of the visit'
3238: );
3239: END IF;
3240: RAISE FND_API.G_EXC_ERROR;
3241: END IF;
3242: END IF; --If currency is null
3243:
3244: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
3261:
3262: IF (l_job_status_code is NULL) THEN
3263: l_msg_count := FND_MSG_PUB.count_msg;
3264: IF l_msg_count > 0 THEN
3265: RAISE FND_API.G_EXC_ERROR;
3266: END IF;
3267: END IF;
3268:
3269: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
3316:
3317: AHL_VWP_MR_CST_PR_PVT.get_mr_items_no_price
3318: (
3319: p_api_version =>l_api_version,
3320: p_init_msg_list =>Fnd_Api.g_false,
3321: p_commit =>Fnd_Api.g_false,
3322: p_validation_level =>Fnd_Api.g_valid_level_full,
3323: p_module_type =>p_module_type,
3324: x_return_status =>l_return_status,
3317: AHL_VWP_MR_CST_PR_PVT.get_mr_items_no_price
3318: (
3319: p_api_version =>l_api_version,
3320: p_init_msg_list =>Fnd_Api.g_false,
3321: p_commit =>Fnd_Api.g_false,
3322: p_validation_level =>Fnd_Api.g_valid_level_full,
3323: p_module_type =>p_module_type,
3324: x_return_status =>l_return_status,
3325: x_msg_count =>x_msg_count,
3318: (
3319: p_api_version =>l_api_version,
3320: p_init_msg_list =>Fnd_Api.g_false,
3321: p_commit =>Fnd_Api.g_false,
3322: p_validation_level =>Fnd_Api.g_valid_level_full,
3323: p_module_type =>p_module_type,
3324: x_return_status =>l_return_status,
3325: x_msg_count =>x_msg_count,
3326: x_msg_data =>x_msg_data,
3335: then
3336: AHL_VWP_TASK_CST_PR_PVT.Get_Unassociated_Items
3337: (
3338: p_api_version =>p_api_version,
3339: p_init_msg_list =>Fnd_Api.G_FALSE,
3340: p_commit =>Fnd_Api.G_FALSE,
3341: p_validation_level =>Fnd_Api.G_VALID_LEVEL_FULL,
3342: p_module_type =>NULL,
3343: x_return_status =>l_return_Status,
3336: AHL_VWP_TASK_CST_PR_PVT.Get_Unassociated_Items
3337: (
3338: p_api_version =>p_api_version,
3339: p_init_msg_list =>Fnd_Api.G_FALSE,
3340: p_commit =>Fnd_Api.G_FALSE,
3341: p_validation_level =>Fnd_Api.G_VALID_LEVEL_FULL,
3342: p_module_type =>NULL,
3343: x_return_status =>l_return_Status,
3344: x_msg_count =>x_msg_count,
3337: (
3338: p_api_version =>p_api_version,
3339: p_init_msg_list =>Fnd_Api.G_FALSE,
3340: p_commit =>Fnd_Api.G_FALSE,
3341: p_validation_level =>Fnd_Api.G_VALID_LEVEL_FULL,
3342: p_module_type =>NULL,
3343: x_return_status =>l_return_Status,
3344: x_msg_count =>x_msg_count,
3345: x_msg_data =>x_msg_data,
3353: then
3354: AHL_VWP_TASK_CST_PR_PVT.get_other_task_items
3355: (
3356: p_api_version =>p_api_version,
3357: p_init_msg_list =>Fnd_Api.G_FALSE,
3358: p_commit =>Fnd_Api.G_FALSE,
3359: p_validation_level =>Fnd_Api.G_VALID_LEVEL_FULL,
3360: p_module_type =>NULL,
3361: x_return_status =>l_return_Status,
3354: AHL_VWP_TASK_CST_PR_PVT.get_other_task_items
3355: (
3356: p_api_version =>p_api_version,
3357: p_init_msg_list =>Fnd_Api.G_FALSE,
3358: p_commit =>Fnd_Api.G_FALSE,
3359: p_validation_level =>Fnd_Api.G_VALID_LEVEL_FULL,
3360: p_module_type =>NULL,
3361: x_return_status =>l_return_Status,
3362: x_msg_count =>x_msg_count,
3355: (
3356: p_api_version =>p_api_version,
3357: p_init_msg_list =>Fnd_Api.G_FALSE,
3358: p_commit =>Fnd_Api.G_FALSE,
3359: p_validation_level =>Fnd_Api.G_VALID_LEVEL_FULL,
3360: p_module_type =>NULL,
3361: x_return_status =>l_return_Status,
3362: x_msg_count =>x_msg_count,
3363: x_msg_data =>x_msg_data,
3437:
3438: End IF; --- mr or other tasks
3439:
3440: -- Check Error Message stack.
3441: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
3442: l_msg_count := FND_MSG_PUB.count_msg;
3443: IF l_msg_count > 0 THEN
3444: RAISE FND_API.G_EXC_ERROR;
3445: END IF;
3440: -- Check Error Message stack.
3441: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
3442: l_msg_count := FND_MSG_PUB.count_msg;
3443: IF l_msg_count > 0 THEN
3444: RAISE FND_API.G_EXC_ERROR;
3445: END IF;
3446: END IF;
3447:
3448: x_cost_price_tbl:=l_cost_price_tbl;
3447:
3448: x_cost_price_tbl:=l_cost_price_tbl;
3449:
3450: -- Standard check of p_commit
3451: IF FND_API.TO_BOOLEAN(p_commit) THEN
3452: COMMIT;
3453: END IF;
3454:
3455:
3463:
3464: END IF;
3465:
3466: EXCEPTION
3467: WHEN FND_API.G_EXC_ERROR THEN
3468: x_return_status := FND_API.G_RET_STS_ERROR;
3469: ROLLBACK TO GET_TASK_ITEMS_NO_PRICE_PVT;
3470: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3471: p_data => x_msg_data,
3464: END IF;
3465:
3466: EXCEPTION
3467: WHEN FND_API.G_EXC_ERROR THEN
3468: x_return_status := FND_API.G_RET_STS_ERROR;
3469: ROLLBACK TO GET_TASK_ITEMS_NO_PRICE_PVT;
3470: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3471: p_data => x_msg_data,
3472: p_encoded => fnd_api.g_false);
3468: x_return_status := FND_API.G_RET_STS_ERROR;
3469: ROLLBACK TO GET_TASK_ITEMS_NO_PRICE_PVT;
3470: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3471: p_data => x_msg_data,
3472: p_encoded => fnd_api.g_false);
3473:
3474:
3475: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3476: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3471: p_data => x_msg_data,
3472: p_encoded => fnd_api.g_false);
3473:
3474:
3475: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3476: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3477: ROLLBACK TO GET_TASK_ITEMS_NO_PRICE_PVT;
3478: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3479: p_data => x_msg_data,
3472: p_encoded => fnd_api.g_false);
3473:
3474:
3475: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3476: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3477: ROLLBACK TO GET_TASK_ITEMS_NO_PRICE_PVT;
3478: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3479: p_data => x_msg_data,
3480: p_encoded => fnd_api.g_false);
3476: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3477: ROLLBACK TO GET_TASK_ITEMS_NO_PRICE_PVT;
3478: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3479: p_data => x_msg_data,
3480: p_encoded => fnd_api.g_false);
3481:
3482:
3483: WHEN OTHERS THEN
3484: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3480: p_encoded => fnd_api.g_false);
3481:
3482:
3483: WHEN OTHERS THEN
3484: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3485: ROLLBACK TO GET_TASK_ITEMS_NO_PRICE_PVT;
3486: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
3487: fnd_msg_pub.add_exc_msg(p_pkg_name => G_PKG_NAME,
3488: p_procedure_name => L_API_NAME,
3489: p_error_text => SUBSTR(SQLERRM,1,500));
3490: END IF;
3491: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3492: p_data => x_msg_data,
3493: p_encoded => fnd_api.g_false);
3494:
3495:
3496: END GET_TASK_ITEMS_NO_PRICE;
3497:
3502: -- Refer for more details \\Industry1-nt\telecom\Advanced Services Online\300 DLD\11.5.10\VWP\Costing_DLD_Part2_V1.8.doc
3503: --
3504: PROCEDURE GET_UNASSOCIATED_ITEMS (
3505: p_api_version IN NUMBER,
3506: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
3507: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
3508: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
3509: p_module_type IN VARCHAR2 := NULL,
3510: x_return_status OUT NOCOPY VARCHAR2,
3503: --
3504: PROCEDURE GET_UNASSOCIATED_ITEMS (
3505: p_api_version IN NUMBER,
3506: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
3507: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
3508: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
3509: p_module_type IN VARCHAR2 := NULL,
3510: x_return_status OUT NOCOPY VARCHAR2,
3511: x_msg_count OUT NOCOPY NUMBER,
3504: PROCEDURE GET_UNASSOCIATED_ITEMS (
3505: p_api_version IN NUMBER,
3506: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
3507: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
3508: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
3509: p_module_type IN VARCHAR2 := NULL,
3510: x_return_status OUT NOCOPY VARCHAR2,
3511: x_msg_count OUT NOCOPY NUMBER,
3512: x_msg_data OUT NOCOPY VARCHAR2,
3580:
3581: end if;
3582:
3583: -- Check Error Message stack.
3584: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
3585: l_msg_count := FND_MSG_PUB.count_msg;
3586: IF l_msg_count > 0 THEN
3587: RAISE FND_API.G_EXC_ERROR;
3588: END IF;
3583: -- Check Error Message stack.
3584: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
3585: l_msg_count := FND_MSG_PUB.count_msg;
3586: IF l_msg_count > 0 THEN
3587: RAISE FND_API.G_EXC_ERROR;
3588: END IF;
3589: END IF;
3590:
3591: ahl_vwp_rules_pvt.merge_for_unique_items
3607:
3608: x_item_tbl:=l_item_tbl;
3609:
3610: -- Standard check of p_commit
3611: IF FND_API.TO_BOOLEAN(p_commit) THEN
3612: COMMIT WORK;
3613: END IF;
3614:
3615: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
3622:
3623: END IF;
3624:
3625: EXCEPTION
3626: WHEN FND_API.G_EXC_ERROR THEN
3627: x_return_status := FND_API.G_RET_STS_ERROR;
3628: ROLLBACK TO GET_UNASSOCIATED_ITEMS_PVT;
3629: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3630: p_data => x_msg_data,
3623: END IF;
3624:
3625: EXCEPTION
3626: WHEN FND_API.G_EXC_ERROR THEN
3627: x_return_status := FND_API.G_RET_STS_ERROR;
3628: ROLLBACK TO GET_UNASSOCIATED_ITEMS_PVT;
3629: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3630: p_data => x_msg_data,
3631: p_encoded => fnd_api.g_false);
3627: x_return_status := FND_API.G_RET_STS_ERROR;
3628: ROLLBACK TO GET_UNASSOCIATED_ITEMS_PVT;
3629: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3630: p_data => x_msg_data,
3631: p_encoded => fnd_api.g_false);
3632:
3633:
3634: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3635: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3630: p_data => x_msg_data,
3631: p_encoded => fnd_api.g_false);
3632:
3633:
3634: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3635: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3636: ROLLBACK TO GET_UNASSOCIATED_ITEMS_PVT;
3637: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3638: p_data => x_msg_data,
3631: p_encoded => fnd_api.g_false);
3632:
3633:
3634: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3635: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3636: ROLLBACK TO GET_UNASSOCIATED_ITEMS_PVT;
3637: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3638: p_data => x_msg_data,
3639: p_encoded => fnd_api.g_false);
3635: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3636: ROLLBACK TO GET_UNASSOCIATED_ITEMS_PVT;
3637: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3638: p_data => x_msg_data,
3639: p_encoded => fnd_api.g_false);
3640:
3641:
3642: WHEN OTHERS THEN
3643: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3639: p_encoded => fnd_api.g_false);
3640:
3641:
3642: WHEN OTHERS THEN
3643: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3644: ROLLBACK TO GET_UNASSOCIATED_ITEMS_PVT;
3645: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
3646: fnd_msg_pub.add_exc_msg(p_pkg_name => G_PKG_NAME,
3647: p_procedure_name => L_API_NAME,
3648: p_error_text => SUBSTR(SQLERRM,1,500));
3649: END IF;
3650: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3651: p_data => x_msg_data,
3652: p_encoded => fnd_api.g_false);
3653: END GET_UNASSOCIATED_ITEMS;
3654:
3655:
3656: PROCEDURE GET_OTHER_TASK_ITEMS (
3654:
3655:
3656: PROCEDURE GET_OTHER_TASK_ITEMS (
3657: p_api_version IN NUMBER,
3658: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
3659: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
3660: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
3661: p_module_type IN VARCHAR2 := NULL,
3662: x_return_status OUT NOCOPY VARCHAR2,
3655:
3656: PROCEDURE GET_OTHER_TASK_ITEMS (
3657: p_api_version IN NUMBER,
3658: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
3659: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
3660: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
3661: p_module_type IN VARCHAR2 := NULL,
3662: x_return_status OUT NOCOPY VARCHAR2,
3663: x_msg_count OUT NOCOPY NUMBER,
3656: PROCEDURE GET_OTHER_TASK_ITEMS (
3657: p_api_version IN NUMBER,
3658: p_init_msg_list IN VARCHAR2 := Fnd_Api.G_FALSE,
3659: p_commit IN VARCHAR2 := Fnd_Api.G_FALSE,
3660: p_validation_level IN NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
3661: p_module_type IN VARCHAR2 := NULL,
3662: x_return_status OUT NOCOPY VARCHAR2,
3663: x_msg_count OUT NOCOPY NUMBER,
3664: x_msg_data OUT NOCOPY VARCHAR2,
3723: then
3724:
3725: -- Task Date can not be null
3726: IF (p_task_start_time IS NULL OR
3727: p_task_start_time = FND_API.G_MISS_DATE ) THEN
3728:
3729: FND_MESSAGE.set_name( 'AHL','AHL_VWP_VALIDATE_ERROR' );
3730: FND_MSG_PUB.add;
3731:
3732: IF G_DEBUG='Y' THEN
3733: Ahl_Debug_Pub.debug( l_full_name ||'Task Start Date is null');
3734: END IF;
3735:
3736: RAISE FND_API.G_EXC_ERROR;
3737: END IF;
3738:
3739: -- need to add notfound exception handling here
3740:
3917:
3918: END IF;
3919:
3920: -- Check Error Message stack.
3921: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
3922: l_msg_count := FND_MSG_PUB.count_msg;
3923: IF l_msg_count > 0 THEN
3924: RAISE FND_API.G_EXC_ERROR;
3925: END IF;
3920: -- Check Error Message stack.
3921: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
3922: l_msg_count := FND_MSG_PUB.count_msg;
3923: IF l_msg_count > 0 THEN
3924: RAISE FND_API.G_EXC_ERROR;
3925: END IF;
3926: END IF;
3927:
3928: x_item_tbl:=l_item_tbl;
3927:
3928: x_item_tbl:=l_item_tbl;
3929:
3930: -- Standard check of p_commit
3931: IF FND_API.TO_BOOLEAN(p_commit) THEN
3932: COMMIT WORK;
3933: END IF;
3934:
3935: IF (fnd_log.level_statement >= fnd_log.g_current_runtime_level)THEN
3943: END IF;
3944:
3945:
3946: EXCEPTION
3947: WHEN FND_API.G_EXC_ERROR THEN
3948: x_return_status := FND_API.G_RET_STS_ERROR;
3949: ROLLBACK TO GET_OTHER_TASK_ITEMS_PVT;
3950: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3951: p_data => x_msg_data,
3944:
3945:
3946: EXCEPTION
3947: WHEN FND_API.G_EXC_ERROR THEN
3948: x_return_status := FND_API.G_RET_STS_ERROR;
3949: ROLLBACK TO GET_OTHER_TASK_ITEMS_PVT;
3950: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3951: p_data => x_msg_data,
3952: p_encoded => fnd_api.g_false);
3948: x_return_status := FND_API.G_RET_STS_ERROR;
3949: ROLLBACK TO GET_OTHER_TASK_ITEMS_PVT;
3950: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3951: p_data => x_msg_data,
3952: p_encoded => fnd_api.g_false);
3953:
3954:
3955: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3956: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3951: p_data => x_msg_data,
3952: p_encoded => fnd_api.g_false);
3953:
3954:
3955: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3956: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3957: ROLLBACK TO GET_OTHER_TASK_ITEMS_PVT;
3958: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3959: p_data => x_msg_data,
3952: p_encoded => fnd_api.g_false);
3953:
3954:
3955: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
3956: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3957: ROLLBACK TO GET_OTHER_TASK_ITEMS_PVT;
3958: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3959: p_data => x_msg_data,
3960: p_encoded => fnd_api.g_false);
3956: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3957: ROLLBACK TO GET_OTHER_TASK_ITEMS_PVT;
3958: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3959: p_data => x_msg_data,
3960: p_encoded => fnd_api.g_false);
3961:
3962:
3963: WHEN OTHERS THEN
3964: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3960: p_encoded => fnd_api.g_false);
3961:
3962:
3963: WHEN OTHERS THEN
3964: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
3965: ROLLBACK TO GET_OTHER_TASK_ITEMS_PVT;
3966: IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
3967: fnd_msg_pub.add_exc_msg(p_pkg_name => G_PKG_NAME,
3968: p_procedure_name => L_API_NAME,
3969: p_error_text => SUBSTR(SQLERRM,1,500));
3970: END IF;
3971: FND_MSG_PUB.count_and_get( p_count => x_msg_count,
3972: p_data => x_msg_data,
3973: p_encoded => fnd_api.g_false);
3974:
3975: END GET_OTHER_TASK_ITEMS;
3976:
3977: