[Home] [Help]
PACKAGE BODY: APPS.OKC_QA_PROCS
Source
1 PACKAGE BODY OKC_QA_PROCS AS
2 /* $Header: OKCRQAPB.pls 120.0 2005/05/25 22:47:49 appldev noship $ */
3
4 l_debug VARCHAR2(1) := NVL(FND_PROFILE.VALUE('AFLOG_ENABLED'),'N');
5
6 -- Start of comments
7 --
8 -- Procedure Name : check_parties
9 -- Description :
10 -- Business Rules :
11 -- Parameters :
12 -- Version : 1.0
13 -- End of comments
14
15 PROCEDURE check_parties(
16 x_return_status OUT NOCOPY VARCHAR2,
17 p_chr_id IN NUMBER,
18 p_party_count IN NUMBER
19 ) IS
20 l_count NUMBER := 0;
21 CURSOR l_cpl_csr IS
22 SELECT count(*)
23 FROM OKC_K_PARTY_ROLES_B cpl
24 WHERE cpl.dnz_chr_id = p_chr_id
25 and cpl.cle_id is NULL;
26 BEGIN
27 -- initialize return status
28 x_return_status := OKC_API.G_RET_STS_SUCCESS;
29
30 -- get party count
31 OPEN l_cpl_csr;
32 FETCH l_cpl_csr INTO l_count;
33 CLOSE l_cpl_csr;
34
35 -- check if party count is greater or equal to the required number
36 IF (l_count < p_party_count) THEN
37 OKC_API.set_message(
38 p_app_name => G_APP_NAME,
39 p_msg_name => G_PARTY_COUNT,
40 p_token1 => 'PARTY_COUNT',
41 p_token1_value => p_party_count);
42 -- notify caller of an error
43 x_return_status := OKC_API.G_RET_STS_ERROR;
44 ELSE
45 OKC_API.set_message(
46 p_app_name => G_APP_NAME,
47 p_msg_name => G_QA_SUCCESS);
48 -- notify caller of success
49 x_return_status := OKC_API.G_RET_STS_SUCCESS;
50 END IF;
51 EXCEPTION
52 WHEN G_EXCEPTION_HALT_VALIDATION THEN
53 -- no processing necessary; validation can continue with next column
54 NULL;
55 WHEN OTHERS THEN
56 -- store SQL error message on message stack
57 OKC_API.SET_MESSAGE(
58 p_app_name => G_APP_NAME,
59 p_msg_name => G_UNEXPECTED_ERROR,
60 p_token1 => G_SQLCODE_TOKEN,
61 p_token1_value => SQLCODE,
62 p_token2 => G_SQLERRM_TOKEN,
63 p_token2_value => SQLERRM);
64 -- notify caller of an error as UNEXPETED error
65 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
66 -- verify that cursor was closed
67 IF l_cpl_csr%ISOPEN THEN
68 CLOSE l_cpl_csr;
69 END IF;
70 END check_parties;
71 --
72 -- Start of comments
73 --
74 -- Procedure Name : check_min_lines
75 -- Description :
76 -- Business Rules :
77 -- Parameters :
78 -- Version : 1.0
79 -- End of comments
80
81 PROCEDURE check_min_lines(
82 x_return_status OUT NOCOPY VARCHAR2,
83 p_chr_id IN NUMBER,
84 p_line_count IN NUMBER
85 ) IS
86 l_count NUMBER := 0;
87 CURSOR l_cle_csr IS
88 SELECT count(*)
89 FROM OKC_K_LINES_B cle
90 WHERE cle.chr_id = p_chr_id;
91 BEGIN
92 -- initialize return status
93 x_return_status := OKC_API.G_RET_STS_SUCCESS;
94
95 -- get line count
96 OPEN l_cle_csr;
97 FETCH l_cle_csr INTO l_count;
98 CLOSE l_cle_csr;
99
100 -- check if line count is greater or equal to the required number
101 IF (l_count < p_line_count) THEN
102 OKC_API.set_message(
103 p_app_name => G_APP_NAME,
104 p_msg_name => G_LINE_COUNT,
105 p_token1 => 'LINE_COUNT',
106 p_token1_value => p_line_count);
107 -- notify caller of an error
108 x_return_status := OKC_API.G_RET_STS_ERROR;
109 ELSE
110 OKC_API.set_message(
111 p_app_name => G_APP_NAME,
112 p_msg_name => G_QA_SUCCESS);
113 -- notify caller of success
114 x_return_status := OKC_API.G_RET_STS_SUCCESS;
115 END IF;
116 EXCEPTION
117 WHEN G_EXCEPTION_HALT_VALIDATION THEN
118 -- no processing necessary; validation can continue with next column
119 NULL;
120 WHEN OTHERS THEN
121 -- store SQL error message on message stack
122 OKC_API.SET_MESSAGE(
123 p_app_name => G_APP_NAME,
124 p_msg_name => G_UNEXPECTED_ERROR,
125 p_token1 => G_SQLCODE_TOKEN,
126 p_token1_value => SQLCODE,
127 p_token2 => G_SQLERRM_TOKEN,
128 p_token2_value => SQLERRM);
129 -- notify caller of an error as UNEXPETED error
130 x_return_status := OKC_API.G_RET_STS_UNEXP_ERROR;
131 -- verify that cursor was closed
132 IF l_cle_csr%ISOPEN THEN
133 CLOSE l_cle_csr;
134 END IF;
135 END check_min_lines;
136
137 END OKC_QA_PROCS;