1: PACKAGE BODY XDP_INSTALL_BASE AS
2: /* $Header: XDPIBINB.pls 120.2 2006/07/05 05:40:51 dputhiye noship $ */
3:
4: PROCEDURE UPDATE_TXN(p_order_id IN NUMBER,
5: p_line_id IN NUMBER,
76:
77:
78: BEGIN
79:
80: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
81: p_debug_msg => 'Updating Install Base For Order Id is : '||p_order_id|| ' and Line Id is : '||p_line_id);
82:
83: FOR v_check_rec IN c_check (p_order_id, p_line_id) LOOP
84:
83: FOR v_check_rec IN c_check (p_order_id, p_line_id) LOOP
84:
85: IF v_check_rec.comms_nl_trackable_flag = 'Y' THEN
86:
87: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
88: p_debug_msg => ' Trackable Flag is : ' ||v_check_rec.comms_nl_trackable_flag);
89:
90: IF v_check_rec.ib_source = 'TXN' THEN
91:
88: p_debug_msg => ' Trackable Flag is : ' ||v_check_rec.comms_nl_trackable_flag);
89:
90: IF v_check_rec.ib_source = 'TXN' THEN
91:
92: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
93: p_debug_msg => ' Ib Source is : ' ||v_check_rec.ib_source);
94:
95: IF v_check_rec.is_virtual_line_flag = 'Y' THEN
96:
93: p_debug_msg => ' Ib Source is : ' ||v_check_rec.ib_source);
94:
95: IF v_check_rec.is_virtual_line_flag = 'Y' THEN
96:
97: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
98: p_debug_msg => ' is_virtual_line_flag is : ' ||v_check_rec.is_virtual_line_flag);
99:
100: FOR v_rel_line in c_rel_line(p_line_id) LOOP
101:
105: ELSE
106: lv_line_number := v_check_rec.line_number;
107: END IF;
108:
109: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
110: p_debug_msg => ' lv_line_number : '||lv_line_number );
111:
112: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
113: p_debug_msg => ' Calling UPDATE_TXN ');
108:
109: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
110: p_debug_msg => ' lv_line_number : '||lv_line_number );
111:
112: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
113: p_debug_msg => ' Calling UPDATE_TXN ');
114:
115: UPDATE_TXN(p_order_id,
116: p_line_id,
121: lv_error_description);
122:
123: IF lv_error_code <> 0 THEN
124:
125: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
126: p_debug_msg => ' Update_Txn Failed. Error Code : '||lv_error_code ||'- Error Desc : '||lv_error_description );
127:
128: p_error_code := lv_error_code;
129: p_error_description := lv_error_description ;
131: END IF;
132:
133: ELSIF v_check_rec.ib_source = 'CSI' THEN
134:
135: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
136: p_debug_msg => 'Ib Source is : '||v_check_rec.ib_source );
137: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
138: p_debug_msg => ' Calling UPDATE_CSI');
139:
133: ELSIF v_check_rec.ib_source = 'CSI' THEN
134:
135: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
136: p_debug_msg => 'Ib Source is : '||v_check_rec.ib_source );
137: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
138: p_debug_msg => ' Calling UPDATE_CSI');
139:
140: UPDATE_CSI(p_order_id,
141: p_line_id,
143: lv_error_code);
144:
145: IF lv_error_code <> 0 THEN
146:
147: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
148: p_debug_msg => ' Update_CSI Failed. Error Code : '||lv_error_code);
149:
150: p_error_code := lv_error_code;
151: RETURN;
163: WHEN others THEN
164: p_error_code := sqlcode ;
165: p_error_description := substr(sqlerrm,1,1800);
166:
167: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
168: p_debug_msg => ' Exception Occurred');
169: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
170: p_debug_msg => 'Error Code : ' ||p_error_code||' - Error Desc : '||p_error_description);
171:
165: p_error_description := substr(sqlerrm,1,1800);
166:
167: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
168: p_debug_msg => ' Exception Occurred');
169: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_IB',
170: p_debug_msg => 'Error Code : ' ||p_error_code||' - Error Desc : '||p_error_description);
171:
172: RETURN;
173:
208: e_update_txn_failed EXCEPTION;
209:
210: BEGIN
211:
212: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
213: p_debug_msg => 'In UPDATE_TXN');
214:
215: lv_index := 1;
216: lv_index1 := 0;
217:
218: -- This code is added as a part of MACD Service project to get tuple of a CTO item OR its component and
219: -- pass to IB to update TXN dtls -- spusegao/maya 07/29/2002
220:
221: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
222: p_debug_msg => 'Line Id is : '||p_line_number);
223:
224: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
225: p_debug_msg => 'Calling CSI_UTILITY_GRP.get_config_key_for_om_line ');
220:
221: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
222: p_debug_msg => 'Line Id is : '||p_line_number);
223:
224: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
225: p_debug_msg => 'Calling CSI_UTILITY_GRP.get_config_key_for_om_line ');
226:
227: CSI_UTILITY_GRP.get_config_key_for_om_line( p_line_id => p_line_number ,
228: x_config_session_key => lv_config_session_key ,
238: l_txn_line_rec.config_session_rev_num := lv_config_session_key.session_rev_num ;
239: l_txn_line_rec.config_session_item_id := lv_config_session_key.session_item_id ;
240: l_txn_line_rec.api_caller_identity := 'CONFIG' ;
241:
242: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
243: p_debug_msg => 'Config Hdr Id : '||lv_config_session_key.session_hdr_id);
244:
245: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
246: p_debug_msg => 'Config Rev Num : '||lv_config_session_key.session_rev_num);
241:
242: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
243: p_debug_msg => 'Config Hdr Id : '||lv_config_session_key.session_hdr_id);
244:
245: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
246: p_debug_msg => 'Config Rev Num : '||lv_config_session_key.session_rev_num);
247:
248: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
249: p_debug_msg => 'Config item Id : '||lv_config_session_key.session_item_id);
244:
245: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
246: p_debug_msg => 'Config Rev Num : '||lv_config_session_key.session_rev_num);
247:
248: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
249: p_debug_msg => 'Config item Id : '||lv_config_session_key.session_item_id);
250:
251: ELSIF lv_return_status ='S' AND (lv_config_session_key.session_hdr_id IS NULL AND
252: lv_config_session_key.session_rev_num IS NULL AND
254: -- pass line_number and line_source in the transaction record to ib
255: l_txn_line_rec.source_transaction_id := p_line_number;
256: l_txn_line_rec.source_transaction_table := p_line_source;
257:
258: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
259: p_debug_msg => 'source_transaction_id : '||p_line_number);
260:
261: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
262: p_debug_msg => 'source_transaction_table : '||p_line_source);
257:
258: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
259: p_debug_msg => 'source_transaction_id : '||p_line_number);
260:
261: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
262: p_debug_msg => 'source_transaction_table : '||p_line_source);
263:
264:
265: ELSIF lv_return_status <> 'S' THEN
263:
264:
265: ELSIF lv_return_status <> 'S' THEN
266:
267: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
268: p_debug_msg => 'CSI_UTILITY_GRP.get_config_key_for_om_line Failed');
269:
270: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
271: p_debug_msg => 'Error Code : '||lv_return_status||'- Error Desc. : '||lv_return_message);
266:
267: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
268: p_debug_msg => 'CSI_UTILITY_GRP.get_config_key_for_om_line Failed');
269:
270: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
271: p_debug_msg => 'Error Code : '||lv_return_status||'- Error Desc. : '||lv_return_message);
272:
273: END IF ;
274:
275: -- pass ib_source_id to the l_txn_line_detail_tbl
276:
277: IF p_ib_source_id IS NOT NULL THEN
278:
279: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
280: p_debug_msg => 'Calling GET_TXN_LINE_ID ');
281:
282: l_txn_line_rec.transaction_line_id := GET_TXN_LINE_ID(p_ib_source_id);
283:
280: p_debug_msg => 'Calling GET_TXN_LINE_ID ');
281:
282: l_txn_line_rec.transaction_line_id := GET_TXN_LINE_ID(p_ib_source_id);
283:
284: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
285: p_debug_msg => 'Transaction Line Id : '||l_txn_line_rec.transaction_line_id );
286:
287: END IF ;
288:
301: END LOOP;
302:
303: IF l_txn_ext_attrib_vals_tbl.COUNT > 0 THEN
304:
305: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
306: p_debug_msg => 'Txn Ext Attrib Val. Count > 0 ');
307:
308: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
309: p_debug_msg => 'Calling csi_t_txn_details_grp.update_txn_line_dtls');
304:
305: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
306: p_debug_msg => 'Txn Ext Attrib Val. Count > 0 ');
307:
308: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
309: p_debug_msg => 'Calling csi_t_txn_details_grp.update_txn_line_dtls');
310:
311:
312: -- call transaction details API
334: IF l_return_status <> 'S' THEN
335: p_error_code := -1 ;
336: p_error_description := l_msg_data ;
337:
338: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
339: p_debug_msg => ' csi_t_txn_details_grp.update_txn_line_dtls Failed');
340: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
341: p_debug_msg => ' Error Desc : ' ||p_error_description);
342: RETURN;
336: p_error_description := l_msg_data ;
337:
338: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
339: p_debug_msg => ' csi_t_txn_details_grp.update_txn_line_dtls Failed');
340: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
341: p_debug_msg => ' Error Desc : ' ||p_error_description);
342: RETURN;
343: ELSE
344: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
340: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
341: p_debug_msg => ' Error Desc : ' ||p_error_description);
342: RETURN;
343: ELSE
344: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
345: p_debug_msg => ' csi_t_txn_details_grp.update_txn_line_dtls Completed ');
346:
347: END IF;
348:
355: WHEN OTHERS THEN
356: p_error_code := sqlcode ;
357: p_error_description := substr(sqlerrm,1,1800);
358:
359: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
360: p_debug_msg => ' Exception Occurred');
361: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
362: p_debug_msg => 'Error Code : ' ||p_error_code||' - Error Desc : '||p_error_description);
363:
357: p_error_description := substr(sqlerrm,1,1800);
358:
359: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
360: p_debug_msg => ' Exception Occurred');
361: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_TXN',
362: p_debug_msg => 'Error Code : ' ||p_error_code||' - Error Desc : '||p_error_description);
363:
364: RETURN ;
365: /*
362: p_debug_msg => 'Error Code : ' ||p_error_code||' - Error Desc : '||p_error_description);
363:
364: RETURN ;
365: /*
366: xdp_utilities.generic_error('XDP_INSTALL_BASE.UPDATE_TXN'
367: ,p_order_id
368: , SQLCODE
369: , SQLERRM);
370: */
409: where instance_id = p_inst_id;
410:
411: BEGIN
412:
413: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_CSI',
414: p_debug_msg => 'In UPDATE_CSI');
415:
416: lv_index := 0;
417:
451: END LOOP;
452:
453: IF l_extend_attrib_values_tbl.COUNT > 0 THEN
454:
455: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_CSI',
456: p_debug_msg => 'Calling csi_item_instance_pub.update_item_instance ');
457:
458: csi_item_instance_pub.update_item_instance
459: (
481:
482: IF l_return_status <> 'S' THEN
483: p_error_code := -1;
484:
485: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_CSI',
486: p_debug_msg => 'csi_item_instance_pub.update_item_instance Failed');
487:
488: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_CSI',
489: p_debug_msg => 'Error Code : ' ||p_error_code || '- Error Desc. : '||l_msg_data );
484:
485: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_CSI',
486: p_debug_msg => 'csi_item_instance_pub.update_item_instance Failed');
487:
488: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_CSI',
489: p_debug_msg => 'Error Code : ' ||p_error_code || '- Error Desc. : '||l_msg_data );
490:
491: RETURN;
492: END IF;
496: EXCEPTION
497:
498: WHEN OTHERS THEN
499: p_error_code := -1;
500: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_CSI',
501: p_debug_msg => 'When Others Exception Error Code : '||sqlcode||'- Error Desc. : '||sqlerrm );
502:
503: xdp_utilities.generic_error('XDP_INSTALL_BASE.UPDATE_CSI'
504: ,p_order_id
499: p_error_code := -1;
500: Log_debug(p_debug_api => 'xdp.plsql.XDP_INSTALL_BASE.UPDATE_CSI',
501: p_debug_msg => 'When Others Exception Error Code : '||sqlcode||'- Error Desc. : '||sqlerrm );
502:
503: xdp_utilities.generic_error('XDP_INSTALL_BASE.UPDATE_CSI'
504: ,p_order_id
505: , SQLCODE
506: , SQLERRM);
507: RETURN;
554:
555: END Log_Debug ;
556:
557:
558: END XDP_INSTALL_BASE;