259: x_bid_number pon_bid_headers.bid_number%type;
260: x_order_number pon_bid_headers.order_number%type;
261: x_award_quantity pon_bid_item_prices.award_quantity%type;
262: x_line_award_status pon_auction_item_prices_all.award_status%type;
263: x_stored_note_to_rejected pon_acceptances.reason%type;
264: x_error_code VARCHAR2(20);
265:
266: x_bid_number_list integerList;
267: x_bid_number_found BOOLEAN;
305: null -- p_billType: obsolete
306: );
307: */
308: -- added for the new award flow in FPJ
309: -- Need to take care of notes in pon_acceptances.
310: update_single_bid_item_prices
311: (
312: x_bid_number,
313: x_line_number,
350: ELSE
351: -- Update acceptances for the lines with award decision already made
352: x_stored_note_to_rejected := null;
353: x_count := 0;
354: SELECT count(*) INTO x_count FROM pon_acceptances
355: WHERE auction_header_id = p_auction_header_id
356: AND line_number = x_line_number
357: AND ACCEPTANCE_TYPE = 'REJECTED';
358: --
358: --
359: IF x_count > 0 THEN
360: -- rejection note exists and carried over for rejected suppliers
361: SELECT distinct REASON INTO x_stored_note_to_rejected
362: FROM pon_acceptances
363: WHERE auction_header_id = p_auction_header_id
364: AND line_number = x_line_number
365: AND ACCEPTANCE_TYPE = 'REJECTED';
366: END IF;
1098: update_auction_headers(p_auction_header_id, p_mode, l_award_date, p_auctioneer_id, l_neg_has_lines);
1099:
1100: IF l_neg_has_lines = 'Y' THEN -- FPK: CPA
1101:
1102: bulk_update_pon_acceptances(
1103: p_auction_header_id,
1104: null, null, null,
1105: l_award_date, p_auctioneer_id, p_mode);
1106: END IF;
1112: update_single_bid_header(l_bid_list(l_index),p_auctioneer_id);
1113: END LOOP;
1114: update_auction_item_prices(p_auction_header_id,p_line_num, l_award_date, p_auctioneer_id, p_mode);
1115: update_auction_headers(p_auction_header_id, p_mode, l_award_date, p_auctioneer_id, l_neg_has_lines);
1116: bulk_update_pon_acceptances(
1117: p_auction_header_id, p_line_num,
1118: p_note_to_accepted, p_note_to_rejected,
1119: l_award_date, p_auctioneer_id, p_mode);
1120: End IF; --}
1903: --
1904: END update_award_agreement_amount;
1905: --
1906: --
1907: PROCEDURE bulk_update_pon_acceptances
1908: ( p_auction_header_id IN NUMBER,
1909: p_line_number IN NUMBER,
1910: p_note_to_accepted IN VARCHAR2,
1911: p_note_to_rejected IN VARCHAR2,
1919: IF (p_mode = g_AWARD_GROUP OR p_mode = g_AWARD_GROUP_H) THEN
1920: -- Group Level Awards
1921: -- Insert empty notes for group lines
1922: -- Delete notes for a line
1923: DELETE FROM pon_acceptances
1924: WHERE auction_header_id = p_auction_header_id
1925: AND line_number IN (SELECT line_number FROM pon_auction_item_prices_all
1926: WHERE parent_line_number = p_line_number
1927: AND auction_header_id = p_auction_header_id);
1924: WHERE auction_header_id = p_auction_header_id
1925: AND line_number IN (SELECT line_number FROM pon_auction_item_prices_all
1926: WHERE parent_line_number = p_line_number
1927: AND auction_header_id = p_auction_header_id);
1928: INSERT INTO pon_acceptances (
1929: acceptance_id,
1930: auction_header_id,
1931: auction_line_number,
1932: bid_number,
1935: acceptance_date,
1936: reason,
1937: creation_date,
1938: created_by)
1939: SELECT pon_acceptances_s.nextval,
1940: bi.auction_header_id,
1941: bi.auction_line_number,
1942: bi.bid_number,
1943: bi.line_number,
1958: --
1959: ELSE
1960: -- Award Line Mode
1961: -- Delete notes for a line
1962: DELETE FROM pon_acceptances
1963: WHERE auction_header_id = p_auction_header_id
1964: AND line_number = p_line_number;
1965: INSERT INTO pon_acceptances (
1966: acceptance_id,
1961: -- Delete notes for a line
1962: DELETE FROM pon_acceptances
1963: WHERE auction_header_id = p_auction_header_id
1964: AND line_number = p_line_number;
1965: INSERT INTO pon_acceptances (
1966: acceptance_id,
1967: auction_header_id,
1968: auction_line_number,
1969: bid_number,
1972: acceptance_date,
1973: reason,
1974: creation_date,
1975: created_by)
1976: SELECT pon_acceptances_s.nextval,
1977: bi.auction_header_id,
1978: bi.auction_line_number,
1979: bi.bid_number,
1980: bi.line_number,
1996: END IF;
1997: ELSE
1998: -- Header Level Award
1999: -- Delete notes for an auction
2000: DELETE FROM pon_acceptances
2001: WHERE auction_header_id = p_auction_header_id;
2002: --
2003: INSERT INTO pon_acceptances (
2004: acceptance_id,
1999: -- Delete notes for an auction
2000: DELETE FROM pon_acceptances
2001: WHERE auction_header_id = p_auction_header_id;
2002: --
2003: INSERT INTO pon_acceptances (
2004: acceptance_id,
2005: auction_header_id,
2006: auction_line_number,
2007: bid_number,
2010: acceptance_date,
2011: reason,
2012: creation_date,
2013: created_by)
2014: SELECT pon_acceptances_s.nextval,
2015: bi.auction_header_id,
2016: bi.auction_line_number,
2017: bi.bid_number,
2018: bi.line_number,
2033: AND bi.auction_header_id = ai.auction_header_id
2034: AND bi.line_number = ai.line_number
2035: AND ai.group_type IN ('LOT', 'LINE', 'GROUP_LINE');
2036: END IF;
2037: END bulk_update_pon_acceptances;
2038: --
2039: --
2040: FUNCTION get_award_status (award_outcome IN VARCHAR2)
2041: RETURN VARCHAR2
2075: IS
2076: BEGIN
2077: -- Award Line Mode
2078: -- Delete rejected notes for a line
2079: DELETE FROM pon_acceptances
2080: WHERE auction_header_id = p_auction_header_id
2081: AND line_number = p_line_number
2082: AND acceptance_type = 'REJECTED';
2083: -- insert rejection note for all rejected suppliers
2080: WHERE auction_header_id = p_auction_header_id
2081: AND line_number = p_line_number
2082: AND acceptance_type = 'REJECTED';
2083: -- insert rejection note for all rejected suppliers
2084: INSERT INTO pon_acceptances (
2085: acceptance_id,
2086: auction_header_id,
2087: auction_line_number,
2088: bid_number,
2091: acceptance_date,
2092: reason,
2093: creation_date,
2094: created_by)
2095: SELECT pon_acceptances_s.nextval,
2096: bi.auction_header_id,
2097: bi.auction_line_number,
2098: bi.bid_number,
2099: bi.line_number,
2159: AND bid_status = 'ACTIVE'
2160: );
2161:
2162: -- Delete All Awards since it is a header-level awarding
2163: DELETE FROM pon_acceptances
2164: WHERE auction_header_id = p_auction_header_id;
2165:
2166: -- reset the award mode at auction item level
2167: UPDATE pon_auction_item_prices_all
2190: AND (line_number = p_line_number
2191: OR parent_line_number = p_line_number));
2192:
2193: -- Delete All group line awards since it is a group-level awarding
2194: DELETE FROM pon_acceptances
2195: WHERE auction_header_id = p_auction_header_id
2196: AND line_number IN (SELECT line_number
2197: FROM pon_auction_item_prices_all
2198: WHERE auction_header_id = p_auction_header_id
2440: /* FPK: CPA p_neg_has_lines parameter hardcoded to 'Y' as save_award_recommendation
2441: procedure will only be called if negotiation has lines */
2442: update_auction_headers(l_auction_header_id, p_mode, l_award_date, p_auctioneer_id, 'Y');
2443:
2444: bulk_update_pon_acceptances(
2445: l_auction_header_id,
2446: null, null, null,
2447: l_award_date, p_auctioneer_id, p_mode);
2448: --
2968:
2969: update_auction_item_prices(p_auction_header_id, l_item_list(l_index), l_award_date, p_auctioneer_id, p_mode);
2970:
2971: -- update acceptances per auction line
2972: bulk_update_pon_acceptances (
2973: p_auction_header_id, l_item_list(l_index),
2974: l_accept_list(l_item_list(l_index)), l_reject_list(l_item_list(l_index)),
2975: l_award_date, p_auctioneer_id, p_mode);
2976: