1: PACKAGE BODY rcv_external_interface_sv AS
2: /* $Header: RCVRSEVB.pls 120.1 2010/01/26 20:07:32 vthevark noship $ */
3:
4: g_asn_debug VARCHAR2(1) := asn_debug.is_debug_on; -- Bug 9152790
5:
6: G_PKG_NAME CONSTANT VARCHAR2(50) := 'RCV_EXTERNAL_INTERFACE_SV';
7:
8:
44: update_history EXCEPTION;
45:
46: BEGIN
47:
48: IF (g_asn_debug = 'Y') THEN
49: asn_debug.put_line('Entering RCV_EXTERNAL_INTERFACE_SV.Raise_Event Call');
50: asn_debug.put_line('transaction_id is ' || P_txn_hist_record.transaction_id);
51: asn_debug.put_line('transaction_status is ' || P_txn_hist_record.transaction_status);
52: END IF;
45:
46: BEGIN
47:
48: IF (g_asn_debug = 'Y') THEN
49: asn_debug.put_line('Entering RCV_EXTERNAL_INTERFACE_SV.Raise_Event Call');
50: asn_debug.put_line('transaction_id is ' || P_txn_hist_record.transaction_id);
51: asn_debug.put_line('transaction_status is ' || P_txn_hist_record.transaction_status);
52: END IF;
53:
46: BEGIN
47:
48: IF (g_asn_debug = 'Y') THEN
49: asn_debug.put_line('Entering RCV_EXTERNAL_INTERFACE_SV.Raise_Event Call');
50: asn_debug.put_line('transaction_id is ' || P_txn_hist_record.transaction_id);
51: asn_debug.put_line('transaction_status is ' || P_txn_hist_record.transaction_status);
52: END IF;
53:
54: x_return_status := rcv_error_pkg.g_ret_sts_success;
47:
48: IF (g_asn_debug = 'Y') THEN
49: asn_debug.put_line('Entering RCV_EXTERNAL_INTERFACE_SV.Raise_Event Call');
50: asn_debug.put_line('transaction_id is ' || P_txn_hist_record.transaction_id);
51: asn_debug.put_line('transaction_status is ' || P_txn_hist_record.transaction_status);
52: END IF;
53:
54: x_return_status := rcv_error_pkg.g_ret_sts_success;
55:
67: END IF;
68:
69: l_Transaction_Code := UPPER (SUBSTRB (l_event_name, INSTRB(l_Event_Name, '.', -1) + 1));
70:
71: IF (g_asn_debug = 'Y') THEN
72: asn_debug.put_line('Transaction Code is ' || l_transaction_code);
73: END If;
74:
75: l_event_key := l_txn_hist_record.Event_Key;
68:
69: l_Transaction_Code := UPPER (SUBSTRB (l_event_name, INSTRB(l_Event_Name, '.', -1) + 1));
70:
71: IF (g_asn_debug = 'Y') THEN
72: asn_debug.put_line('Transaction Code is ' || l_transaction_code);
73: END If;
74:
75: l_event_key := l_txn_hist_record.Event_Key;
76: l_wms_deployment_mode := WMS_DEPLOY.WMS_DEPLOYMENT_MODE;
94:
95: END IF;
96:
97:
98: IF (g_asn_debug = 'Y') THEN
99: asn_debug.put_line('trading_partner_site_id is '||l_Party_Site_ID);
100: END IF;
101:
102: END IF; --}
95: END IF;
96:
97:
98: IF (g_asn_debug = 'Y') THEN
99: asn_debug.put_line('trading_partner_site_id is '||l_Party_Site_ID);
100: END IF;
101:
102: END IF; --}
103:
114:
115: WF_EVENT.AddParameterToList (p_name => 'ECX_PARTY_TYPE',
116: p_value => 'C',
117: p_parameterlist => l_msg_parameter_list);
118: IF (g_asn_debug = 'Y') THEN
119: asn_debug.put_line('Party Type is '|| 'C');
120: END IF;
121:
122: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_TYPE',
115: WF_EVENT.AddParameterToList (p_name => 'ECX_PARTY_TYPE',
116: p_value => 'C',
117: p_parameterlist => l_msg_parameter_list);
118: IF (g_asn_debug = 'Y') THEN
119: asn_debug.put_line('Party Type is '|| 'C');
120: END IF;
121:
122: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_TYPE',
123: p_value => 'PO',
121:
122: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_TYPE',
123: p_value => 'PO',
124: p_parameterlist => l_msg_parameter_list);
125: IF (g_asn_debug = 'Y') THEN
126: asn_debug.put_line('Transaction Type is '|| 'PO');
127: END IF;
128:
129:
122: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_TYPE',
123: p_value => 'PO',
124: p_parameterlist => l_msg_parameter_list);
125: IF (g_asn_debug = 'Y') THEN
126: asn_debug.put_line('Transaction Type is '|| 'PO');
127: END IF;
128:
129:
130: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_SUBTYPE',
129:
130: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_SUBTYPE',
131: p_value => 'RCPTO',
132: p_parameterlist => l_msg_parameter_list);
133: IF (g_asn_debug = 'Y') THEN
134: asn_debug.put_line('Transaction SubType is '|| 'RCPTO');
135: END IF;
136:
137: ELSE
130: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_SUBTYPE',
131: p_value => 'RCPTO',
132: p_parameterlist => l_msg_parameter_list);
133: IF (g_asn_debug = 'Y') THEN
134: asn_debug.put_line('Transaction SubType is '|| 'RCPTO');
135: END IF;
136:
137: ELSE
138:
146:
147: WF_EVENT.AddParameterToList (p_name => 'ECX_PARTY_TYPE',
148: p_value => 'I',
149: p_parameterlist => l_msg_parameter_list);
150: IF (g_asn_debug = 'Y') THEN
151: asn_debug.put_line('Party Type is '|| 'I');
152: END IF;
153:
154: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_TYPE',
147: WF_EVENT.AddParameterToList (p_name => 'ECX_PARTY_TYPE',
148: p_value => 'I',
149: p_parameterlist => l_msg_parameter_list);
150: IF (g_asn_debug = 'Y') THEN
151: asn_debug.put_line('Party Type is '|| 'I');
152: END IF;
153:
154: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_TYPE',
155: p_value => 'PO',
153:
154: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_TYPE',
155: p_value => 'PO',
156: p_parameterlist => l_msg_parameter_list);
157: IF (g_asn_debug = 'Y') THEN
158: asn_debug.put_line('Transaction Type is '|| 'PO');
159: END IF;
160:
161:
154: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_TYPE',
155: p_value => 'PO',
156: p_parameterlist => l_msg_parameter_list);
157: IF (g_asn_debug = 'Y') THEN
158: asn_debug.put_line('Transaction Type is '|| 'PO');
159: END IF;
160:
161:
162: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_SUBTYPE',
161:
162: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_SUBTYPE',
163: p_value => 'RCPTO-INT',
164: p_parameterlist => l_msg_parameter_list);
165: IF (g_asn_debug = 'Y') THEN
166: asn_debug.put_line('Transaction SubType is '|| 'RCPTO-INT');
167: END IF;
168:
169: END IF;
162: WF_EVENT.AddParameterToList (p_name => 'ECX_TRANSACTION_SUBTYPE',
163: p_value => 'RCPTO-INT',
164: p_parameterlist => l_msg_parameter_list);
165: IF (g_asn_debug = 'Y') THEN
166: asn_debug.put_line('Transaction SubType is '|| 'RCPTO-INT');
167: END IF;
168:
169: END IF;
170:
172: WF_EVENT.AddParameterToList (p_name => 'ECX_DOCUMENT_ID',
173: p_value => l_txn_hist_record.Entity_Number, --shipment_header_id
174: p_parameterlist => l_msg_parameter_list);
175:
176: IF (g_asn_debug = 'Y') THEN
177: asn_debug.put_line('Document ID is '|| l_txn_hist_record.Entity_Number);
178: END IF;
179:
180:
173: p_value => l_txn_hist_record.Entity_Number, --shipment_header_id
174: p_parameterlist => l_msg_parameter_list);
175:
176: IF (g_asn_debug = 'Y') THEN
177: asn_debug.put_line('Document ID is '|| l_txn_hist_record.Entity_Number);
178: END IF;
179:
180:
181: WF_EVENT.AddParameterToList (p_name => 'USER_ID',
181: WF_EVENT.AddParameterToList (p_name => 'USER_ID',
182: p_value => FND_GLOBAL.USER_ID,
183: p_parameterlist => l_msg_parameter_list);
184:
185: IF (g_asn_debug = 'Y') THEN
186: asn_debug.put_line('User ID is '|| FND_GLOBAL.USER_ID);
187: END IF;
188:
189: --
182: p_value => FND_GLOBAL.USER_ID,
183: p_parameterlist => l_msg_parameter_list);
184:
185: IF (g_asn_debug = 'Y') THEN
186: asn_debug.put_line('User ID is '|| FND_GLOBAL.USER_ID);
187: END IF;
188:
189: --
190: WF_EVENT.AddParameterToList (p_name => 'APPLICATION_ID',
191: p_value => FND_GLOBAL.RESP_APPL_ID,
192: p_parameterlist => l_msg_parameter_list);
193:
194:
195: IF (g_asn_debug = 'Y') THEN
196: asn_debug.put_line('Responsibility Application ID is '|| FND_GLOBAL.RESP_APPL_ID);
197: END IF;
198:
199:
192: p_parameterlist => l_msg_parameter_list);
193:
194:
195: IF (g_asn_debug = 'Y') THEN
196: asn_debug.put_line('Responsibility Application ID is '|| FND_GLOBAL.RESP_APPL_ID);
197: END IF;
198:
199:
200: WF_EVENT.AddParameterToList (p_name => 'RESPONSIBILITY_ID',
200: WF_EVENT.AddParameterToList (p_name => 'RESPONSIBILITY_ID',
201: p_value => FND_GLOBAL.RESP_ID,
202: p_parameterlist => l_msg_parameter_list);
203:
204: IF (g_asn_debug = 'Y') THEN
205: asn_debug.put_line('Responsibility ID is '|| FND_GLOBAL.RESP_ID);
206: END IF;
207:
208:
201: p_value => FND_GLOBAL.RESP_ID,
202: p_parameterlist => l_msg_parameter_list);
203:
204: IF (g_asn_debug = 'Y') THEN
205: asn_debug.put_line('Responsibility ID is '|| FND_GLOBAL.RESP_ID);
206: END IF;
207:
208:
209: WF_EVENT.AddParameterToList (p_name => 'USER',
209: WF_EVENT.AddParameterToList (p_name => 'USER',
210: p_value => FND_GLOBAL.user_name,
211: p_parameterlist => l_msg_parameter_list);
212:
213: IF (g_asn_debug = 'Y') THEN
214: asn_debug.put_line('User_Name is '||FND_GLOBAL.user_name);
215: END IF;
216:
217: WF_EVENT.AddParameterToList (p_name => 'ECX_PARAMETER1',
210: p_value => FND_GLOBAL.user_name,
211: p_parameterlist => l_msg_parameter_list);
212:
213: IF (g_asn_debug = 'Y') THEN
214: asn_debug.put_line('User_Name is '||FND_GLOBAL.user_name);
215: END IF;
216:
217: WF_EVENT.AddParameterToList (p_name => 'ECX_PARAMETER1',
218: p_value => l_txn_hist_record.Action_Type,
221: WF_EVENT.AddParameterToList (p_name => 'ECX_PARAMETER2',
222: p_value => l_txn_hist_record.Client_Code,
223: p_parameterlist => l_msg_parameter_list);
224:
225: IF (g_asn_debug = 'Y') THEN
226: asn_debug.put_line('ECX Parameter1 is '||l_txn_hist_record.Action_Type);
227: END IF;
228:
229: IF (g_asn_debug = 'Y') THEN
222: p_value => l_txn_hist_record.Client_Code,
223: p_parameterlist => l_msg_parameter_list);
224:
225: IF (g_asn_debug = 'Y') THEN
226: asn_debug.put_line('ECX Parameter1 is '||l_txn_hist_record.Action_Type);
227: END IF;
228:
229: IF (g_asn_debug = 'Y') THEN
230: asn_debug.put_line('ECX Parameter2 is '||l_txn_hist_record.Client_Code);
225: IF (g_asn_debug = 'Y') THEN
226: asn_debug.put_line('ECX Parameter1 is '||l_txn_hist_record.Action_Type);
227: END IF;
228:
229: IF (g_asn_debug = 'Y') THEN
230: asn_debug.put_line('ECX Parameter2 is '||l_txn_hist_record.Client_Code);
231: END IF;
232:
233:
226: asn_debug.put_line('ECX Parameter1 is '||l_txn_hist_record.Action_Type);
227: END IF;
228:
229: IF (g_asn_debug = 'Y') THEN
230: asn_debug.put_line('ECX Parameter2 is '||l_txn_hist_record.Client_Code);
231: END IF;
232:
233:
234:
236: INTO l_txn_hist_record.Entity_Number
237: FROM rcv_shipment_headers
238: WHERE shipment_header_id = l_txn_hist_record.Entity_Number;
239:
240: IF (g_asn_debug = 'Y') THEN
241: asn_debug.put_line('Receipt Number is '||l_txn_hist_record.Entity_Number);
242: END IF;
243:
244: RCV_TRANSACTIONS_HISTORY_PKG.Create_Update_Txns_History ( l_txn_hist_record,
237: FROM rcv_shipment_headers
238: WHERE shipment_header_id = l_txn_hist_record.Entity_Number;
239:
240: IF (g_asn_debug = 'Y') THEN
241: asn_debug.put_line('Receipt Number is '||l_txn_hist_record.Entity_Number);
242: END IF;
243:
244: RCV_TRANSACTIONS_HISTORY_PKG.Create_Update_Txns_History ( l_txn_hist_record,
245: l_xml_document_id,
245: l_xml_document_id,
246: l_txns_id,
247: l_return_status );
248:
249: IF (g_asn_debug = 'Y') THEN
250: asn_debug.put_line('l_txns_id is '||l_txns_id);
251: asn_debug.put_line('l_return_status is '||To_Char(l_Return_Status));
252: END IF;
253:
246: l_txns_id,
247: l_return_status );
248:
249: IF (g_asn_debug = 'Y') THEN
250: asn_debug.put_line('l_txns_id is '||l_txns_id);
251: asn_debug.put_line('l_return_status is '||To_Char(l_Return_Status));
252: END IF;
253:
254: IF ( l_return_status <> rcv_error_pkg.g_ret_sts_success ) THEN
247: l_return_status );
248:
249: IF (g_asn_debug = 'Y') THEN
250: asn_debug.put_line('l_txns_id is '||l_txns_id);
251: asn_debug.put_line('l_return_status is '||To_Char(l_Return_Status));
252: END IF;
253:
254: IF ( l_return_status <> rcv_error_pkg.g_ret_sts_success ) THEN
255: IF (g_asn_debug = 'Y') THEN
251: asn_debug.put_line('l_return_status is '||To_Char(l_Return_Status));
252: END IF;
253:
254: IF ( l_return_status <> rcv_error_pkg.g_ret_sts_success ) THEN
255: IF (g_asn_debug = 'Y') THEN
256: asn_debug.put_line('Raise_Event.l_Return_Status is '|| l_Return_Status);
257: END IF;
258: RAISE update_history;
259: END IF;
252: END IF;
253:
254: IF ( l_return_status <> rcv_error_pkg.g_ret_sts_success ) THEN
255: IF (g_asn_debug = 'Y') THEN
256: asn_debug.put_line('Raise_Event.l_Return_Status is '|| l_Return_Status);
257: END IF;
258: RAISE update_history;
259: END IF;
260:
263:
264:
265: IF ( l_Transaction_Code IN ('RCPTO') ) THEN
266:
267: IF (g_asn_debug = 'Y') THEN
268: asn_debug.put_line('Raising Business Event');
269: END IF;
270:
271: WF_EVENT.raise ( p_event_name => l_event_name,
264:
265: IF ( l_Transaction_Code IN ('RCPTO') ) THEN
266:
267: IF (g_asn_debug = 'Y') THEN
268: asn_debug.put_line('Raising Business Event');
269: END IF;
270:
271: WF_EVENT.raise ( p_event_name => l_event_name,
272: p_event_key => l_event_key,
271: WF_EVENT.raise ( p_event_name => l_event_name,
272: p_event_key => l_event_key,
273: p_parameters => l_msg_parameter_list );
274:
275: IF (g_asn_debug = 'Y') THEN
276: asn_debug.put_line('Completed the Business Event execution');
277: END IF;
278:
279: END IF;
272: p_event_key => l_event_key,
273: p_parameters => l_msg_parameter_list );
274:
275: IF (g_asn_debug = 'Y') THEN
276: asn_debug.put_line('Completed the Business Event execution');
277: END IF;
278:
279: END IF;
280:
277: END IF;
278:
279: END IF;
280:
281: IF (g_asn_debug = 'Y') THEN
282: asn_debug.put_line('Exiting RCV_EXTERNAL_INTERFACE_SV.Raise_Event call');
283: END IF;
284:
285: EXCEPTION
278:
279: END IF;
280:
281: IF (g_asn_debug = 'Y') THEN
282: asn_debug.put_line('Exiting RCV_EXTERNAL_INTERFACE_SV.Raise_Event call');
283: END IF;
284:
285: EXCEPTION
286: WHEN invalid_event_name THEN
284:
285: EXCEPTION
286: WHEN invalid_event_name THEN
287: x_return_status := rcv_error_pkg.g_ret_sts_error;
288: IF (g_asn_debug = 'Y') THEN
289: asn_debug.put_line('invalid_event_name exception has occured.');
290: END IF;
291:
292: WHEN update_history THEN
285: EXCEPTION
286: WHEN invalid_event_name THEN
287: x_return_status := rcv_error_pkg.g_ret_sts_error;
288: IF (g_asn_debug = 'Y') THEN
289: asn_debug.put_line('invalid_event_name exception has occured.');
290: END IF;
291:
292: WHEN update_history THEN
293: x_return_status := rcv_error_pkg.g_ret_sts_error;
290: END IF;
291:
292: WHEN update_history THEN
293: x_return_status := rcv_error_pkg.g_ret_sts_error;
294: IF (g_asn_debug = 'Y') THEN
295: asn_debug.put_line('update_history exception has occured.');
296: END IF;
297:
298: WHEN OTHERS THEN
291:
292: WHEN update_history THEN
293: x_return_status := rcv_error_pkg.g_ret_sts_error;
294: IF (g_asn_debug = 'Y') THEN
295: asn_debug.put_line('update_history exception has occured.');
296: END IF;
297:
298: WHEN OTHERS THEN
299: x_return_status := rcv_error_pkg.g_ret_sts_unexp_error;
297:
298: WHEN OTHERS THEN
299: x_return_status := rcv_error_pkg.g_ret_sts_unexp_error;
300:
301: IF (g_asn_debug = 'Y') THEN
302: asn_debug.put_line('Unexpected error has occured. Oracle error message is '|| SQLERRM);
303: END IF;
304:
305: END Raise_Event;
298: WHEN OTHERS THEN
299: x_return_status := rcv_error_pkg.g_ret_sts_unexp_error;
300:
301: IF (g_asn_debug = 'Y') THEN
302: asn_debug.put_line('Unexpected error has occured. Oracle error message is '|| SQLERRM);
303: END IF;
304:
305: END Raise_Event;
306: