[Home] [Help]
PACKAGE BODY: APPS.CSD_REPAIRS_PUB
Source
4 * This is the public interface for the Depot Repair API. It allows
1 PACKAGE BODY CSD_REPAIRS_PUB as
2 /* $Header: csdpdrab.pls 120.15 2011/12/02 06:46:56 vicli ship $ */
3 /*#
5 * execution of various Depot Repair APIs.
6 * @rep:scope public
7 * @rep:product CSD
8 * @rep:displayname Depot Repair APIs
9 * @rep:lifecycle active
10 * @rep:category BUSINESS_ENTITY CSD_REPAIR_ORDER
11 */
12 --
13 -- Package name : CSD_REPAIRS_PUB
14 -- Purpose : This package contains the public APIs for creating
15 -- and updating repair orders.
16 -- History :
17 -- Version Date Name Description
18 -- 115.0 11/17/99 pkdas Created.
19 -- 115.1 12/18/99 pkdas
20 -- 115.2 01/04/00 pkdas
21 -- 115.3 02/09/00 pkdas Added p_REPAIR_LINE_ID as IN parameter in the
22 -- Create_Repairs procedure.
23 -- Added p_REPAIR_NUMBER as OUT parameter in the
27 -- Update_Repairs -> Update_Repair_Order
24 -- Create_Repairs procedure.
25 -- 115.4 02/29/00 pkdas Changed the procedure name
26 -- Create_Repairs -> Create_Repair_Order
28 -- Added p_validation_level to Create_Repair_Order and
29 -- Update_Repair_Order
30 --
31 -- NOTE :
32 --
33 G_PKG_NAME CONSTANT VARCHAR2(30) := 'CSD_REPAIRS_PUB';
34 G_FILE_NAME CONSTANT VARCHAR2(12) := 'csdpdrab.pls';
35 g_debug NUMBER := csd_gen_utility_pvt.g_debug_level;
36 --
37 /*#
38 * Create Repair Order
39 * @param P_Api_Version_Number api version number
40 * @param P_Init_Msg_List initial the message stack, default to false
41 * @param P_Commit to decide whether to commit the transaction or not, default to false
42 * @param p_validation_level validation level, default to full level
43 * @param p_repair_line_id repair line id is unique id
44 * @param P_REPLN_Rec repiar line record
45 * @param p_create_default_logistics flag to create logistics lines, default to N
46 * @param X_REPAIR_LINE_ID repair line id of the created repair order
47 * @param X_REPAIR_NUMBER repair number of the created repair order which display on Depot UI
48 * @param X_Return_Status return status
49 * @param X_Msg_Count return message count
50 * @param X_Msg_Data return message data
51 * @rep:scope public
52 * @rep:lifecycle active
53 * @rep:displayname Create Repair Order
54 */
55 PROCEDURE Create_Repair_Order(P_Api_Version_Number IN NUMBER,
56 P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
57 P_Commit IN VARCHAR2 := FND_API.G_FALSE,
58 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
59 P_REPAIR_LINE_ID IN NUMBER := FND_API.G_MISS_NUM,
60 P_REPLN_Rec IN CSD_REPAIRS_PUB.REPLN_Rec_Type,
61 p_create_default_logistics IN VARCHAR2 := 'N',
62 X_REPAIR_LINE_ID OUT NOCOPY NUMBER,
63 X_REPAIR_NUMBER OUT NOCOPY VARCHAR2,
64 X_Return_Status OUT NOCOPY VARCHAR2,
65 X_Msg_Count OUT NOCOPY NUMBER,
66 X_Msg_Data OUT NOCOPY VARCHAR2) IS
67 --
68 l_api_name CONSTANT VARCHAR2(30) := 'Create_Repair_Order';
69 l_api_version_number CONSTANT NUMBER := 1.0;
70 --
71
72 -- swai: 12.1.1 bug 7176940 service bulletin check
73 l_ro_sc_ids_tbl CSD_RO_BULLETINS_PVT.CSD_RO_SC_IDS_TBL_TYPE;
74 l_return_status VARCHAR2 (1) ;
75 l_msg_count NUMBER;
76 l_msg_data VARCHAR2 (2000);
77 BEGIN
78 --
79 -- Standard Start of API savepoint
80 SAVEPOINT CREATE_REPAIR_ORDER_PUB;
81 -- Standard call to check for call compatibility.
82 IF NOT FND_API.Compatible_API_Call(l_api_version_number,
83 p_api_version_number,
84 l_api_name,
85 G_PKG_NAME)
86 THEN
87 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
88 END IF;
89 -- Initialize message list if p_init_msg_list is set to TRUE.
90 IF FND_API.to_Boolean(p_init_msg_list)
91 THEN
92 FND_MSG_PUB.initialize;
93 END IF;
94 -- Initialize API return status to success
95 x_return_status := FND_API.G_RET_STS_SUCCESS;
96 --
97 -- API body
98 --
99 CSD_REPAIRS_PVT.Create_Repair_Order(P_Api_Version_Number => 1.0,
100 P_Init_Msg_List => p_init_msg_list,
101 P_Commit => p_commit,
102 P_Validation_Level => p_validation_level,
103 P_REPAIR_LINE_ID => p_REPAIR_LINE_ID,
104 P_REPLN_Rec => p_REPLN_Rec,
105 X_REPAIR_LINE_ID => x_REPAIR_LINE_ID,
106 X_REPAIR_NUMBER => x_REPAIR_NUMBER,
107 X_Return_Status => x_return_status,
108 X_Msg_Count => x_msg_count,
109 X_Msg_Data => x_msg_data);
110 --
111 -- Check return status from the above procedure call
112 IF not (x_return_status = FND_API.G_RET_STS_SUCCESS)
113 then
114 ROLLBACK TO CREATE_REPAIR_ORDER_PUB;
115 return;
116 END IF;
117
118 IF (P_CREATE_DEFAULT_LOGISTICS = 'Y') THEN
119
120 CSD_LOGISTICS_PVT.Create_Default_Logistics
121 ( p_api_version => P_Api_Version_Number,
122 p_commit => P_Commit,
123 p_init_msg_list => P_Init_Msg_List,
124 p_validation_level => p_validation_level,
125 p_repair_line_id => X_REPAIR_LINE_ID, -- swai: bug 7654143
126 x_return_status => X_Return_Status,
127 x_msg_count => X_Msg_Count,
131 IF NOT(x_return_status = FND_API.G_RET_STS_SUCCESS) THEN
128 x_msg_data => X_Msg_Data
129 );
130
132 RAISE FND_API.G_EXC_ERROR;
133 END IF;
134
135 END IF;
136
137 -- swai: 12.1.1 bug 7176940 - check service bulletins after RO creation
138 IF (nvl(fnd_profile.value('CSD_AUTO_CHECK_BULLETINS'),'N') = 'Y') THEN
139 CSD_RO_BULLETINS_PVT.LINK_BULLETINS_TO_RO(
140 p_api_version_number => 1.0,
141 p_init_msg_list => Fnd_Api.G_FALSE,
142 p_commit => Fnd_Api.G_FALSE,
143 p_validation_level => Fnd_Api.G_VALID_LEVEL_FULL,
144 p_repair_line_id => x_repair_line_id,
145 px_ro_sc_ids_tbl => l_ro_sc_ids_tbl,
146 x_return_status => l_return_status,
147 x_msg_count => l_msg_count,
148 x_msg_data => l_msg_data
149 );
150 -- ignore return status for now.
151 END IF;
152
153 --
154 -- End of API body.
155 --
156 -- Standard check for p_commit
157 IF FND_API.to_Boolean(p_commit)
158 THEN
159 COMMIT WORK;
160 END IF;
161 -- Standard call to get message count and if count is 1, get message info.
162 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count,
163 p_data => x_msg_data);
164 --
165 EXCEPTION
166 WHEN FND_API.G_EXC_ERROR THEN
167 JTF_PLSQL_API.HANDLE_EXCEPTIONS(P_API_NAME => L_API_NAME,
168 P_PKG_NAME => G_PKG_NAME,
169 P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR,
170 P_PACKAGE_TYPE => JTF_PLSQL_API.G_PUB,
171 X_MSG_COUNT => X_MSG_COUNT,
172 X_MSG_DATA => X_MSG_DATA,
173 X_RETURN_STATUS => X_RETURN_STATUS);
174 -- RAISE;
175 --
176 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
177 JTF_PLSQL_API.HANDLE_EXCEPTIONS(P_API_NAME => L_API_NAME,
178 P_PKG_NAME => G_PKG_NAME,
179 P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR,
180 P_PACKAGE_TYPE => JTF_PLSQL_API.G_PUB,
181 X_MSG_COUNT => X_MSG_COUNT,
182 X_MSG_DATA => X_MSG_DATA,
183 X_RETURN_STATUS => X_RETURN_STATUS);
184 -- RAISE;
185 --
186 WHEN OTHERS THEN
187 JTF_PLSQL_API.HANDLE_EXCEPTIONS(P_API_NAME => L_API_NAME,
188 P_PKG_NAME => G_PKG_NAME,
189 P_EXCEPTION_LEVEL => JTF_PLSQL_API.G_EXC_OTHERS,
190 P_PACKAGE_TYPE => JTF_PLSQL_API.G_PUB,
191 X_MSG_COUNT => X_MSG_COUNT,
192 X_MSG_DATA => X_MSG_DATA,
193 X_RETURN_STATUS => X_RETURN_STATUS);
194 -- RAISE;
195 --
196 End Create_Repair_Order;
197
198 PROCEDURE Update_Repair_Order(P_Api_Version_Number IN NUMBER,
199 P_Init_Msg_List IN VARCHAR2 := FND_API.G_FALSE,
200 P_Commit IN VARCHAR2 := FND_API.G_FALSE,
201 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
202 p_REPAIR_LINE_ID IN NUMBER,
203 P_REPLN_Rec IN OUT NOCOPY CSD_REPAIRS_PUB.REPLN_Rec_Type,
204 X_Return_Status OUT NOCOPY VARCHAR2,
205 X_Msg_Count OUT NOCOPY NUMBER,
206 X_Msg_Data OUT NOCOPY VARCHAR2) IS
207 --
208 l_api_name CONSTANT VARCHAR2(30) := 'Update_Repair_Order';
209 l_api_version_number CONSTANT NUMBER := 1.0;
210 --
211 BEGIN
212 --
213 -- Standard Start of API savepoint
214 SAVEPOINT UPDATE_REPAIR_ORDER_PUB;
215 -- Standard call to check for call compatibility.
216 IF NOT FND_API.Compatible_API_Call(l_api_version_number,
217 p_api_version_number,
218 l_api_name,
219 G_PKG_NAME)
220 THEN
221 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
222 END IF;
223 -- Initialize message list if p_init_msg_list is set to TRUE.
224 IF FND_API.to_Boolean(p_init_msg_list)
225 THEN
226 FND_MSG_PUB.initialize;
227 END IF;
228 -- Initialize API return status to SUCCESS
229 x_return_status := FND_API.G_RET_STS_SUCCESS;
230 --
231 -- API body
232 --
233 CSD_repairs_PVT.Update_Repair_Order(P_Api_Version_Number => 1.0,
234 P_Init_Msg_List => p_init_msg_list,
235 P_Commit => p_commit,
239 X_Return_Status => x_return_status,
236 P_Validation_Level => p_validation_level,
237 p_REPAIR_LINE_ID => p_repair_line_id,
238 P_REPLN_Rec => p_REPLN_Rec,
240 X_Msg_Count => x_msg_count,
241 X_Msg_Data => x_msg_data);
242 --
243 -- Check return status from the above procedure call
244 IF not (x_return_status = FND_API.G_RET_STS_SUCCESS)
245 then
246 ROLLBACK TO UPDATE_REPAIR_ORDER_PUB;
247 return;
248 END IF;
249 --
250 -- End of API body.
251 --
252 -- Standard check for p_commit
253 IF FND_API.to_Boolean(p_commit)
254 THEN
255 COMMIT WORK;
256 END IF;
257 -- Standard call to get message count and if count is 1, get message info.
258 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count,
259 p_data => x_msg_data);
260 --
261 EXCEPTION
262 WHEN FND_API.G_EXC_ERROR THEN
263 JTF_PLSQL_API.HANDLE_EXCEPTIONS(P_API_NAME => L_API_NAME,
264 P_PKG_NAME => G_PKG_NAME,
265 P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR,
266 P_PACKAGE_TYPE => JTF_PLSQL_API.G_PUB,
267 X_MSG_COUNT => X_MSG_COUNT,
268 X_MSG_DATA => X_MSG_DATA,
269 X_RETURN_STATUS => X_RETURN_STATUS);
270 -- RAISE;
271 --
272 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
273 JTF_PLSQL_API.HANDLE_EXCEPTIONS(P_API_NAME => L_API_NAME,
274 P_PKG_NAME => G_PKG_NAME,
275 P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR,
276 P_PACKAGE_TYPE => JTF_PLSQL_API.G_PUB,
277 X_MSG_COUNT => X_MSG_COUNT,
278 X_MSG_DATA => X_MSG_DATA,
279 X_RETURN_STATUS => X_RETURN_STATUS);
280 -- RAISE;
281 --
282 WHEN OTHERS THEN
283 JTF_PLSQL_API.HANDLE_EXCEPTIONS(P_API_NAME => L_API_NAME,
284 P_PKG_NAME => G_PKG_NAME,
285 P_EXCEPTION_LEVEL => JTF_PLSQL_API.G_EXC_OTHERS,
286 P_PACKAGE_TYPE => JTF_PLSQL_API.G_PUB,
287 X_MSG_COUNT => X_MSG_COUNT,
288 X_MSG_DATA => X_MSG_DATA,
289 X_RETURN_STATUS => X_RETURN_STATUS);
290 -- RAISE;
291 End Update_Repair_Order;
292
293 -- bug#12884352
294 PROCEDURE Update_Repair_Type (
295 p_api_version IN NUMBER,
296 p_commit IN VARCHAR2 := fnd_api.g_false,
297 p_init_msg_list IN VARCHAR2 := fnd_api.g_false,
298 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
299 x_return_status OUT NOCOPY VARCHAR2,
300 x_msg_count OUT NOCOPY NUMBER,
301 x_msg_data OUT NOCOPY VARCHAR2,
302 p_repair_type_rec IN CSD_REPAIRS_PUB.Repair_Type_Rec_Type,
303 x_object_version_number OUT NOCOPY NUMBER
304 ) IS
305
306 --
307 l_api_name CONSTANT VARCHAR2(30) := 'Update_Repair_Type';
308 l_api_version_number CONSTANT NUMBER := 1.0;
309 --
310 BEGIN
311 --
312 -- Standard Start of API savepoint
313 SAVEPOINT UPDATE_REPAIR_TYPE_PUB;
314 -- Standard call to check for call compatibility.
315 IF NOT FND_API.Compatible_API_Call(l_api_version_number,
316 p_api_version,
317 l_api_name,
318 G_PKG_NAME)
319 THEN
320 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
321 END IF;
322 -- Initialize message list if p_init_msg_list is set to TRUE.
323 IF FND_API.to_Boolean(p_init_msg_list)
324 THEN
325 FND_MSG_PUB.initialize;
326 END IF;
327 -- Initialize API return status to success
328 x_return_status := FND_API.G_RET_STS_SUCCESS;
329 --
330 -- API body
331 --
332 CSD_REPAIRS_PVT.UPDATE_REPAIR_TYPE(P_Api_Version => p_api_version,
333 p_commit => CSD_PROCESS_UTIL.g_false,
334 p_init_msg_list => CSD_PROCESS_UTIL.g_false,
335 p_validation_level => p_validation_level,
336 x_return_status => x_return_status,
337 x_msg_count => x_msg_count,
338 x_msg_data => x_msg_data,
339 p_repair_line_id => p_repair_type_rec.repair_line_id,
340 p_from_repair_type_id => p_repair_type_rec.from_repair_type_id,
341 p_to_repair_type_id => p_repair_type_rec.to_repair_type_id,
345 x_object_version_number => x_object_version_number
342 p_common_flow_status_id => p_repair_type_rec.common_flow_status_id,
343 p_reason_code => p_repair_type_rec.reason_code,
344 p_object_version_number => p_repair_type_rec.object_version_number,
346 );
347
348 --
349 -- Check return status from the above procedure call
350 IF not (x_return_status = FND_API.G_RET_STS_SUCCESS)
351 then
352 ROLLBACK TO UPDATE_REPAIR_TYPE_PUB;
353 return;
354 END IF;
355 --
356 -- End of API body.
357 --
358 -- Standard check for p_commit
359 IF FND_API.to_Boolean(p_commit)
360 THEN
361 COMMIT WORK;
362 END IF;
363 -- Standard call to get message count and if count is 1, get message info.
364 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count,
365 p_data => x_msg_data);
366 --
367 EXCEPTION
368 WHEN Fnd_Api.G_EXC_ERROR THEN
369 x_return_status := Fnd_Api.G_RET_STS_ERROR;
370 ROLLBACK TO UPDATE_REPAIR_TYPE_PUB;
371 Fnd_Msg_Pub.Count_And_Get(p_count => x_msg_count,
372 p_data => x_msg_data);
373 IF (Fnd_Log.level_error >= Fnd_Log.g_current_runtime_level)
374 THEN
375 Fnd_Log.STRING(Fnd_Log.level_error,
376 'csd.plsql.CSD_REPAIRS_PUB.Update_Repair_Type',
377 'EXC_ERROR[' || x_msg_data || ']');
378 END IF;
379
380 WHEN Fnd_Api.G_EXC_UNEXPECTED_ERROR THEN
381 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
382 ROLLBACK TO UPDATE_REPAIR_TYPE_PUB;
383 Fnd_Msg_Pub.Count_And_Get(p_count => x_msg_count,
384 p_data => x_msg_data);
385 IF (Fnd_Log.level_exception >= Fnd_Log.g_current_runtime_level)
386 THEN
387 Fnd_Log.STRING(Fnd_Log.level_exception,
388 'csd.plsql.CSD_REPAIRS_PUB.Update_Repair_Type',
389 'EXC_UNEXP_ERROR[' || x_msg_data || ']');
390 END IF;
391 WHEN OTHERS THEN
392 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
393 Rollback TO UPDATE_REPAIR_TYPE_PUB;
394 IF Fnd_Msg_Pub.Check_Msg_Level(Fnd_Msg_Pub.G_MSG_LVL_UNEXP_ERROR)
395 THEN
396 Fnd_Msg_Pub.Add_Exc_Msg(G_PKG_NAME, l_api_name);
397 END IF;
398 Fnd_Msg_Pub.Count_And_Get(p_count => x_msg_count,
399 p_data => x_msg_data);
400 IF (Fnd_Log.level_exception >= Fnd_Log.g_current_runtime_level)
401 THEN
402 Fnd_Log.STRING(Fnd_Log.level_exception,
403 'csd.plsql.CSD_REPAIRS_PUB.Update_Repair_Type',
404 'SQL MEssage[' || SQLERRM || ']');
405 END IF;
406
407 End Update_Repair_Type;
408
409 --
410 -- R12 Development Begin
411 /*#
412 * Update Repair Order Status
413 * @param P_Api_Version api version number
414 * @param P_Commit to decide whether to commit the transaction or not, default to false
415 * @param P_Init_Msg_List initial the message stack, default to false
416 * @param X_Return_Status return status
417 * @param X_Msg_Count return message count
418 * @param X_Msg_Data return message data
419 * @param P_Repair_status_rec repair status attributes record.
420 * @param P_status_upd_control_rec repair status record control flags.
421 * @param X_OBJECT_VERSION_NUMBER
422 * @rep:scope public
423 * @rep:lifecycle active
424 * @rep:displayname Update Repair Order Status
425 */
426 PROCEDURE Update_Ro_Status(P_Api_Version IN NUMBER,
427 P_Commit IN VARCHAR2,
428 P_Init_Msg_List IN VARCHAR2,
429 X_Return_Status OUT NOCOPY VARCHAR2,
430 X_Msg_Count OUT NOCOPY NUMBER,
431 X_Msg_Data OUT NOCOPY VARCHAR2,
432 P_REPAIR_STATUS_Rec IN REPAIR_STATUS_REC_TYPE,
433 P_STATUS_UPD_CONTROL_REC IN STATUS_UPD_CONTROL_REC_TYPE,
434 X_OBJECT_VERSION_NUMBER OUT NOCOPY NUMBER) IS
435 --
436 l_api_name CONSTANT VARCHAR2(30) := 'Update_Ro_Status';
437 l_api_version_number CONSTANT NUMBER := 1.0;
438 --
439 BEGIN
440 --
441 -- Standard Start of API savepoint
442 SAVEPOINT UPDATE_RO_STATUS_PUB;
443 -- Standard call to check for call compatibility.
444 IF NOT FND_API.Compatible_API_Call(l_api_version_number,
445 p_api_version,
446 l_api_name,
447 G_PKG_NAME)
448 THEN
449 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
450 END IF;
451 -- Initialize message list if p_init_msg_list is set to TRUE.
452 IF FND_API.to_Boolean(p_init_msg_list)
453 THEN
454 FND_MSG_PUB.initialize;
455 END IF;
456 -- Initialize API return status to success
457 x_return_status := FND_API.G_RET_STS_SUCCESS;
458 --
459 -- API body
460 --
464 P_Validation_Level => FND_API.G_VALID_LEVEL_FULL,
461 CSD_REPAIRS_PVT.UPDATE_RO_STATUS(P_Api_Version => p_api_version,
462 P_Commit => p_commit,
463 P_Init_Msg_List => p_init_msg_list,
465 X_Return_Status => x_return_status,
466 X_Msg_Count => x_msg_count,
467 X_Msg_Data => x_msg_data,
468 P_REPAIR_STATUS_REC => p_repair_status_rec,
469 P_STATUS_CONTROL_REC => p_status_upd_control_rec,
470 X_OBJECT_VERSION_NUMBER => x_object_Version_number);
471 --
472 -- Check return status from the above procedure call
473 IF not (x_return_status = FND_API.G_RET_STS_SUCCESS)
474 then
475 ROLLBACK TO UPDATE_RO_STATUS_PUB;
476 return;
477 END IF;
478 --
479 -- End of API body.
480 --
481 -- Standard check for p_commit
482 IF FND_API.to_Boolean(p_commit)
483 THEN
484 COMMIT WORK;
485 END IF;
486 -- Standard call to get message count and if count is 1, get message info.
487 FND_MSG_PUB.Count_And_Get(p_count => x_msg_count,
488 p_data => x_msg_data);
489 --
490 EXCEPTION
491 WHEN Fnd_Api.G_EXC_ERROR THEN
492 x_return_status := Fnd_Api.G_RET_STS_ERROR;
493 ROLLBACK TO UPDATE_RO_STATUS_PUB;
494 Fnd_Msg_Pub.Count_And_Get(p_count => x_msg_count,
495 p_data => x_msg_data);
496 IF (Fnd_Log.level_error >= Fnd_Log.g_current_runtime_level)
497 THEN
498 Fnd_Log.STRING(Fnd_Log.level_error,
499 'csd.plsql.CSD_REPAIRS_PUB.Update_ro_status',
500 'EXC_ERROR[' || x_msg_data || ']');
501 END IF;
502
503 WHEN Fnd_Api.G_EXC_UNEXPECTED_ERROR THEN
504 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
505 ROLLBACK TO UPDATE_RO_STATUS_PUB;
506 Fnd_Msg_Pub.Count_And_Get(p_count => x_msg_count,
507 p_data => x_msg_data);
508 IF (Fnd_Log.level_exception >= Fnd_Log.g_current_runtime_level)
509 THEN
510 Fnd_Log.STRING(Fnd_Log.level_exception,
511 'csd.plsql.CSD_REPAIRS_PUB.Update_ro_status',
512 'EXC_UNEXP_ERROR[' || x_msg_data || ']');
513 END IF;
514 WHEN OTHERS THEN
515 x_return_status := Fnd_Api.G_RET_STS_UNEXP_ERROR;
516 Rollback TO UPDATE_RO_STATUS_PUB;
517 IF Fnd_Msg_Pub.Check_Msg_Level(Fnd_Msg_Pub.G_MSG_LVL_UNEXP_ERROR)
518 THEN
519 Fnd_Msg_Pub.Add_Exc_Msg(G_PKG_NAME, l_api_name);
520 END IF;
521 Fnd_Msg_Pub.Count_And_Get(p_count => x_msg_count,
522 p_data => x_msg_data);
523 IF (Fnd_Log.level_exception >= Fnd_Log.g_current_runtime_level)
524 THEN
525 Fnd_Log.STRING(Fnd_Log.level_exception,
526 'csd.plsql.CSD_REPAIRS_PUB.Update_ro_status',
527 'SQL MEssage[' || SQLERRM || ']');
528 END IF;
529
530 End Update_ro_status;
531 -- R12 Development End
532 End CSD_REPAIRS_PUB;