[Home] [Help]
1: PACKAGE BODY PON_AUCTION_INTERFACE_PKG AS
2: /* $Header: PONAUCIB.pls 120.21 2007/08/22 16:20:38 tarkumar ship $ */
3:
4: g_pkg_name CONSTANT VARCHAR2(30) := 'PON_AUCTION_INTERFACE_PKG';
5: g_progress_payment_type pon_auction_headers_all.progress_payment_type%TYPE := 'NONE';
6:
7: -- global variables added for header price break default project
8: g_price_break_type pon_auction_item_prices_all.price_break_type%type;
9: g_price_break_neg_flag pon_auction_item_prices_all.price_break_neg_flag%type;
48:
49: v_debug_status VARCHAR2(100);
50: v_doctype_id pon_auc_doctypes.doctype_id%TYPE;
51: v_transaction_type pon_auc_doctypes.transaction_type%TYPE;
52: v_site_id pon_auction_headers_all.trading_partner_id%TYPE;
53: v_site_name pon_auction_headers_all.trading_partner_name%TYPE;
54: v_multi_org fnd_product_groups.multi_org_flag%TYPE := 'Y';
55: v_price_tiers_indicator pon_auction_headers_all.price_tiers_indicator%type;
56:
49: v_debug_status VARCHAR2(100);
50: v_doctype_id pon_auc_doctypes.doctype_id%TYPE;
51: v_transaction_type pon_auc_doctypes.transaction_type%TYPE;
52: v_site_id pon_auction_headers_all.trading_partner_id%TYPE;
53: v_site_name pon_auction_headers_all.trading_partner_name%TYPE;
54: v_multi_org fnd_product_groups.multi_org_flag%TYPE := 'Y';
55: v_price_tiers_indicator pon_auction_headers_all.price_tiers_indicator%type;
56:
57: l_price_break_response pon_auction_headers_all.price_break_response%type;
51: v_transaction_type pon_auc_doctypes.transaction_type%TYPE;
52: v_site_id pon_auction_headers_all.trading_partner_id%TYPE;
53: v_site_name pon_auction_headers_all.trading_partner_name%TYPE;
54: v_multi_org fnd_product_groups.multi_org_flag%TYPE := 'Y';
55: v_price_tiers_indicator pon_auction_headers_all.price_tiers_indicator%type;
56:
57: l_price_break_response pon_auction_headers_all.price_break_response%type;
58:
59: l_style_name po_doc_style_headers.style_name%TYPE;
53: v_site_name pon_auction_headers_all.trading_partner_name%TYPE;
54: v_multi_org fnd_product_groups.multi_org_flag%TYPE := 'Y';
55: v_price_tiers_indicator pon_auction_headers_all.price_tiers_indicator%type;
56:
57: l_price_break_response pon_auction_headers_all.price_break_response%type;
58:
59: l_style_name po_doc_style_headers.style_name%TYPE;
60: l_style_description po_doc_style_headers.style_description%TYPE;
61: l_style_type po_doc_style_headers.style_type%TYPE;
212: v_doctype_id,
213: v_site_id,
214: l_price_break_response);
215:
216: -- Insert a row into PON_AUCTION_HEADERS_ALL
217: -- See NegotiationDoc.java for the majority of defaulting - setDefaults()
218:
219: -- Get all the style related columns from PON_NEGOTIATION_STYLES table for the style id.
220: -- Populate all the style related columns in PON_AUCTION_HEADERS_ALL table.
216: -- Insert a row into PON_AUCTION_HEADERS_ALL
217: -- See NegotiationDoc.java for the majority of defaulting - setDefaults()
218:
219: -- Get all the style related columns from PON_NEGOTIATION_STYLES table for the style id.
220: -- Populate all the style related columns in PON_AUCTION_HEADERS_ALL table.
221: -- This procedure is invoked from two flows.
222: -- 1. HTML Autocreate : We select the syle id from the UI and the style id is passed as an arugment here.
223: -- 2. Forms based Autocreate : We will not have any option to select style from the forms and the style id wil be null here.
224: IF P_NEG_STYLE_ID IS NOT NULL THEN
272: p_doctype_id => v_doctype_id,
273: x_price_tiers_indicator => v_price_tiers_indicator);
274:
275: v_debug_status := 'INSERT-PAH';
276: INSERT INTO PON_AUCTION_HEADERS_ALL (
277: AUCTION_HEADER_ID,
278: DOCUMENT_NUMBER,
279: AUCTION_HEADER_ID_ORIG_AMEND,
280: AUCTION_HEADER_ID_ORIG_ROUND,
331: TEAM_SCORING_ENABLED_FLAG,
332: PRICE_TIERS_INDICATOR,
333: QTY_PRICE_TIERS_ENABLED_FLAG
334: ) VALUES (
335: pon_auction_headers_all_s.nextval, -- AUCTION_HEADER_ID
336: pon_auction_headers_all_s.currval, -- DOCUMENT_NUMBER
337: pon_auction_headers_all_s.currval, -- AUCTION_HEADER_ID_ORIG_AMEND,
338: pon_auction_headers_all_s.currval, -- AUCTION_HEADER_ID_ORIG_ROUND,
339: 0, -- AMENDMENT_NUMBER
332: PRICE_TIERS_INDICATOR,
333: QTY_PRICE_TIERS_ENABLED_FLAG
334: ) VALUES (
335: pon_auction_headers_all_s.nextval, -- AUCTION_HEADER_ID
336: pon_auction_headers_all_s.currval, -- DOCUMENT_NUMBER
337: pon_auction_headers_all_s.currval, -- AUCTION_HEADER_ID_ORIG_AMEND,
338: pon_auction_headers_all_s.currval, -- AUCTION_HEADER_ID_ORIG_ROUND,
339: 0, -- AMENDMENT_NUMBER
340: P_DOCUMENT_TITLE, -- AUCTION_TITLE
333: QTY_PRICE_TIERS_ENABLED_FLAG
334: ) VALUES (
335: pon_auction_headers_all_s.nextval, -- AUCTION_HEADER_ID
336: pon_auction_headers_all_s.currval, -- DOCUMENT_NUMBER
337: pon_auction_headers_all_s.currval, -- AUCTION_HEADER_ID_ORIG_AMEND,
338: pon_auction_headers_all_s.currval, -- AUCTION_HEADER_ID_ORIG_ROUND,
339: 0, -- AMENDMENT_NUMBER
340: P_DOCUMENT_TITLE, -- AUCTION_TITLE
341: 'DRAFT', -- AUCTION_STATUS
334: ) VALUES (
335: pon_auction_headers_all_s.nextval, -- AUCTION_HEADER_ID
336: pon_auction_headers_all_s.currval, -- DOCUMENT_NUMBER
337: pon_auction_headers_all_s.currval, -- AUCTION_HEADER_ID_ORIG_AMEND,
338: pon_auction_headers_all_s.currval, -- AUCTION_HEADER_ID_ORIG_ROUND,
339: 0, -- AMENDMENT_NUMBER
340: P_DOCUMENT_TITLE, -- AUCTION_TITLE
341: 'DRAFT', -- AUCTION_STATUS
342: 'NO', -- AWARD_STATUS
482: v_debug_status VARCHAR2(100);
483: v_was_grouped VARCHAR2(1);
484: v_header_attach_count NUMBER;
485: v_item_attach_count NUMBER;
486: v_site_id pon_auction_headers_all.trading_partner_id%TYPE :=NULL;
487: v_org_id pon_auction_headers_all.org_id%TYPE;
488: v_seq_num fnd_attached_documents.seq_num%TYPE;
489: v_price pon_auction_item_prices_all.current_price%TYPE;
490: v_category_name pon_auction_item_prices_all.category_name%TYPE;
483: v_was_grouped VARCHAR2(1);
484: v_header_attach_count NUMBER;
485: v_item_attach_count NUMBER;
486: v_site_id pon_auction_headers_all.trading_partner_id%TYPE :=NULL;
487: v_org_id pon_auction_headers_all.org_id%TYPE;
488: v_seq_num fnd_attached_documents.seq_num%TYPE;
489: v_price pon_auction_item_prices_all.current_price%TYPE;
490: v_category_name pon_auction_item_prices_all.category_name%TYPE;
491: v_ip_category_id pon_auction_item_prices_all.ip_category_id%TYPE;
631: v_debug_status := 'ORG_ID_MATCH';
632: BEGIN
633: SELECT org_id
634: INTO v_org_id
635: FROM pon_auction_headers_all
636: WHERE auction_header_id = P_DOCUMENT_NUMBER
637: AND nvl(org_id, -9999) = nvl(P_ORG_ID, -9999);
638: EXCEPTION
639: WHEN no_data_found THEN
695: -- in which case we want to update the global agreement flag at the
696: -- header level, since temp labor line types can exist only on
697: -- global agreements
698: IF (v_purchase_basis = 'TEMP LABOR' AND p_contract_type = 'BLANKET' ) THEN
699: UPDATE pon_auction_headers_all
700: SET global_agreement_flag = 'Y'
701: WHERE auction_header_id = p_document_number;
702: END IF;
703:
1022: -- the newly added line. So this value can be used for the fields
1023: -- number_of_lines and last_line_number.
1024: -- The number of lines will be equal to the line number of the new line added
1025: -- The last line number will be equal to the line number of the newly added line
1026: UPDATE PON_AUCTION_HEADERS_ALL
1027: SET
1028: NUMBER_OF_LINES = P_LINE_NUMBER,
1029: LAST_LINE_NUMBER = P_LINE_NUMBER
1030: WHERE
1130: P_DOCUMENT_NUMBER IN NUMBER,
1131: X_RETURN_STATUS OUT NOCOPY VARCHAR2,
1132: X_MSG_COUNT OUT NOCOPY NUMBER,
1133: X_MSG_DATA OUT NOCOPY VARCHAR2) IS
1134: v_contract_type pon_auction_headers_all.contract_type%TYPE;
1135: v_buyer_id NUMBER;
1136: v_ip_attr_default_option VARCHAR2(10);
1137: v_default_attr_group pon_auction_attributes.attr_group%TYPE;
1138: v_attr_group_name fnd_lookup_values.meaning%TYPE;
1167: BEGIN
1168:
1169: SELECT contract_type, created_by
1170: INTO v_contract_type, v_buyer_id
1171: FROM pon_auction_headers_all
1172: WHERE auction_header_id = p_document_number;
1173:
1174: v_ip_attr_default_option := fnd_profile.value('PON_IP_ATTR_DEFAULT_OPTION');
1175:
1184: from pon_party_preferences ppp,
1185: fnd_lookup_values flv
1186: where ppp.app_short_name = 'PON' and
1187: ppp.preference_name = 'LINE_ATTR_DEFAULT_GROUP' and
1188: ppp.party_id = (select trading_partner_id from pon_auction_headers_all where auction_header_id = p_document_number) and
1189: flv.lookup_type = 'PON_LINE_ATTRIBUTE_GROUPS' and
1190: nvl(ppp.preference_value,'GENERAL') = flv.lookup_code and
1191: flv.view_application_id = 0 and
1192: flv.security_group_id = 0 and
1523: BEGIN
1524: BEGIN
1525: SELECT u1.user_name, u2.user_name
1526: INTO P_OWNER_NAME, v_buyer_name
1527: FROM fnd_user u1, fnd_user u2, pon_auction_headers_all ah
1528: WHERE ah.auction_header_id = P_DOCUMENT_NUMBER
1529: AND ah.trading_partner_contact_id = u1.person_party_id(+)
1530: AND ah.buyer_id = u2.user_id(+);
1531: EXCEPTION
1585: BEGIN
1586: BEGIN
1587: SELECT ah.auction_header_id, ah.document_number
1588: INTO P_DOCUMENT_ID, P_DOCUMENT_NUMBER
1589: FROM pon_bid_headers bh, pon_auction_headers_all ah
1590: WHERE bh.po_header_id = P_PO_HEADER_ID
1591: AND bh.auction_header_id = ah.auction_header_id;
1592: EXCEPTION
1593: WHEN no_data_found THEN
1713: nvl(prl.vendor_site_id, -1) vendor_site_id,
1714: nvl(ps.vendor_site_code, -1) vendor_site_code
1715: FROM po_requisition_lines_all prl,
1716: pon_backing_requisitions ponbr,
1717: pon_auction_headers_all ponah,
1718: po_vendors pv,
1719: po_vendor_sites_all ps
1720: WHERE ponah.auction_header_id = p_document_number
1721: and ponbr.auction_header_id = ponah.auction_header_id