1 PACKAGE BODY GMO_VBATCH_GRP AS
2 /* $Header: GMOGVBTB.pls 120.2 2005/10/26 05:49 rahugupt noship $ */
3
4 G_PKG_NAME CONSTANT VARCHAR2(30) := 'GMO_VBATCH_GRP';
5
6 --This procdeure would instantiate the process instructions for the batch.
7 procedure INSTANTIATE_ADVANCED_PI (P_API_VERSION IN NUMBER,
8 P_INIT_MSG_LIST IN VARCHAR2 DEFAULT FND_API.G_FALSE,
9 P_COMMIT IN VARCHAR2 DEFAULT FND_API.G_FALSE,
10 P_VALIDATION_LEVEL IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
11 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
12 X_MSG_COUNT OUT NOCOPY NUMBER,
13 X_MSG_DATA OUT NOCOPY VARCHAR2,
14 P_ENTITY_NAME IN VARCHAR2,
15 P_ENTITY_KEY IN VARCHAR2)
16 IS
17
18 l_api_name CONSTANT VARCHAR2(30) := 'INSTANTIATE_ADVANCED_PI';
19 l_api_version CONSTANT NUMBER := 1.0;
20
21 BEGIN
22
23 -- Standard Start of API savepoint
24 SAVEPOINT INSTANTIATE_ADVANCED_PI_GRP;
25
26 -- Standard call to check for call compatibility.
27 IF NOT FND_API.Compatible_API_Call (l_api_version, p_api_version,l_api_name,G_PKG_NAME) THEN
28 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
29 END IF;
30
31 -- Initialize message list if p_init_msg_list is set to TRUE.
32 IF FND_API.to_Boolean( p_init_msg_list ) THEN
33 FND_MSG_PUB.initialize;
34 END IF;
35 -- Initialize API return status to success
36 x_return_status := FND_API.G_RET_STS_SUCCESS;
37
38
39 GMO_VBATCH_PVT.INSTANTIATE_ADVANCED_PI
40 (
41 P_ENTITY_NAME => P_ENTITY_NAME,
42 P_ENTITY_KEY => P_ENTITY_KEY,
43 X_RETURN_STATUS => X_RETURN_STATUS,
44 X_MSG_COUNT => X_MSG_COUNT,
45 X_MSG_DATA => X_MSG_DATA
46 );
47
48 IF (x_return_status = FND_API.G_RET_STS_SUCCESS) THEN
49 IF FND_API.To_Boolean( p_commit ) THEN
50 COMMIT ;
51 END IF;
52 ELSE
53 RAISE FND_API.G_EXC_ERROR;
54 END IF;
55
56 -- Standard call to get message count and if count is 1, get message info.
57 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
58
59 EXCEPTION
60 WHEN FND_API.G_EXC_ERROR THEN
61 ROLLBACK TO INSTANTIATE_ADVANCED_PI_GRP;
62 x_return_status := FND_API.G_RET_STS_ERROR;
63 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
64 if (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
65 FND_LOG.MESSAGE(FND_LOG.LEVEL_EXCEPTION,'gmo.plsql.gmo_vbatch_grp.instantiate_advanced_pi', FALSE);
66 end if;
67 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
68 ROLLBACK TO INSTANTIATE_ADVANCED_PI_GRP;
69 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
70 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
71 if (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
72 FND_LOG.MESSAGE(FND_LOG.LEVEL_UNEXPECTED,'gmo.plsql.gmo_vbatch_grp.instantiate_advanced_pi', FALSE);
73 end if;
74 WHEN OTHERS THEN
75 ROLLBACK TO INSTANTIATE_ADVANCED_PI_GRP;
76 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
77 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
78 FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME, l_api_name);
79 END IF;
80 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
81 if (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
82 FND_LOG.MESSAGE(FND_LOG.LEVEL_UNEXPECTED,'gmo.plsql.gmo_vbatch_grp.instantiate_advanced_pi', FALSE);
83 end if;
84 END INSTANTIATE_ADVANCED_PI;
85
86
87 --This procdeure would get the context information for the task.
88
89 procedure ON_TASK_LOAD (P_API_VERSION IN NUMBER,
90 P_INIT_MSG_LIST IN VARCHAR2 DEFAULT FND_API.G_FALSE,
91 P_COMMIT IN VARCHAR2 DEFAULT FND_API.G_FALSE,
92 P_VALIDATION_LEVEL IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
93 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
94 X_MSG_COUNT OUT NOCOPY NUMBER,
95 X_MSG_DATA OUT NOCOPY VARCHAR2,
96 P_FROM_MODULE IN VARCHAR2,
97 P_ENTITY_NAME IN VARCHAR2,
98 P_ENTITY_KEY IN VARCHAR2,
99 P_TASK IN VARCHAR2,
100 P_TASK_ATTRIBUTE IN VARCHAR2,
101 P_INSTRUCTION_ID IN NUMBER,
102 P_INSTRUCTION_PROCESS_ID IN NUMBER,
103 P_REQUESTER IN NUMBER,
104 P_VBATCH_MODE IN VARCHAR2,
105 X_TASK_ENTITY_NAME OUT NOCOPY VARCHAR2,
106 X_TASK_ENTITY_KEY OUT NOCOPY VARCHAR2,
107 X_TASK_NAME OUT NOCOPY VARCHAR2,
108 X_TASK_KEY OUT NOCOPY VARCHAR2,
109 X_READ_ONLY OUT NOCOPY VARCHAR2,
110 X_CONTEXT_PARAMS_TBL OUT NOCOPY GMO_DATATYPES_GRP.CONTEXT_PARAMS_TBL_TYPE)
111 IS
112
113 l_api_name CONSTANT VARCHAR2(30) := 'ON_TASK_LOAD';
114 l_api_version CONSTANT NUMBER := 1.0;
115
116
117 BEGIN
118 -- Standard call to check for call compatibility.
119 IF NOT FND_API.Compatible_API_Call (l_api_version, p_api_version,l_api_name,G_PKG_NAME) THEN
120 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
121 END IF;
122
123 -- Initialize message list if p_init_msg_list is set to TRUE.
124 IF FND_API.to_Boolean( p_init_msg_list ) THEN
125 FND_MSG_PUB.initialize;
126 END IF;
127 -- Initialize API return status to success
128 x_return_status := FND_API.G_RET_STS_SUCCESS;
129
130 GMO_VBATCH_PVT.ON_TASK_LOAD
131 (
132 P_FROM_MODULE => P_FROM_MODULE,
133 P_ENTITY_NAME => P_ENTITY_NAME,
134 P_ENTITY_KEY => P_ENTITY_KEY,
135 P_TASK => P_TASK,
136 P_TASK_ATTRIBUTE => P_TASK_ATTRIBUTE,
137 P_INSTRUCTION_ID => P_INSTRUCTION_ID,
138 P_INSTRUCTION_PROCESS_ID => P_INSTRUCTION_PROCESS_ID,
139 P_REQUESTER => P_REQUESTER,
140 P_VBATCH_MODE => P_VBATCH_MODE,
141 X_TASK_ENTITY_NAME => X_TASK_ENTITY_NAME,
142 X_TASK_ENTITY_KEY => X_TASK_ENTITY_KEY,
143 X_TASK_NAME => X_TASK_NAME,
144 X_TASK_KEY => X_TASK_KEY,
145 X_READ_ONLY => X_READ_ONLY,
146 X_CONTEXT_PARAMS_TBL => X_CONTEXT_PARAMS_TBL,
147 X_RETURN_STATUS => X_RETURN_STATUS,
148 X_MSG_COUNT => X_MSG_COUNT,
149 X_MSG_DATA => X_MSG_DATA
150 );
151
152 IF (x_return_status = FND_API.G_RET_STS_SUCCESS) THEN
153 IF FND_API.To_Boolean( p_commit ) THEN
154 COMMIT ;
155 END IF;
156 ELSE
157 RAISE FND_API.G_EXC_ERROR;
158 END IF;
159
160 -- Standard call to get message count and if count is 1, get message info.
161 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
162
163 EXCEPTION
164 WHEN FND_API.G_EXC_ERROR THEN
165 x_return_status := FND_API.G_RET_STS_ERROR;
166 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
167 if (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
168 FND_LOG.MESSAGE(FND_LOG.LEVEL_EXCEPTION,'gmo.plsql.gmo_vbatch_grp.on_task_load', FALSE);
169 end if;
170 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
171 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
172 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
173 if (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
174 FND_LOG.MESSAGE(FND_LOG.LEVEL_UNEXPECTED,'gmo.plsql.gmo_vbatch_grp.on_task_load', FALSE);
175 end if;
176 WHEN OTHERS THEN
177 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
178 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
179 FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME, l_api_name);
180 END IF;
181 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
182 if (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
183 FND_LOG.MESSAGE(FND_LOG.LEVEL_UNEXPECTED,'gmo.plsql.gmo_vbatch_grp.on_task_load', FALSE);
184 end if;
185
186 END ON_TASK_LOAD;
187
188
189
190
191 --This procdeure would process the action performed by the task.
192
193 procedure ON_TASK_ACTION (P_API_VERSION IN NUMBER,
194 P_INIT_MSG_LIST IN VARCHAR2 DEFAULT FND_API.G_FALSE,
195 P_COMMIT IN VARCHAR2 DEFAULT FND_API.G_FALSE,
196 P_VALIDATION_LEVEL IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
197 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
198 X_MSG_COUNT OUT NOCOPY NUMBER,
199 X_MSG_DATA OUT NOCOPY VARCHAR2,
200 P_ENTITY_NAME IN VARCHAR2,
201 P_ENTITY_KEY IN VARCHAR2,
202 P_TASK IN VARCHAR2,
203 P_TASK_ATTRIBUTE IN VARCHAR2,
204 P_REQUESTER IN NUMBER)
205 IS
206
207 l_api_name CONSTANT VARCHAR2(30) := 'ON_TASK_ACTION';
208 l_api_version CONSTANT NUMBER := 1.0;
209
210 BEGIN
211 -- Standard call to check for call compatibility.
212 IF NOT FND_API.Compatible_API_Call (l_api_version, p_api_version,l_api_name,G_PKG_NAME) THEN
213 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
214 END IF;
215
216 -- Initialize message list if p_init_msg_list is set to TRUE.
217 IF FND_API.to_Boolean( p_init_msg_list ) THEN
218 FND_MSG_PUB.initialize;
219 END IF;
220 -- Initialize API return status to success
221 x_return_status := FND_API.G_RET_STS_SUCCESS;
222
223 GMO_VBATCH_PVT.ON_TASK_ACTION
224 (
225 P_ENTITY_NAME => P_ENTITY_NAME,
226 P_ENTITY_KEY => P_ENTITY_KEY,
227 P_TASK => P_TASK,
228 P_TASK_ATTRIBUTE => P_TASK_ATTRIBUTE,
229 P_REQUESTER => P_REQUESTER,
230 X_RETURN_STATUS => X_RETURN_STATUS,
231 X_MSG_COUNT => X_MSG_COUNT,
232 X_MSG_DATA => X_MSG_DATA
233
234 );
235
236 IF (x_return_status = FND_API.G_RET_STS_SUCCESS) THEN
237 IF FND_API.To_Boolean( p_commit ) THEN
238 COMMIT ;
239 END IF;
240 ELSE
241 RAISE FND_API.G_EXC_ERROR;
242 END IF;
243
244 -- Standard call to get message count and if count is 1, get message info.
245 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
246
247 EXCEPTION
248 WHEN FND_API.G_EXC_ERROR THEN
249 x_return_status := FND_API.G_RET_STS_ERROR;
250 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
251 if (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
252 FND_LOG.MESSAGE(FND_LOG.LEVEL_EXCEPTION,'gmo.plsql.gmo_vbatch_grp.on_task_action', FALSE);
253 end if;
254 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
255 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
256 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
257 if (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
258 FND_LOG.MESSAGE(FND_LOG.LEVEL_UNEXPECTED,'gmo.plsql.gmo_vbatch_grp.on_task_action', FALSE);
259 end if;
260 WHEN OTHERS THEN
261 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
262 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
263 FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME, l_api_name);
264 END IF;
265 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
266 if (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
267 FND_LOG.MESSAGE(FND_LOG.LEVEL_UNEXPECTED,'gmo.plsql.gmo_vbatch_grp.on_task_action', FALSE);
268 end if;
269
270 END ON_TASK_ACTION;
271
272
273 --This procdeure would process the save event of the task.
274
275 procedure ON_TASK_SAVE (P_API_VERSION IN NUMBER,
276 P_INIT_MSG_LIST IN VARCHAR2 DEFAULT FND_API.G_FALSE,
277 P_COMMIT IN VARCHAR2 DEFAULT FND_API.G_FALSE,
278 P_VALIDATION_LEVEL IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
279 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
280 X_MSG_COUNT OUT NOCOPY NUMBER,
281 X_MSG_DATA OUT NOCOPY VARCHAR2,
282 P_FROM_MODULE IN VARCHAR2,
283 P_ENTITY_NAME IN VARCHAR2,
284 P_ENTITY_KEY IN VARCHAR2,
285 P_TASK IN VARCHAR2,
286 P_TASK_ATTRIBUTE IN VARCHAR2 DEFAULT NULL,
287 P_INSTRUCTION_ID IN NUMBER DEFAULT NULL,
288 P_INSTRUCTION_PROCESS_ID IN NUMBER DEFAULT NULL,
289 P_TASK_IDENTIFIER IN GMO_DATATYPES_GRP.GMO_TABLE_OF_VARCHAR2_255,
290 P_TASK_VALUE IN GMO_DATATYPES_GRP.GMO_TABLE_OF_VARCHAR2_255,
291 P_TASK_ERECORD IN GMO_DATATYPES_GRP.GMO_TABLE_OF_VARCHAR2_255,
292 P_REQUESTER IN NUMBER)
293 IS
294
295 l_api_name CONSTANT VARCHAR2(30) := 'ON_TASK_SAVE';
296 l_api_version CONSTANT NUMBER := 1.0;
297 l_task_identifier fnd_table_of_varchar2_255;
298 l_task_value fnd_table_of_varchar2_255;
299 l_task_erecord fnd_table_of_varchar2_255;
300
301 BEGIN
302 -- Standard call to check for call compatibility.
303 IF NOT FND_API.Compatible_API_Call (l_api_version, p_api_version,l_api_name,G_PKG_NAME) THEN
304 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
305 END IF;
306
307 -- Initialize message list if p_init_msg_list is set to TRUE.
308 IF FND_API.to_Boolean( p_init_msg_list ) THEN
309 FND_MSG_PUB.initialize;
310 END IF;
311 -- Initialize API return status to success
312 x_return_status := FND_API.G_RET_STS_SUCCESS;
313
314 l_task_identifier := FND_TABLE_OF_VARCHAR2_255();
315 l_task_value := FND_TABLE_OF_VARCHAR2_255();
316 l_task_erecord := FND_TABLE_OF_VARCHAR2_255();
317
318 for j in 1..P_TASK_IDENTIFIER.count loop
319 l_task_identifier.extend;
320 l_task_identifier(j) := P_TASK_IDENTIFIER(j);
321 end loop;
322
323 for k in 1..P_TASK_VALUE.count loop
324 l_task_value.extend;
325 l_task_value(k) := P_TASK_VALUE(k);
326 end loop;
327
328 for l in 1..P_TASK_ERECORD.count loop
329 l_task_erecord.extend;
330 l_task_erecord(l) := P_TASK_ERECORD(l);
331 end loop;
332
333 GMO_VBATCH_PVT.ON_TASK_SAVE
334 (
335 P_FROM_MODULE => P_FROM_MODULE ,
336 P_ENTITY_NAME => P_ENTITY_NAME,
337 P_ENTITY_KEY => P_ENTITY_KEY,
338 P_TASK => P_TASK,
339 P_TASK_ATTRIBUTE => P_TASK_ATTRIBUTE,
340 P_INSTRUCTION_ID => P_INSTRUCTION_ID,
341 P_INSTRUCTION_PROCESS_ID => P_INSTRUCTION_PROCESS_ID,
342 P_TASK_IDENTIFIER => l_task_identifier,
343 P_TASK_VALUE => l_task_value,
344 P_TASK_ERECORD => l_task_erecord,
345 P_REQUESTER => P_REQUESTER,
346 X_RETURN_STATUS => X_RETURN_STATUS,
347 X_MSG_COUNT => X_MSG_COUNT,
348 X_MSG_DATA => X_MSG_DATA
349 );
350
351 IF (x_return_status = FND_API.G_RET_STS_SUCCESS) THEN
352 IF FND_API.To_Boolean( p_commit ) THEN
353 COMMIT ;
354 END IF;
355 ELSE
356 RAISE FND_API.G_EXC_ERROR;
357 END IF;
358
359
360 -- Standard call to get message count and if count is 1, get message info.
361 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
362
363 EXCEPTION
364 WHEN FND_API.G_EXC_ERROR THEN
365 x_return_status := FND_API.G_RET_STS_ERROR;
366 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
367 if (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
368 FND_LOG.MESSAGE(FND_LOG.LEVEL_EXCEPTION,'gmo.plsql.gmo_vbatch_grp.on_task_save', FALSE);
369 end if;
370 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
371 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
372 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
373 if (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
374 FND_LOG.MESSAGE(FND_LOG.LEVEL_UNEXPECTED,'gmo.plsql.gmo_vbatch_grp.on_task_save', FALSE);
375 end if;
376 WHEN OTHERS THEN
377 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
378 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
379 FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME, l_api_name);
380 END IF;
381 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
382 if (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
383 FND_LOG.MESSAGE(FND_LOG.LEVEL_UNEXPECTED,'gmo.plsql.gmo_vbatch_grp.on_task_save', FALSE);
384 end if;
385
386 END ON_TASK_SAVE;
387
388
389 --This procdeure would check if the step is locked or not
390
391 procedure GET_ENTITY_LOCK_STATUS (P_API_VERSION IN NUMBER,
392 P_INIT_MSG_LIST IN VARCHAR2 DEFAULT FND_API.G_FALSE,
393 P_COMMIT IN VARCHAR2 DEFAULT FND_API.G_FALSE,
394 P_VALIDATION_LEVEL IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
395 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
396 X_MSG_COUNT OUT NOCOPY NUMBER,
397 X_MSG_DATA OUT NOCOPY VARCHAR2,
398 P_ENTITY_NAME IN VARCHAR2,
399 P_ENTITY_KEY IN VARCHAR2,
400 P_REQUESTER IN NUMBER,
401 X_LOCK_STATUS OUT NOCOPY VARCHAR2,
402 X_LOCKED_BY_STATUS OUT NOCOPY VARCHAR2,
403 X_LOCK_ALLOWED OUT NOCOPY VARCHAR2)
404
405 IS
406
407 l_api_name CONSTANT VARCHAR2(30) := 'GET_ENTITY_LOCK_STATUS';
408 l_api_version CONSTANT NUMBER := 1.0;
409
410 BEGIN
411 -- Standard call to check for call compatibility.
412 IF NOT FND_API.Compatible_API_Call (l_api_version, p_api_version,l_api_name,G_PKG_NAME) THEN
413 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
414 END IF;
415
416 -- Initialize message list if p_init_msg_list is set to TRUE.
417 IF FND_API.to_Boolean( p_init_msg_list ) THEN
418 FND_MSG_PUB.initialize;
419 END IF;
420 -- Initialize API return status to success
421 x_return_status := FND_API.G_RET_STS_SUCCESS;
422
423 GMO_VBATCH_PVT.GET_ENTITY_LOCK_STATUS
424 (
425 P_ENTITY_NAME => P_ENTITY_NAME,
426 P_ENTITY_KEY => P_ENTITY_KEY,
427 P_REQUESTER => P_REQUESTER,
428 X_LOCK_STATUS => X_LOCK_STATUS,
429 X_LOCKED_BY_STATUS => X_LOCKED_BY_STATUS,
430 X_LOCK_ALLOWED => X_LOCK_ALLOWED,
431 X_RETURN_STATUS => X_RETURN_STATUS,
432 X_MSG_COUNT => X_MSG_COUNT,
433 X_MSG_DATA => X_MSG_DATA
434 );
435
436 IF (x_return_status = FND_API.G_RET_STS_SUCCESS) THEN
437 IF FND_API.To_Boolean( p_commit ) THEN
438 COMMIT ;
439 END IF;
440 ELSE
441 RAISE FND_API.G_EXC_ERROR;
442 END IF;
443
444 -- Standard call to get message count and if count is 1, get message info.
445 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
446
447 EXCEPTION
448 WHEN FND_API.G_EXC_ERROR THEN
449 x_return_status := FND_API.G_RET_STS_ERROR;
450 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
451 if (FND_LOG.LEVEL_EXCEPTION >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
452 FND_LOG.MESSAGE(FND_LOG.LEVEL_EXCEPTION,'gmo.plsql.gmo_vbatch_grp.get_entity_lock_status', FALSE);
453 end if;
454 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
455 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
456 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
457 if (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
458 FND_LOG.MESSAGE(FND_LOG.LEVEL_UNEXPECTED,'gmo.plsql.gmo_vbatch_grp.get_entity_lock_status', FALSE);
459 end if;
460 WHEN OTHERS THEN
461 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
462 IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
463 FND_MSG_PUB.Add_Exc_Msg (G_PKG_NAME, l_api_name);
464 END IF;
465 FND_MSG_PUB.Count_And_Get (p_count => x_msg_count, p_data => x_msg_data);
466 if (FND_LOG.LEVEL_UNEXPECTED >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
467 FND_LOG.MESSAGE(FND_LOG.LEVEL_UNEXPECTED,'gmo.plsql.gmo_vbatch_grp.get_entity_lock_status', FALSE);
468 end if;
469
470 END GET_ENTITY_LOCK_STATUS;
471
472
473
474 --This procdeure loads the operator workbench for the entity. It has been defined in the GMOGOWB.pll
475 /*
476 procedure LOAD_VBATCH
477 */
478
479 END GMO_VBATCH_GRP;