DBA Data[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;