26: l_asset_count_rec csi_asset_pvt.asset_count_rec;
27: l_asset_id_tbl csi_asset_pvt.asset_id_tbl;
28: l_asset_loc_tbl csi_asset_pvt.asset_loc_tbl;
29:
30: l_return_status varchar2(1) := fnd_api.g_ret_sts_success;
31: l_msg_count number;
32: l_msg_data varchar2(2000);
33: BEGIN
34: x_return_status := fnd_api.g_ret_sts_success;
30: l_return_status varchar2(1) := fnd_api.g_ret_sts_success;
31: l_msg_count number;
32: l_msg_data varchar2(2000);
33: BEGIN
34: x_return_status := fnd_api.g_ret_sts_success;
35:
36: px_inst_asset_rec.fa_sync_flag := 'Y';
37:
38: csi_asset_pvt.create_instance_asset(
36: px_inst_asset_rec.fa_sync_flag := 'Y';
37:
38: csi_asset_pvt.create_instance_asset(
39: p_api_version => 1.0 ,
40: p_commit => fnd_api.g_false,
41: p_init_msg_list => fnd_api.g_true,
42: p_validation_level => fnd_api.g_valid_level_full,
43: p_instance_asset_rec => px_inst_asset_rec,
44: p_txn_rec => px_csi_txn_rec,
37:
38: csi_asset_pvt.create_instance_asset(
39: p_api_version => 1.0 ,
40: p_commit => fnd_api.g_false,
41: p_init_msg_list => fnd_api.g_true,
42: p_validation_level => fnd_api.g_valid_level_full,
43: p_instance_asset_rec => px_inst_asset_rec,
44: p_txn_rec => px_csi_txn_rec,
45: x_return_status => l_return_status,
38: csi_asset_pvt.create_instance_asset(
39: p_api_version => 1.0 ,
40: p_commit => fnd_api.g_false,
41: p_init_msg_list => fnd_api.g_true,
42: p_validation_level => fnd_api.g_valid_level_full,
43: p_instance_asset_rec => px_inst_asset_rec,
44: p_txn_rec => px_csi_txn_rec,
45: x_return_status => l_return_status,
46: x_msg_count => l_msg_count,
49: p_asset_count_rec => l_asset_count_rec,
50: p_asset_id_tbl => l_asset_id_tbl,
51: p_asset_loc_tbl => l_asset_loc_tbl);
52:
53: IF l_return_status <> fnd_api.g_ret_sts_success THEN
54: RAISE fnd_api.g_exc_error;
55: END IF;
56:
57: EXCEPTION
50: p_asset_id_tbl => l_asset_id_tbl,
51: p_asset_loc_tbl => l_asset_loc_tbl);
52:
53: IF l_return_status <> fnd_api.g_ret_sts_success THEN
54: RAISE fnd_api.g_exc_error;
55: END IF;
56:
57: EXCEPTION
58: WHEN fnd_api.g_exc_error THEN
54: RAISE fnd_api.g_exc_error;
55: END IF;
56:
57: EXCEPTION
58: WHEN fnd_api.g_exc_error THEN
59: x_return_status := fnd_api.g_ret_sts_error;
60: END create_inst_asset;
61:
62: PROCEDURE update_inst_asset(
55: END IF;
56:
57: EXCEPTION
58: WHEN fnd_api.g_exc_error THEN
59: x_return_status := fnd_api.g_ret_sts_error;
60: END create_inst_asset;
61:
62: PROCEDURE update_inst_asset(
63: px_inst_asset_rec IN OUT nocopy csi_datastructures_pub.instance_asset_rec,
69: l_asset_count_rec csi_asset_pvt.asset_count_rec;
70: l_asset_id_tbl csi_asset_pvt.asset_id_tbl;
71: l_asset_loc_tbl csi_asset_pvt.asset_loc_tbl;
72:
73: l_return_status varchar2(1) := fnd_api.g_ret_sts_success;
74: l_msg_count number;
75: l_msg_data varchar2(2000);
76: BEGIN
77:
74: l_msg_count number;
75: l_msg_data varchar2(2000);
76: BEGIN
77:
78: x_return_status := fnd_api.g_ret_sts_success;
79:
80: IF nvl(px_inst_asset_rec.instance_asset_id, fnd_api.g_miss_num) <> fnd_api.g_miss_num THEN
81:
82: px_inst_asset_rec.fa_sync_flag := 'Y';
76: BEGIN
77:
78: x_return_status := fnd_api.g_ret_sts_success;
79:
80: IF nvl(px_inst_asset_rec.instance_asset_id, fnd_api.g_miss_num) <> fnd_api.g_miss_num THEN
81:
82: px_inst_asset_rec.fa_sync_flag := 'Y';
83:
84: SELECT object_version_number
87: WHERE instance_asset_id = px_inst_asset_rec.instance_asset_id;
88:
89: csi_asset_pvt.update_instance_asset (
90: p_api_version => 1.0,
91: p_commit => fnd_api.g_false,
92: p_init_msg_list => fnd_api.g_true,
93: p_validation_level => fnd_api.g_valid_level_full,
94: p_instance_asset_rec => px_inst_asset_rec,
95: p_txn_rec => px_csi_txn_rec,
88:
89: csi_asset_pvt.update_instance_asset (
90: p_api_version => 1.0,
91: p_commit => fnd_api.g_false,
92: p_init_msg_list => fnd_api.g_true,
93: p_validation_level => fnd_api.g_valid_level_full,
94: p_instance_asset_rec => px_inst_asset_rec,
95: p_txn_rec => px_csi_txn_rec,
96: x_return_status => l_return_status,
89: csi_asset_pvt.update_instance_asset (
90: p_api_version => 1.0,
91: p_commit => fnd_api.g_false,
92: p_init_msg_list => fnd_api.g_true,
93: p_validation_level => fnd_api.g_valid_level_full,
94: p_instance_asset_rec => px_inst_asset_rec,
95: p_txn_rec => px_csi_txn_rec,
96: x_return_status => l_return_status,
97: x_msg_count => l_msg_count,
100: p_asset_count_rec => l_asset_count_rec,
101: p_asset_id_tbl => l_asset_id_tbl,
102: p_asset_loc_tbl => l_asset_loc_tbl);
103:
104: IF l_return_status <> fnd_api.g_ret_sts_success THEN
105: RAISE fnd_api.g_exc_error;
106: END IF;
107:
108: END IF;
101: p_asset_id_tbl => l_asset_id_tbl,
102: p_asset_loc_tbl => l_asset_loc_tbl);
103:
104: IF l_return_status <> fnd_api.g_ret_sts_success THEN
105: RAISE fnd_api.g_exc_error;
106: END IF;
107:
108: END IF;
109:
107:
108: END IF;
109:
110: EXCEPTION
111: WHEN fnd_api.g_exc_error THEN
112: x_return_status := fnd_api.g_ret_sts_error;
113: END update_inst_asset;
114:
115:
108: END IF;
109:
110: EXCEPTION
111: WHEN fnd_api.g_exc_error THEN
112: x_return_status := fnd_api.g_ret_sts_error;
113: END update_inst_asset;
114:
115:
116: FUNCTION total_inst_asset_qty(
142:
143: l_total_inst_asset_qty number := 0;
144: l_inst_asset_rec csi_datastructures_pub.instance_asset_rec;
145:
146: l_return_status varchar2(1) := fnd_api.g_ret_sts_success;
147: l_msg_count number;
148: l_msg_data varchar2(2000);
149:
150: BEGIN
147: l_msg_count number;
148: l_msg_data varchar2(2000);
149:
150: BEGIN
151: x_return_status := fnd_api.g_ret_sts_success;
152:
153: -- check if there is any instance asset record with in_service
154: l_inst_asset_qry_rec.fa_asset_id := p_inst_asset_rec.fa_asset_id;
155: l_inst_asset_qry_rec.fa_book_type_code := p_inst_asset_rec.fa_book_type_code;
157: l_inst_asset_qry_rec.update_status := 'IN_SERVICE';
158:
159: csi_asset_pvt.get_instance_assets(
160: p_api_version => 1.0,
161: p_commit => fnd_api.g_false,
162: p_init_msg_list => fnd_api.g_true,
163: p_validation_level => fnd_api.g_valid_level_full,
164: p_instance_asset_query_rec => l_inst_asset_qry_rec,
165: p_resolve_id_columns => fnd_api.g_false,
158:
159: csi_asset_pvt.get_instance_assets(
160: p_api_version => 1.0,
161: p_commit => fnd_api.g_false,
162: p_init_msg_list => fnd_api.g_true,
163: p_validation_level => fnd_api.g_valid_level_full,
164: p_instance_asset_query_rec => l_inst_asset_qry_rec,
165: p_resolve_id_columns => fnd_api.g_false,
166: p_time_stamp => l_time_stamp,
159: csi_asset_pvt.get_instance_assets(
160: p_api_version => 1.0,
161: p_commit => fnd_api.g_false,
162: p_init_msg_list => fnd_api.g_true,
163: p_validation_level => fnd_api.g_valid_level_full,
164: p_instance_asset_query_rec => l_inst_asset_qry_rec,
165: p_resolve_id_columns => fnd_api.g_false,
166: p_time_stamp => l_time_stamp,
167: x_instance_asset_tbl => l_inst_asset_tbl,
161: p_commit => fnd_api.g_false,
162: p_init_msg_list => fnd_api.g_true,
163: p_validation_level => fnd_api.g_valid_level_full,
164: p_instance_asset_query_rec => l_inst_asset_qry_rec,
165: p_resolve_id_columns => fnd_api.g_false,
166: p_time_stamp => l_time_stamp,
167: x_instance_asset_tbl => l_inst_asset_tbl,
168: x_return_status => l_return_status,
169: x_msg_count => l_msg_count,
168: x_return_status => l_return_status,
169: x_msg_count => l_msg_count,
170: x_msg_data => l_msg_data);
171:
172: IF l_return_status <> fnd_api.g_ret_sts_success THEN
173: RAISE fnd_api.g_exc_error;
174: END IF;
175:
176: IF l_inst_asset_tbl.COUNT > 0 THEN
169: x_msg_count => l_msg_count,
170: x_msg_data => l_msg_data);
171:
172: IF l_return_status <> fnd_api.g_ret_sts_success THEN
173: RAISE fnd_api.g_exc_error;
174: END IF;
175:
176: IF l_inst_asset_tbl.COUNT > 0 THEN
177:
184: px_inst_asset_rec => l_inst_asset_rec,
185: px_csi_txn_rec => px_csi_txn_rec,
186: x_return_status => l_return_status);
187:
188: IF l_return_status <> fnd_api.g_ret_sts_success THEN
189: RAISE fnd_api.g_exc_error;
190: END IF;
191:
192: ELSE
185: px_csi_txn_rec => px_csi_txn_rec,
186: x_return_status => l_return_status);
187:
188: IF l_return_status <> fnd_api.g_ret_sts_success THEN
189: RAISE fnd_api.g_exc_error;
190: END IF;
191:
192: ELSE
193: null;
203: px_inst_asset_rec => l_inst_asset_rec,
204: px_csi_txn_rec => px_csi_txn_rec,
205: x_return_status => l_return_status);
206:
207: IF l_return_status <> fnd_api.g_ret_sts_success THEN
208: RAISE fnd_api.g_exc_error;
209: END IF;
210:
211: END IF;
204: px_csi_txn_rec => px_csi_txn_rec,
205: x_return_status => l_return_status);
206:
207: IF l_return_status <> fnd_api.g_ret_sts_success THEN
208: RAISE fnd_api.g_exc_error;
209: END IF;
210:
211: END IF;
212:
210:
211: END IF;
212:
213: EXCEPTION
214: WHEN fnd_api.g_exc_error THEN
215: x_return_status := fnd_api.g_ret_sts_error;
216: END reinstate_inst_asset;
217:
218: PROCEDURE retire_inst_asset(
211: END IF;
212:
213: EXCEPTION
214: WHEN fnd_api.g_exc_error THEN
215: x_return_status := fnd_api.g_ret_sts_error;
216: END reinstate_inst_asset;
217:
218: PROCEDURE retire_inst_asset(
219: p_inst_asset_id IN number,
221: x_return_status OUT nocopy varchar2)
222: IS
223:
224: l_inst_asset_rec csi_datastructures_pub.instance_asset_rec;
225: l_return_status varchar2(1) := fnd_api.g_ret_sts_success;
226:
227: BEGIN
228: x_return_status := fnd_api.g_ret_sts_success;
229:
224: l_inst_asset_rec csi_datastructures_pub.instance_asset_rec;
225: l_return_status varchar2(1) := fnd_api.g_ret_sts_success;
226:
227: BEGIN
228: x_return_status := fnd_api.g_ret_sts_success;
229:
230: l_inst_asset_rec.instance_asset_id := p_inst_asset_id;
231: l_inst_asset_rec.update_status := 'RETIRED';
232: l_inst_asset_rec.active_end_date := sysdate;
229:
230: l_inst_asset_rec.instance_asset_id := p_inst_asset_id;
231: l_inst_asset_rec.update_status := 'RETIRED';
232: l_inst_asset_rec.active_end_date := sysdate;
233: l_inst_asset_rec.check_for_instance_expiry := fnd_api.g_false;
234:
235: update_inst_asset(
236: px_inst_asset_rec => l_inst_asset_rec,
237: px_csi_txn_rec => px_csi_txn_rec,
236: px_inst_asset_rec => l_inst_asset_rec,
237: px_csi_txn_rec => px_csi_txn_rec,
238: x_return_status => l_return_status);
239:
240: IF l_return_status <> fnd_api.g_ret_sts_success THEN
241: RAISE fnd_api.g_exc_error;
242: END IF;
243:
244: EXCEPTION
237: px_csi_txn_rec => px_csi_txn_rec,
238: x_return_status => l_return_status);
239:
240: IF l_return_status <> fnd_api.g_ret_sts_success THEN
241: RAISE fnd_api.g_exc_error;
242: END IF;
243:
244: EXCEPTION
245: WHEN fnd_api.g_exc_error THEN
241: RAISE fnd_api.g_exc_error;
242: END IF;
243:
244: EXCEPTION
245: WHEN fnd_api.g_exc_error THEN
246: x_return_status := fnd_api.g_ret_sts_error;
247: END retire_inst_asset;
248:
249: PROCEDURE split_inst_asset(
242: END IF;
243:
244: EXCEPTION
245: WHEN fnd_api.g_exc_error THEN
246: x_return_status := fnd_api.g_ret_sts_error;
247: END retire_inst_asset;
248:
249: PROCEDURE split_inst_asset(
250: p_inst_asset_rec IN csi_datastructures_pub.instance_asset_header_rec,
259: l_asset_count_rec csi_asset_pvt.asset_count_rec;
260: l_asset_id_tbl csi_asset_pvt.asset_id_tbl;
261: l_asset_loc_tbl csi_asset_pvt.asset_loc_tbl;
262:
263: l_return_status varchar2(1) := fnd_api.g_ret_sts_success;
264: l_msg_count number;
265: l_msg_data varchar2(2000);
266: BEGIN
267:
264: l_msg_count number;
265: l_msg_data varchar2(2000);
266: BEGIN
267:
268: x_return_status := fnd_api.g_ret_sts_success;
269:
270: l_old_asset_qty := p_inst_asset_rec.asset_quantity - p_quantity;
271:
272: l_inst_asset_rec.instance_asset_id := p_inst_asset_rec.instance_asset_id;
276: px_inst_asset_rec => l_inst_asset_rec,
277: px_csi_txn_rec => px_csi_txn_rec,
278: x_return_status => l_return_status);
279:
280: IF l_return_status <> fnd_api.g_ret_sts_success THEN
281: RAISE fnd_api.g_exc_error;
282: END IF;
283:
284: l_inst_asset_rec := null;
277: px_csi_txn_rec => px_csi_txn_rec,
278: x_return_status => l_return_status);
279:
280: IF l_return_status <> fnd_api.g_ret_sts_success THEN
281: RAISE fnd_api.g_exc_error;
282: END IF;
283:
284: l_inst_asset_rec := null;
285: l_inst_asset_rec.instance_asset_id := fnd_api.g_miss_num;
281: RAISE fnd_api.g_exc_error;
282: END IF;
283:
284: l_inst_asset_rec := null;
285: l_inst_asset_rec.instance_asset_id := fnd_api.g_miss_num;
286: l_inst_asset_rec.instance_id := p_inst_asset_rec.instance_id;
287: l_inst_asset_rec.fa_asset_id := p_inst_asset_rec.fa_asset_id;
288: l_inst_asset_rec.fa_book_type_code := p_inst_asset_rec.fa_book_type_code;
289: l_inst_asset_rec.fa_location_id := p_inst_asset_rec.fa_location_id;
295: px_inst_asset_rec => l_inst_asset_rec,
296: px_csi_txn_rec => px_csi_txn_rec,
297: x_return_status => l_return_status);
298:
299: IF l_return_status <> fnd_api.g_ret_sts_success THEN
300: RAISE fnd_api.g_exc_error;
301: END IF;
302:
303: EXCEPTION
296: px_csi_txn_rec => px_csi_txn_rec,
297: x_return_status => l_return_status);
298:
299: IF l_return_status <> fnd_api.g_ret_sts_success THEN
300: RAISE fnd_api.g_exc_error;
301: END IF;
302:
303: EXCEPTION
304: WHEN fnd_api.g_exc_error THEN
300: RAISE fnd_api.g_exc_error;
301: END IF;
302:
303: EXCEPTION
304: WHEN fnd_api.g_exc_error THEN
305: x_return_status := fnd_api.g_ret_sts_error;
306: END split_inst_asset;
307:
308: PROCEDURE asset_retirement(
301: END IF;
302:
303: EXCEPTION
304: WHEN fnd_api.g_exc_error THEN
305: x_return_status := fnd_api.g_ret_sts_error;
306: END split_inst_asset;
307:
308: PROCEDURE asset_retirement(
309: p_instance_id IN NUMBER,
323:
324: l_new_inst_asset_id number;
325: l_total_inst_asset_qty number := 0;
326:
327: l_return_status varchar2(1) := fnd_api.g_ret_sts_success;
328: l_msg_count number;
329: l_msg_data varchar2(2000);
330:
331: BEGIN
329: l_msg_data varchar2(2000);
330:
331: BEGIN
332:
333: x_return_status := fnd_api.g_ret_sts_success;
334:
335: debug('inside api cse_fa_txn_pkg.asset_retirement');
336:
337: l_inst_asset_qry_rec.instance_id := p_instance_id;
340: l_inst_asset_qry_rec.update_status := 'IN_SERVICE';
341:
342: csi_asset_pvt.get_instance_assets(
343: p_api_version => 1.0,
344: p_commit => fnd_api.g_false,
345: p_init_msg_list => fnd_api.g_true,
346: p_validation_level => fnd_api.g_valid_level_full,
347: p_instance_asset_query_rec => l_inst_asset_qry_rec,
348: p_resolve_id_columns => fnd_api.g_false,
341:
342: csi_asset_pvt.get_instance_assets(
343: p_api_version => 1.0,
344: p_commit => fnd_api.g_false,
345: p_init_msg_list => fnd_api.g_true,
346: p_validation_level => fnd_api.g_valid_level_full,
347: p_instance_asset_query_rec => l_inst_asset_qry_rec,
348: p_resolve_id_columns => fnd_api.g_false,
349: p_time_stamp => l_time_stamp,
342: csi_asset_pvt.get_instance_assets(
343: p_api_version => 1.0,
344: p_commit => fnd_api.g_false,
345: p_init_msg_list => fnd_api.g_true,
346: p_validation_level => fnd_api.g_valid_level_full,
347: p_instance_asset_query_rec => l_inst_asset_qry_rec,
348: p_resolve_id_columns => fnd_api.g_false,
349: p_time_stamp => l_time_stamp,
350: x_instance_asset_tbl => l_inst_asset_tbl,
344: p_commit => fnd_api.g_false,
345: p_init_msg_list => fnd_api.g_true,
346: p_validation_level => fnd_api.g_valid_level_full,
347: p_instance_asset_query_rec => l_inst_asset_qry_rec,
348: p_resolve_id_columns => fnd_api.g_false,
349: p_time_stamp => l_time_stamp,
350: x_instance_asset_tbl => l_inst_asset_tbl,
351: x_return_status => l_return_status,
352: x_msg_count => l_msg_count,
351: x_return_status => l_return_status,
352: x_msg_count => l_msg_count,
353: x_msg_data => l_msg_data);
354:
355: IF l_return_status <> fnd_api.g_ret_sts_success THEN
356: RAISE fnd_api.g_exc_error;
357: END IF;
358:
359: IF l_inst_asset_tbl.COUNT > 0 THEN
352: x_msg_count => l_msg_count,
353: x_msg_data => l_msg_data);
354:
355: IF l_return_status <> fnd_api.g_ret_sts_success THEN
356: RAISE fnd_api.g_exc_error;
357: END IF;
358:
359: IF l_inst_asset_tbl.COUNT > 0 THEN
360:
357: END IF;
358:
359: IF l_inst_asset_tbl.COUNT > 0 THEN
360:
361: IF nvl(px_txn_rec.transaction_id, fnd_api.g_miss_num) = fnd_api.g_miss_num THEN
362: px_txn_rec.transaction_date := sysdate;
363: px_txn_rec.source_transaction_date := sysdate;
364: px_txn_rec.transaction_type_id := 104;
365: px_txn_rec.source_line_ref := 'ASSET_ID';
378: px_csi_txn_rec => px_txn_rec,
379: x_new_inst_asset_id => l_new_inst_asset_id,
380: x_return_status => l_return_status);
381:
382: IF l_return_status <> fnd_api.g_ret_sts_success THEN
383: RAISE fnd_api.g_exc_error;
384: END IF;
385:
386: retire_inst_asset(
379: x_new_inst_asset_id => l_new_inst_asset_id,
380: x_return_status => l_return_status);
381:
382: IF l_return_status <> fnd_api.g_ret_sts_success THEN
383: RAISE fnd_api.g_exc_error;
384: END IF;
385:
386: retire_inst_asset(
387: p_inst_asset_id => l_new_inst_asset_id,
387: p_inst_asset_id => l_new_inst_asset_id,
388: px_csi_txn_rec => px_txn_rec,
389: x_return_status => l_return_status);
390:
391: IF l_return_status <> fnd_api.g_ret_sts_success THEN
392: RAISE fnd_api.g_exc_error;
393: END IF;
394:
395: ELSE
388: px_csi_txn_rec => px_txn_rec,
389: x_return_status => l_return_status);
390:
391: IF l_return_status <> fnd_api.g_ret_sts_success THEN
392: RAISE fnd_api.g_exc_error;
393: END IF;
394:
395: ELSE
396:
398: p_inst_asset_id => l_inst_asset_tbl(1).instance_asset_id,
399: px_csi_txn_rec => px_txn_rec,
400: x_return_status => l_return_status);
401:
402: IF l_return_status <> fnd_api.g_ret_sts_success THEN
403: RAISE fnd_api.g_exc_error;
404: END IF;
405:
406: END IF;
399: px_csi_txn_rec => px_txn_rec,
400: x_return_status => l_return_status);
401:
402: IF l_return_status <> fnd_api.g_ret_sts_success THEN
403: RAISE fnd_api.g_exc_error;
404: END IF;
405:
406: END IF;
407:
417: p_inst_asset_id => l_inst_asset_tbl(l_ind).instance_asset_id,
418: px_csi_txn_rec => px_txn_rec,
419: x_return_status => l_return_status);
420:
421: IF l_return_status <> fnd_api.g_ret_sts_success THEN
422: RAISE fnd_api.g_exc_error;
423: END IF;
424:
425: END LOOP;
418: px_csi_txn_rec => px_txn_rec,
419: x_return_status => l_return_status);
420:
421: IF l_return_status <> fnd_api.g_ret_sts_success THEN
422: RAISE fnd_api.g_exc_error;
423: END IF;
424:
425: END LOOP;
426:
432: END IF;
433: END IF;
434:
435: EXCEPTION
436: WHEN fnd_api.g_exc_error THEN
437: x_return_status := fnd_api.g_ret_sts_error;
438: END asset_retirement;
439:
440: PROCEDURE asset_reinstatement(
433: END IF;
434:
435: EXCEPTION
436: WHEN fnd_api.g_exc_error THEN
437: x_return_status := fnd_api.g_ret_sts_error;
438: END asset_retirement;
439:
440: PROCEDURE asset_reinstatement(
441: p_retirement_id IN NUMBER,
453: l_csi_txn_rec csi_datastructures_pub.transaction_rec;
454: l_time_stamp date := null;
455: l_new_inst_asset_id number;
456:
457: l_return_status varchar2(1) := fnd_api.g_ret_sts_success;
458: l_msg_count number;
459: l_msg_data varchar2(2000);
460:
461: CURSOR dist_cur(p_retirement_id IN number) IS
467: FROM fa_distribution_history
468: WHERE retirement_id = p_retirement_id;
469:
470: BEGIN
471: x_return_status := fnd_api.g_ret_sts_success;
472:
473: FOR dist_rec IN dist_cur(p_retirement_id)
474: LOOP
475:
479: l_inst_asset_qry_rec.fa_location_id := dist_rec.location_id;
480:
481: csi_asset_pvt.get_instance_assets(
482: p_api_version => 1.0,
483: p_commit => fnd_api.g_false,
484: p_init_msg_list => fnd_api.g_true,
485: p_validation_level => fnd_api.g_valid_level_full,
486: p_instance_asset_query_rec => l_inst_asset_qry_rec,
487: p_resolve_id_columns => fnd_api.g_false,
480:
481: csi_asset_pvt.get_instance_assets(
482: p_api_version => 1.0,
483: p_commit => fnd_api.g_false,
484: p_init_msg_list => fnd_api.g_true,
485: p_validation_level => fnd_api.g_valid_level_full,
486: p_instance_asset_query_rec => l_inst_asset_qry_rec,
487: p_resolve_id_columns => fnd_api.g_false,
488: p_time_stamp => l_time_stamp,
481: csi_asset_pvt.get_instance_assets(
482: p_api_version => 1.0,
483: p_commit => fnd_api.g_false,
484: p_init_msg_list => fnd_api.g_true,
485: p_validation_level => fnd_api.g_valid_level_full,
486: p_instance_asset_query_rec => l_inst_asset_qry_rec,
487: p_resolve_id_columns => fnd_api.g_false,
488: p_time_stamp => l_time_stamp,
489: x_instance_asset_tbl => l_inst_asset_tbl,
483: p_commit => fnd_api.g_false,
484: p_init_msg_list => fnd_api.g_true,
485: p_validation_level => fnd_api.g_valid_level_full,
486: p_instance_asset_query_rec => l_inst_asset_qry_rec,
487: p_resolve_id_columns => fnd_api.g_false,
488: p_time_stamp => l_time_stamp,
489: x_instance_asset_tbl => l_inst_asset_tbl,
490: x_return_status => l_return_status,
491: x_msg_count => l_msg_count,
490: x_return_status => l_return_status,
491: x_msg_count => l_msg_count,
492: x_msg_data => l_msg_data);
493:
494: IF l_return_status <> fnd_api.g_ret_sts_success THEN
495: RAISE fnd_api.g_exc_error;
496: END IF;
497:
498: IF l_inst_asset_tbl.COUNT > 0 THEN
491: x_msg_count => l_msg_count,
492: x_msg_data => l_msg_data);
493:
494: IF l_return_status <> fnd_api.g_ret_sts_success THEN
495: RAISE fnd_api.g_exc_error;
496: END IF;
497:
498: IF l_inst_asset_tbl.COUNT > 0 THEN
499:
496: END IF;
497:
498: IF l_inst_asset_tbl.COUNT > 0 THEN
499:
500: l_csi_txn_rec.transaction_id := fnd_api.g_miss_num;
501: l_csi_txn_rec.transaction_date := sysdate;
502: l_csi_txn_rec.source_transaction_date := sysdate;
503: l_csi_txn_rec.transaction_type_id := 103;
504: l_csi_txn_rec.source_line_ref := 'ASSET_ID';
513: p_units => p_units,
514: px_csi_txn_rec => l_csi_txn_rec,
515: x_return_status => l_return_status);
516:
517: IF l_return_status <> fnd_api.g_ret_sts_success THEN
518: RAISE fnd_api.g_exc_error;
519: END IF;
520:
521: ELSE
514: px_csi_txn_rec => l_csi_txn_rec,
515: x_return_status => l_return_status);
516:
517: IF l_return_status <> fnd_api.g_ret_sts_success THEN
518: RAISE fnd_api.g_exc_error;
519: END IF;
520:
521: ELSE
522:
526: p_units => p_units,
527: px_csi_txn_rec => l_csi_txn_rec,
528: x_return_status => l_return_status);
529:
530: IF l_return_status <> fnd_api.g_ret_sts_success THEN
531: RAISE fnd_api.g_exc_error;
532: END IF;
533:
534: END IF;
527: px_csi_txn_rec => l_csi_txn_rec,
528: x_return_status => l_return_status);
529:
530: IF l_return_status <> fnd_api.g_ret_sts_success THEN
531: RAISE fnd_api.g_exc_error;
532: END IF;
533:
534: END IF;
535: END IF;
536:
537: END LOOP;
538:
539: EXCEPTION
540: WHEN fnd_api.g_exc_error THEN
541: x_return_status := fnd_api.g_ret_sts_error;
542: END asset_reinstatement;
543:
544:
537: END LOOP;
538:
539: EXCEPTION
540: WHEN fnd_api.g_exc_error THEN
541: x_return_status := fnd_api.g_ret_sts_error;
542: END asset_reinstatement;
543:
544:
545: PROCEDURE populate_retirement_interface(
557: l_batch_name varchar2(30);
558: l_mass_ext_retire_id number;
559: l_prorate_convention varchar2(20);
560:
561: l_return_status varchar2(1) := fnd_api.g_ret_sts_success;
562: l_error_message varchar2(2000);
563:
564: CURSOR prorate_conv_cur(p_asset_id number,p_book_type_code varchar2) IS
565: SELECT fcbd.retirement_prorate_convention
586: l_units_retired number;
587:
588: BEGIN
589:
590: x_return_status := fnd_api.g_ret_sts_success;
591:
592: debug('inside api cse_asset_txn_pkg.populate_retirement_interface');
593:
594: l_batch_name := 'CSE-'||p_csi_txn_id;
640: p_ext_ret_rec => l_ext_ret_rec,
641: x_return_status => l_return_status,
642: x_error_msg => l_error_message);
643:
644: IF l_return_status <> fnd_api.g_ret_sts_success THEN
645: RAISE fnd_api.g_exc_error;
646: END IF;
647:
648: EXIT when l_units_retired <= 0;
641: x_return_status => l_return_status,
642: x_error_msg => l_error_message);
643:
644: IF l_return_status <> fnd_api.g_ret_sts_success THEN
645: RAISE fnd_api.g_exc_error;
646: END IF;
647:
648: EXIT when l_units_retired <= 0;
649:
649:
650: END LOOP;
651:
652: EXCEPTION
653: WHEN fnd_api.g_exc_error THEN
654: x_return_status := fnd_api.g_ret_sts_error;
655: END populate_retirement_interface;
656:
657:
650: END LOOP;
651:
652: EXCEPTION
653: WHEN fnd_api.g_exc_error THEN
654: x_return_status := fnd_api.g_ret_sts_error;
655: END populate_retirement_interface;
656:
657:
658: END cse_fa_txn_pkg;