1: package body POR_RCV_ORD_SV as
2: /* $Header: PORRCVOB.pls 120.5.12010000.2 2008/08/02 14:39:41 kkram ship $ */
3:
4: /*************************************************************
5: ** Public Function :
881:
882: begin
883: x_user_id := fnd_global.user_id;
884:
885: asn_debug.put_line('POR_RCV_ORD_SV.INSERT_RCV_TXN_INTERFACE x_source_type_code:' || x_source_type_code);
886:
887: if (x_source_type_code = 'ASN') then
888: select shipment_header_id
889: into l_rcv_shipment_header_id
890: from rcv_shipment_lines
891: where shipment_line_id = X_rcv_shipment_line_id;
892: end if;
893:
894: asn_debug.put_line('POR_RCV_ORD_SV.INSERT_RCV_TXN_INTERFACE l_rcv_shipment_header_id:' || l_rcv_shipment_header_id);
895:
896: begin
897: SELECT HR.PERSON_ID
898: INTO x_employee_id
905: WHEN others THEN
906: x_employee_id := 0;
907: END;
908:
909: asn_debug.put_line('POR_RCV_ORD_SV.INSERT_RCV_TXN_INTERFACE x_employee_id :' || x_employee_id );
910:
911: SELECT POL.MATCHING_BASIS, POL.JOB_ID
912: INTO X_MATCHING_BASIS, X_JOB_ID
913: FROM PO_LINES_ALL POL, PO_DISTRIBUTIONS_ALL POD
913: FROM PO_LINES_ALL POL, PO_DISTRIBUTIONS_ALL POD
914: WHERE POL.PO_LINE_ID = POD.PO_LINE_ID
915: AND POD.PO_DISTRIBUTION_ID = X_PO_DISTRIBUTION_ID;
916:
917: asn_debug.put_line('POR_RCV_ORD_SV.INSERT_RCV_TXN_INTERFACE X_MATCHING_BASIS' || X_MATCHING_BASIS);
918:
919: If nvl(x_matching_basis, 'QUANTITY') = 'QUANTITY' then
920:
921: IF (x_item_id IS NULL) THEN
946: X_receipt_amt := X_receipt_qty;
947: X_qty := null;
948: end if;
949:
950: asn_debug.put_line('POR_RCV_ORD_SV.INSERT_RCV_TXN_INTERFACE X_receipt_qty' || X_receipt_qty || ' X_receipt_amt ' || X_receipt_amt);
951:
952: /* Insert the rows that were checked into RCV_TRANSACTIONS_INTERFACE */
953:
954: SELECT POD.DESTINATION_TYPE_CODE,
1043: POH.PO_HEADER_ID = x_po_header_id and
1044: POLL.LINE_LOCATION_ID = x_line_location_id and
1045: POD.PO_DISTRIBUTION_ID = X_po_distribution_id;
1046:
1047: asn_debug.put_line('POR_RCV_ORD_SV.INSERT_RCV_TXN_INTERFACE Inserting values in RCV_TRANSACTIONS_INTERFACE');
1048:
1049: INSERT INTO RCV_TRANSACTIONS_INTERFACE (
1050: INTERFACE_TRANSACTION_ID,
1051: GROUP_ID,
1731: x_progress := '003online call return=' || to_char(rc) || '; outcome='|| outcome;
1732: asn_debug.put_line(x_progress);
1733:
1734: if rc = 1 then
1735: if (por_rcv_ord_SV.check_group_id(X_group_id)) then
1736: fnd_message.set_name('FND', 'TM-TIMEOUT');
1737: x_str := fnd_message.get;
1738: fnd_message.clear;
1739:
1754: end if;
1755: end if;
1756: delete_rows := TRUE;
1757: elsif rc = 2 then
1758: IF (por_rcv_ord_SV.check_group_id(X_group_id)) THEN
1759:
1760:
1761: fnd_message.set_name('FND', 'TM-SVC LOCK HANDLE FAILED');
1762: x_str := fnd_message.get;
1774: end if;
1775: delete_rows := TRUE;
1776: elsif (rc = 3 or (outcome IN ('WARNING', 'ERROR'))) then
1777: asn_debug.put_line('return 3 from txn processor, or outcome='|| outcome);
1778: IF (por_rcv_ord_SV.check_group_id(X_group_id)) THEN
1779:
1780:
1781: rc := fnd_transaction.get_values (r_val1, r_val2, r_val3, r_val4, r_val5,
1782: r_val6, r_val7, r_val8, r_val9, r_val10,
1825: if (x_caller = 'WP4') then
1826: /** Since we have received over the web, we need to clean up any open
1827: notifications for the rows that belong to this group_id **/
1828:
1829: por_rcv_ord_SV.cancel_pending_notifs(x_group_id);
1830:
1831: end if;
1832: x_progress := '004, return 0 from txn processor';
1833: asn_debug.put_line(x_progress);
1981: fetch c1 into wf_item_key ;
1982: exit when c1%notfound;
1983:
1984:
1985: if (por_rcv_ord_SV.notif_is_active(wf_item_type,wf_item_key)) then
1986: WF_Engine.AbortProcess(wf_item_type,wf_item_key);
1987: end if;
1988:
1989: end loop;
2000: x_caller varchar2(3) := 'WP4';
2001:
2002:
2003: BEGIN
2004: x_progress := 'POR_RCV_ORD_SV.is_active-001';
2005:
2006: --Bug 4999072 Changed the query to reduce the memory usage
2007: SELECT WIAS.ACTIVITY_STATUS
2008: INTO x_act_status