DBA Data[Home] [Help]

PACKAGE BODY: APPS.OKL_SETUPOPTRULES_PUB

Source


1 PACKAGE BODY OKL_SETUPOPTRULES_PUB AS
2 /* $Header: OKLPSORB.pls 115.4 2004/04/13 11:18:49 rnaik noship $ */
3 
4   ---------------------------------------------------------------------------
5   -- PROCEDURE get_rec for: OKL_OPT_RULES_V
6   ---------------------------------------------------------------------------
7   PROCEDURE get_rec(p_orlv_rec			  IN orlv_rec_type,
8 			        x_return_status		  OUT NOCOPY VARCHAR2,
9 					x_msg_data			  OUT NOCOPY VARCHAR2,
10     				x_no_data_found       OUT NOCOPY BOOLEAN,
11 					x_orlv_rec			  OUT NOCOPY orlv_rec_type) IS
12     l_orlv_rec                        orlv_rec_type;
13     l_return_status                   VARCHAR2(1)    := FND_API.G_RET_STS_SUCCESS;
14 	l_no_data_found					  BOOLEAN;
15   BEGIN
16 
17   	l_orlv_rec := p_orlv_rec;
18 	x_return_status := FND_API.G_RET_STS_SUCCESS;
19 	x_no_data_found := TRUE;
20 
21     okl_setupoptrules_pvt.get_rec(p_orlv_rec      => l_orlv_rec,
22 								  x_return_status => l_return_status,
23 								  x_no_data_found => l_no_data_found,
24 								  x_orlv_rec	  => x_orlv_rec);
25 
26      IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
27         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28      END IF;
29 
30   EXCEPTION
31     WHEN OTHERS THEN
32       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
33 	  x_no_data_found := FALSE;
34 	  FND_MESSAGE.set_name(application	=> G_APP_NAME,
35 	  					   name			=> G_UNEXPECTED_ERROR);
36 	  x_msg_data := FND_MESSAGE.get;
37   END get_rec;
38 
39   ---------------------------------------------------------------------------
40   -- PROCEDURE insert_optrules
41   -- Public wrapper for insert_optrules process api
42   ---------------------------------------------------------------------------
43   PROCEDURE insert_optrules(p_api_version      IN  NUMBER,
44                             p_init_msg_list    IN  VARCHAR2 DEFAULT OKC_API.G_FALSE,
45                         	x_return_status    OUT NOCOPY VARCHAR2,
46                         	x_msg_count        OUT NOCOPY NUMBER,
47                         	x_msg_data         OUT NOCOPY VARCHAR2,
48 							p_optv_rec		   IN  optv_rec_type,
49                         	p_orlv_rec         IN  orlv_rec_type,
50                         	x_orlv_rec         OUT NOCOPY orlv_rec_type) IS
51 	l_optv_rec						  optv_rec_type;
52     l_orlv_rec                        orlv_rec_type;
53     l_data                            VARCHAR2(100);
54     l_api_name                        CONSTANT VARCHAR2(30)  := 'insert_optrules';
55     l_count                           NUMBER ;
56     l_return_status                   VARCHAR2(1)    := FND_API.G_RET_STS_SUCCESS;
57   BEGIN
58     x_return_status := FND_API.G_RET_STS_SUCCESS;
59     SAVEPOINT sp_insert_optrules;
60 
61     l_optv_rec := p_optv_rec;
62     l_orlv_rec := p_orlv_rec;
63 
64 
65 
66 	-- call process api to insert formula operands
67     okl_setupoptrules_pvt.insert_optrules(p_api_version   => p_api_version,
68                                           p_init_msg_list => p_init_msg_list,
69                               			  x_return_status => l_return_status,
70                               			  x_msg_count     => x_msg_count,
71                               			  x_msg_data      => x_msg_data,
72                               			  p_optv_rec      => l_optv_rec,
73                               			  p_orlv_rec      => l_orlv_rec,
74                               			  x_orlv_rec      => x_orlv_rec);
75 
76      IF l_return_status = FND_API.G_RET_STS_ERROR THEN
77         RAISE FND_API.G_EXC_ERROR;
78      ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
79         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
80      END IF;
81 
82     /* re-assign local record structure using output record from pvt api */
83     l_orlv_rec := x_orlv_rec;
84 
85 
86 
87   EXCEPTION
88     WHEN FND_API.G_EXC_ERROR THEN
89       ROLLBACK TO sp_insert_optrules;
90       -- notify caller of an UNEXPECTED error
91       x_return_status := FND_API.G_RET_STS_ERROR;
92 
93       -- store SQL error message on message stack for caller
94       FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE,
95 	  						    p_count   => x_msg_count,
96                                 p_data    => x_msg_data);
97 
98     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
99       ROLLBACK TO sp_insert_optrules;
100       -- notify caller of an UNEXPECTED error
101       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
102 
103       -- store SQL error message on message stack for caller
104       FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE,
105 	  						    p_count   => x_msg_count,
106                                 p_data    => x_msg_data);
107 
108     WHEN OTHERS THEN
109       -- notify caller of an UNEXPECTED error
110       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
111       FND_MSG_PUB.ADD_EXC_MSG('OKL_SETUPOPTRULES_PUB','insert_optrules');
112 
113       -- store SQL error message on message stack for caller
114       FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE,
115 	  						    p_count   => x_msg_count,
116                                 p_data    => x_msg_data);
117   END insert_optrules;
118 
119   ---------------------------------------------------------------------------
120   -- PROCEDURE delete_optrules
121   -- Public wrapper for delete_optrules process api
122   ---------------------------------------------------------------------------
123   PROCEDURE delete_optrules(p_api_version      IN  NUMBER,
124                             p_init_msg_list    IN  VARCHAR2 DEFAULT OKC_API.G_FALSE,
125                         	x_return_status    OUT NOCOPY VARCHAR2,
126                         	x_msg_count        OUT NOCOPY NUMBER,
127                         	x_msg_data         OUT NOCOPY VARCHAR2,
128   							p_optv_rec		   IN  optv_rec_type,
129                       		p_orlv_tbl         IN  orlv_tbl_type) IS
130 	l_optv_rec						  optv_rec_type;
131     l_orlv_tbl                        orlv_tbl_type;
132     l_data                            VARCHAR2(100);
133     l_count                           NUMBER ;
134     l_api_name                        CONSTANT VARCHAR2(30)  := 'delete_optrules';
135     l_return_status                   VARCHAR2(1)    := FND_API.G_RET_STS_SUCCESS;
136   BEGIN
137     x_return_status := FND_API.G_RET_STS_SUCCESS;
138     SAVEPOINT sp_delete_optrules;
139 
140     l_optv_rec := p_optv_rec;
141     l_orlv_tbl := p_orlv_tbl;
142 
143 
144 
145 	-- call process api to delete formula operands
146     okl_setupoptrules_pvt.delete_optrules(p_api_version   => p_api_version,
147                                             p_init_msg_list => p_init_msg_list,
148                               			  	x_return_status => l_return_status,
149                               			  	x_msg_count     => x_msg_count,
150                               			  	x_msg_data      => x_msg_data,
151                               			  	p_optv_rec      => l_optv_rec,
152                               			  	p_orlv_tbl      => l_orlv_tbl);
153 
154      IF l_return_status = FND_API.G_RET_STS_ERROR THEN
155         RAISE FND_API.G_EXC_ERROR;
156      ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
157         RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
158      END IF;
159 
160 
161 
162   EXCEPTION
163     WHEN FND_API.G_EXC_ERROR THEN
164       ROLLBACK TO sp_delete_optrules;
165       -- notify caller of an UNEXPECTED error
166       x_return_status := FND_API.G_RET_STS_ERROR;
167 
168       -- store SQL error message on message stack for caller
169       FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE,
170 	  						    p_count   => x_msg_count,
171                                 p_data    => x_msg_data);
172 
173     WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
174       ROLLBACK TO sp_delete_optrules;
175       -- notify caller of an UNEXPECTED error
176       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
177 
178       -- store SQL error message on message stack for caller
179       FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE,
180 	  						    p_count   => x_msg_count,
181                                 p_data    => x_msg_data);
182 
183     WHEN OTHERS THEN
184       -- notify caller of an UNEXPECTED error
185       x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
186       FND_MSG_PUB.ADD_EXC_MSG('OKL_SETUPOPTRULES_PUB','delete_optrules');
187 
188       -- store SQL error message on message stack for caller
189       FND_MSG_PUB.Count_and_get(p_encoded => OKC_API.G_FALSE,
190 	  						    p_count   => x_msg_count,
191                                 p_data    => x_msg_data);
192   END delete_optrules;
193 
194 END OKL_SETUPOPTRULES_PUB;