[Home] [Help]
PACKAGE BODY: APPS.PV_QA_CHECK_PVT
Source
1 PACKAGE BODY PV_QA_CHECK_PVT AS
2 /* $Header: pvxvqacb.pls 120.2 2006/03/31 15:30:29 ktsao noship $ */
3
4 G_PKG_NAME CONSTANT VARCHAR2(30):= 'PV_QA_CHECK_PVT';
5
6 PV_DEBUG_HIGH_ON CONSTANT boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_HIGH);
7 PV_DEBUG_LOW_ON CONSTANT boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
8 PV_DEBUG_MEDIUM_ON CONSTANT boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_MEDIUM);
9
10 PROCEDURE execute_qa_check_list(
11 p_api_version IN NUMBER,
12 p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_FALSE,
13 x_return_status OUT NOCOPY VARCHAR2,
14 x_msg_count OUT NOCOPY NUMBER,
15 x_msg_data OUT NOCOPY VARCHAR2,
16 p_doc_type IN VARCHAR2,
17 p_doc_id IN NUMBER,
18 x_qa_return_status OUT NOCOPY VARCHAR2,
19 x_msg_tbl OUT NOCOPY JTF_VARCHAR2_TABLE_2000)
20 --x_err_tbl OUT NOCOPY JTF_VARCHAR2_TABLE_100)
21 IS
22 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
23 l_api_name CONSTANT VARCHAR2(30) := 'execute_qa_check_list';
24 l_api_type CONSTANT VARCHAR2(5) := '_PVT';
25 l_api_version CONSTANT NUMBER := 1.0;
26 l_qa_result_tbl OKC_TERMS_QA_GRP.qa_result_tbl_type;
27
28 BEGIN
29
30 DBMS_TRANSACTION.SAVEPOINT(l_api_name || l_api_type);
31 -- Standard call to check for call compatibility.
32 IF NOT FND_API.Compatible_API_Call ( l_api_version,
33 p_api_version,
34 l_api_name,
35 G_PKG_NAME)
36 THEN
37 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
38 END IF;
39
40
41 -- Initialize message list if p_init_msg_list is set to TRUE.
42 IF FND_API.to_Boolean( p_init_msg_list )
43 THEN
44 FND_MSG_PUB.initialize;
45 END IF;
46
47
48
49 -- Debug Message
50 IF (PV_DEBUG_HIGH_ON) THEN
51
52 PVX_Utility_PVT.debug_message('Private API: ' || l_api_name || ' start');
53 END IF;
54
55 -- Initialize API return status to SUCCESS
56 x_return_status := FND_API.G_RET_STS_SUCCESS;
57
58 OKC_TERMS_QA_GRP.QA_Doc(
59 p_api_version => p_api_version,
60 p_init_msg_list => p_init_msg_list,
61 x_return_status => x_return_status,
62 x_msg_count => x_msg_count,
63 x_msg_data => x_msg_data,
64 --p_qa_mode => null,
65 p_doc_type => p_doc_type,
66 p_doc_id => p_doc_id,
67 x_qa_result_tbl => l_qa_result_tbl,
68 x_qa_return_status => x_qa_return_status
69 --p_qa_terms_only => null
70 );
71
72
73 IF (x_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
74 raise OKC_API.G_EXCEPTION_UNEXPECTED_ERROR;
75 ELSIF (x_return_status = OKC_API.G_RET_STS_ERROR) THEN
76 raise OKC_API.G_EXCEPTION_ERROR;
77 END IF;
78
79 IF (x_qa_return_status = OKC_TERMS_QA_GRP.G_QA_STS_ERROR or x_qa_return_status = OKC_TERMS_QA_GRP.G_QA_STS_WARNING) THEN
80
81 --x_err_tbl := JTF_VARCHAR2_TABLE_100();
82 x_msg_tbl := JTF_VARCHAR2_TABLE_2000();
83
84 FOR l_curr_row IN l_qa_result_tbl.first..l_qa_result_tbl.last LOOP
85 x_msg_tbl.extend;
86 x_msg_tbl(l_curr_row) := l_qa_result_tbl(l_curr_row).Problem_details;
87 --x_err_tbl.extend;
88 --x_err_tbl(l_curr_row) := l_qa_result_tbl(l_curr_row).error_status;
89 END LOOP; --FOR l_curr_row IN 1..l_qa_result_tbl.count LOOP
90 END IF;
91
92 EXCEPTION
93
94 WHEN OKC_API.G_EXCEPTION_ERROR THEN
95 x_return_status := OKC_API.HANDLE_EXCEPTIONS( l_api_name
96 ,G_PKG_NAME
97 ,'OKC_API.G_RET_STS_ERROR'
98 ,x_msg_count
99 ,x_msg_data
100 ,l_api_type);
101 WHEN OKC_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
102 x_return_status :=OKC_API.HANDLE_EXCEPTIONS( l_api_name
103 ,G_PKG_NAME
104 ,'OKC_API.G_RET_STS_UNEXP_ERROR'
105 ,x_msg_count
106 ,x_msg_data
107 ,l_api_type);
108 WHEN OTHERS THEN
109 x_return_status :=OKC_API.HANDLE_EXCEPTIONS( l_api_name
110 ,G_PKG_NAME
111 ,'OTHERS'
112 ,x_msg_count
113 ,x_msg_data
114 ,l_api_type);
115 END execute_qa_check_list;
116 END PV_QA_CHECK_PVT;
117