DBA Data[Home] [Help]

PACKAGE BODY: APPS.AMS_LISTGENERATION_PUB

Source


1 PACKAGE BODY AMS_ListGeneration_PUB as
2 /* $Header: amsplgnb.pls 115.8 2004/04/26 23:56:42 sranka ship $ */
3 -- ===============================================================
4 -- Start of Comments
5 -- Package name
6 --          AMS_ListGeneration_PUB
7 -- Purpose
8 --
9 -- History
10 --
11 -- NOTE
12 --
13 -- End of Comments
14 -- ===============================================================
15 
16 
17 G_PKG_NAME CONSTANT VARCHAR2(30):= 'AMS_ListGeneration_PUB';
18 G_FILE_NAME CONSTANT VARCHAR2(12) := 'amsplgnb.pls';
19 
20 AMS_DEBUG_HIGH_ON boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_HIGH);
21 AMS_DEBUG_LOW_ON boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
22 AMS_DEBUG_MEDIUM_ON boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_MEDIUM);
23 
24 PROCEDURE Generate_List
25 ( p_api_version                IN     NUMBER,
26   p_init_msg_list              IN     VARCHAR2   := FND_API.G_TRUE,
27   p_commit                     IN     VARCHAR2   := FND_API.G_FALSE,
28   p_validation_level           IN     NUMBER     := FND_API.G_VALID_LEVEL_FULL,
29   p_list_header_id             IN     NUMBER   ,
30   x_return_status              OUT NOCOPY    VARCHAR2,
31   x_msg_count                  OUT NOCOPY    NUMBER,
32   x_msg_data                   OUT NOCOPY    VARCHAR2
33 
34 ) IS
35 
36         l_api_name            CONSTANT VARCHAR2(30)  := 'Generate_List';
37 	l_api_version         CONSTANT NUMBER        := 1.0;
38 
39         -- Status Local Variables
40         l_return_status                VARCHAR2(1);  -- Return value from procedures
41         l_list_header_id               NUMBER  := P_list_header_id;
42 
43   BEGIN
44 
45    SAVEPOINT Generate_List_pub;
46 
47    -- initialize the message list;
48    -- won't do it again when calling private API
49    IF FND_API.to_boolean(p_init_msg_list) THEN
50       FND_MSG_PUB.initialize;
51    END IF;
52 
53    AMS_LISTGENERATION_PKG.Generate_List(
54    p_api_version           => p_api_version,
55    p_init_msg_list         => FND_API.g_false,
56    p_commit                => FND_API.g_false,
57    p_validation_level      => FND_API.g_valid_level_full,
58 
59    x_return_status         => l_return_status,
60    x_msg_count             => x_msg_count,
61    x_msg_data              => x_msg_data,
62 
63    p_list_header_id              => l_list_header_id
64   );
65 
66 
67    IF l_return_status = FND_API.g_ret_sts_error THEN
68       RAISE FND_API.g_exc_error;
69    ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
70       RAISE FND_API.g_exc_unexpected_error;
71    END IF;
72 
73    IF FND_API.to_boolean(p_commit) THEN
74       COMMIT;
75    END IF;
76    x_return_status := FND_API.g_ret_sts_success;
77    FND_MSG_PUB.count_and_get(
78          p_encoded => FND_API.g_false,
79          p_count   => x_msg_count,
80          p_data    => x_msg_data
81    );
82 
83 EXCEPTION
84 
85    WHEN FND_API.g_exc_error THEN
86       ROLLBACK TO Generate_List_pub;
87       x_return_status := FND_API.g_ret_sts_error;
88       FND_MSG_PUB.count_and_get(
89             p_encoded => FND_API.g_false,
90             p_count   => x_msg_count,
91             p_data    => x_msg_data
92       );
93 
94    WHEN FND_API.g_exc_unexpected_error THEN
95       ROLLBACK TO Generate_List_pub;
96       x_return_status := FND_API.g_ret_sts_unexp_error ;
97       FND_MSG_PUB.count_and_get(
98             p_encoded => FND_API.g_false,
99             p_count   => x_msg_count,
100             p_data    => x_msg_data
101       );
102 
103 
104    WHEN OTHERS THEN
105       ROLLBACK TO Generate_List_pub;
106       x_return_status := FND_API.g_ret_sts_unexp_error ;
107 
108       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
109 		THEN
110          FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
111       END IF;
112 
113       FND_MSG_PUB.count_and_get(
114             p_encoded => FND_API.g_false,
115             p_count   => x_msg_count,
116             p_data    => x_msg_data
117       );
118   END Generate_List;
119 
120 PROCEDURE create_list_from_query
121 ( p_api_version            IN    NUMBER,
122   p_init_msg_list          IN    VARCHAR2   := FND_API.G_TRUE,
123   p_commit                 IN    VARCHAR2   := FND_API.G_FALSE,
124   p_validation_level       IN    NUMBER     := FND_API.G_VALID_LEVEL_FULL,
125   p_list_name              in    varchar2,
126   p_list_type              in    varchar2,
127   p_owner_user_id          in    number,
128   p_list_header_id         in    number,
129   p_sql_string_tbl         in    AMS_List_Query_PVT.sql_string_tbl      ,
130   p_primary_key            in    varchar2,
131   p_source_object_name     in    varchar2,
132   p_master_type            in    varchar2,
133   x_return_status          OUT NOCOPY   VARCHAR2,
134   x_msg_count              OUT NOCOPY   NUMBER,
135   x_msg_data               OUT NOCOPY   VARCHAR2
136   )
137 
138   IS         l_api_name            CONSTANT VARCHAR2(30)  := 'Generate_List';
139 	l_api_version         CONSTANT NUMBER        := 1.0;
140 
141         -- Status Local Variables
142         l_return_status                VARCHAR2(1);  -- Return value from procedures
143 
144   BEGIN
145 
146    SAVEPOINT create_list_from_query_pub;
147 
148    -- initialize the message list;
149    -- won't do it again when calling private API
150    IF FND_API.to_boolean(p_init_msg_list) THEN
151       FND_MSG_PUB.initialize;
152    END IF;
153 
154    AMS_LISTGENERATION_PKG.create_list_from_query(
155    p_api_version           => p_api_version,
156    p_init_msg_list         => FND_API.g_false,
157    p_commit                => FND_API.g_false,
158    p_validation_level      => FND_API.g_valid_level_full,
159 
160   p_list_name              =>  p_list_name,
161   p_list_type              =>  p_list_type,
162   p_owner_user_id          =>  p_owner_user_id,
163   p_list_header_id          =>  p_list_header_id,
164   p_sql_string_tbl         =>  p_sql_string_tbl,
165   p_primary_key            =>  p_primary_key,
166   p_source_object_name     =>  p_source_object_name,
167   p_master_type            =>  p_master_type,
168    x_return_status         => l_return_status,
169    x_msg_count             => x_msg_count,
170    x_msg_data              => x_msg_data
171 
172   );
173 
174 
175    IF l_return_status = FND_API.g_ret_sts_error THEN
176       RAISE FND_API.g_exc_error;
177    ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
178       RAISE FND_API.g_exc_unexpected_error;
179    END IF;
180 
181    IF FND_API.to_boolean(p_commit) THEN
182       COMMIT;
183    END IF;
184    x_return_status := FND_API.g_ret_sts_success;
185    FND_MSG_PUB.count_and_get(
186          p_encoded => FND_API.g_false,
187          p_count   => x_msg_count,
188          p_data    => x_msg_data
189    );
190 
191 EXCEPTION
192 
193    WHEN FND_API.g_exc_error THEN
194       ROLLBACK TO create_list_from_query_pub;
195       x_return_status := FND_API.g_ret_sts_error;
196       FND_MSG_PUB.count_and_get(
197             p_encoded => FND_API.g_false,
198             p_count   => x_msg_count,
199             p_data    => x_msg_data
200       );
201 
202    WHEN FND_API.g_exc_unexpected_error THEN
203       ROLLBACK TO create_list_from_query_pub;
204       x_return_status := FND_API.g_ret_sts_unexp_error ;
205       FND_MSG_PUB.count_and_get(
206             p_encoded => FND_API.g_false,
207             p_count   => x_msg_count,
208             p_data    => x_msg_data
209       );
210 
211 
212    WHEN OTHERS THEN
213       ROLLBACK TO create_list_from_query_pub;
214       x_return_status := FND_API.g_ret_sts_unexp_error ;
215 
216       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
217 		THEN
218          FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
219       END IF;
220 
221       FND_MSG_PUB.count_and_get(
222             p_encoded => FND_API.g_false,
223             p_count   => x_msg_count,
224             p_data    => x_msg_data
225       );
226   END create_list_from_query;
227 
228 
229 
230 
231 PROCEDURE create_list_from_query
232 ( p_api_version            IN    NUMBER,
233   p_init_msg_list          IN    VARCHAR2   := FND_API.G_TRUE,
234   p_commit                 IN    VARCHAR2   := FND_API.G_FALSE,
235   p_validation_level       IN    NUMBER     := FND_API.G_VALID_LEVEL_FULL,
236   p_list_name              in    varchar2,
237   p_list_type              in    varchar2,
238   p_owner_user_id          in    number,
239   p_list_header_id         in    number,
240   p_sql_string_tbl         in    AMS_List_Query_PVT.sql_string_tbl      ,
241   p_primary_key            in    varchar2,
242   p_source_object_name     in    varchar2,
243   p_master_type            in    varchar2,
244   p_query_param            in    AMS_List_Query_PVT.sql_string_tbl      ,
245   x_return_status          OUT NOCOPY   VARCHAR2,
246   x_msg_count              OUT NOCOPY   NUMBER,
247   x_msg_data               OUT NOCOPY   VARCHAR2
248   )
249 
250   IS         l_api_name            CONSTANT VARCHAR2(30)  := 'Generate_List';
251 	l_api_version         CONSTANT NUMBER        := 1.0;
252 
253         -- Status Local Variables
254         l_return_status                VARCHAR2(1);  -- Return value from procedures
255 
256   BEGIN
257 
258    SAVEPOINT create_list_from_query_pub;
259 
260    -- initialize the message list;
261    -- won't do it again when calling private API
262    IF FND_API.to_boolean(p_init_msg_list) THEN
263       FND_MSG_PUB.initialize;
264    END IF;
265 
266    AMS_LISTGENERATION_PKG.create_list_from_query(
267    p_api_version           => p_api_version,
268    p_init_msg_list         => FND_API.g_false,
269    p_commit                => FND_API.g_false,
270    p_validation_level      => FND_API.g_valid_level_full,
271 
272   p_list_name              =>  p_list_name,
273   p_list_type              =>  p_list_type,
274   p_owner_user_id          =>  p_owner_user_id,
275   p_list_header_id          =>  p_list_header_id,
276   p_sql_string_tbl         =>  p_sql_string_tbl,
277   p_primary_key            =>  p_primary_key,
278   p_source_object_name     =>  p_source_object_name,
279   p_master_type            =>  p_master_type,
280   p_query_param            => p_query_param            ,
281 
282    x_return_status         => l_return_status,
283    x_msg_count             => x_msg_count,
284    x_msg_data              => x_msg_data
285 
286   );
287 
288 
289    IF l_return_status = FND_API.g_ret_sts_error THEN
290       RAISE FND_API.g_exc_error;
291    ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
292       RAISE FND_API.g_exc_unexpected_error;
293    END IF;
294 
295    IF FND_API.to_boolean(p_commit) THEN
296       COMMIT;
297    END IF;
298    x_return_status := FND_API.g_ret_sts_success;
299    FND_MSG_PUB.count_and_get(
300          p_encoded => FND_API.g_false,
301          p_count   => x_msg_count,
302          p_data    => x_msg_data
303    );
304 
305 EXCEPTION
306 
307    WHEN FND_API.g_exc_error THEN
308       ROLLBACK TO create_list_from_query_pub;
309       x_return_status := FND_API.g_ret_sts_error;
310       FND_MSG_PUB.count_and_get(
311             p_encoded => FND_API.g_false,
312             p_count   => x_msg_count,
313             p_data    => x_msg_data
314       );
315 
316    WHEN FND_API.g_exc_unexpected_error THEN
317       ROLLBACK TO create_list_from_query_pub;
318       x_return_status := FND_API.g_ret_sts_unexp_error ;
319       FND_MSG_PUB.count_and_get(
320             p_encoded => FND_API.g_false,
321             p_count   => x_msg_count,
322             p_data    => x_msg_data
323       );
324 
325 
326    WHEN OTHERS THEN
327       ROLLBACK TO create_list_from_query_pub;
328       x_return_status := FND_API.g_ret_sts_unexp_error ;
329 
330       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_unexp_error)
331 		THEN
332          FND_MSG_PUB.add_exc_msg(g_pkg_name, l_api_name);
333       END IF;
334 
335       FND_MSG_PUB.count_and_get(
336             p_encoded => FND_API.g_false,
337             p_count   => x_msg_count,
338             p_data    => x_msg_data
339       );
340   END create_list_from_query;
341 
342 
343 
344 
345 
346 END AMS_ListGeneration_PUB;