[Home] [Help]
PACKAGE: APPS.PO_ADVANCED_PRICE_PVT
Source
1 PACKAGE PO_ADVANCED_PRICE_PVT AS
2 /* $Header: POXQPRVS.pls 120.5 2005/10/21 05:07:12 ankhanna noship $*/
3
4
5 g_NO_VALID_PERIOD_EXC EXCEPTION;
6 g_SUBMISSION_CHECK_EXC EXCEPTION;
7
8 -------------------------------------------------------------------------------
9 -- Package types
10 -------------------------------------------------------------------------------
11 -- Header record type
12 TYPE Header_Rec_Type IS RECORD
13 ( org_id PO_HEADERS.org_id%TYPE
14 , p_order_header_id PO_HEADERS.po_header_id%TYPE
15 , supplier_id PO_HEADERS.vendor_id%TYPE
16 , supplier_site_id PO_HEADERS.vendor_site_id%TYPE
17 , creation_date PO_HEADERS.creation_date%TYPE
18 , order_type VARCHAR2(20) -- REQUISITION/PO
19 , ship_to_location_id PO_HEADERS.ship_to_location_id%TYPE
20 , ship_to_org_id PO_HEADERS.org_id%TYPE
21 -- New Attributes for Receiving
22 -- <FSC R12 START>
23 , shipment_header_id RCV_SHIPMENT_HEADERS.shipment_header_id%TYPE
24 , hazard_class RCV_SHIPMENT_HEADERS.hazard_class%TYPE
25 , hazard_code RCV_SHIPMENT_HEADERS.hazard_code%TYPE
26 , shipped_date RCV_SHIPMENT_HEADERS.shipped_date%TYPE
27 , shipment_num RCV_SHIPMENT_HEADERS.shipment_num%TYPE
28 , carrier_method RCV_SHIPMENT_HEADERS.carrier_method%TYPE
29 , packaging_code RCV_SHIPMENT_HEADERS.packaging_code%TYPE
30 , freight_carrier_code RCV_SHIPMENT_HEADERS.freight_carrier_code%TYPE
31 , freight_terms RCV_SHIPMENT_HEADERS.freight_terms%TYPE
32 , currency_code RCV_SHIPMENT_HEADERS.currency_code%TYPE
33 , rate RCV_SHIPMENT_HEADERS.conversion_rate%TYPE
34 , rate_type RCV_SHIPMENT_HEADERS.conversion_rate_type%TYPE
35 , source_org_id RCV_SHIPMENT_HEADERS.organization_id%TYPE
36 , expected_receipt_date RCV_SHIPMENT_HEADERS.expected_receipt_date%TYPE
37 -- <FSC R12 END>
38 );
39
40 -- Line record type
41 TYPE Line_Rec_Type IS RECORD
42 ( order_line_id PO_LINES.po_line_id%TYPE
43 , agreement_type PO_HEADERS.type_lookup_code%TYPE
44 , agreement_id PO_HEADERS.po_header_id%TYPE
45 , agreement_line_id PO_LINES.po_line_id%TYPE --<R12 GBPA Adv Pricing>
46 , supplier_id PO_HEADERS.vendor_id%TYPE
47 , supplier_site_id PO_HEADERS.vendor_site_id%TYPE
48 , ship_to_location_id PO_LINE_LOCATIONS.ship_to_location_id%TYPE
49 , ship_to_org_id PO_LINE_LOCATIONS.ship_to_organization_id%TYPE
50 , supplier_item_num PO_LINES.vendor_product_num%TYPE
51 , item_revision PO_LINES.item_revision%TYPE
52 , item_id PO_LINES.item_id%TYPE
53 , category_id PO_LINES.category_id%TYPE
54 , rate PO_HEADERS.rate%TYPE
55 , rate_type PO_HEADERS.rate_type%TYPE
56 , currency_code PO_HEADERS.currency_code%TYPE
57 , need_by_date PO_LINE_LOCATIONS.need_by_date%TYPE
58 -- <FSC R12 START>
59 -- New Attributes for Receiving
60 , shipment_line_id RCV_SHIPMENT_LINES.shipment_line_id%TYPE
61 , primary_unit_of_measure RCV_SHIPMENT_LINES.primary_unit_of_measure%TYPE
62 , to_organization_id RCV_SHIPMENT_LINES.to_organization_id%TYPE
63 , unit_of_measure RCV_SHIPMENT_LINES.unit_of_measure%TYPE
64 , source_document_code RCV_SHIPMENT_LINES.source_document_code%TYPE
65 , unit_price RCV_SHIPMENT_LINES.shipment_unit_price%TYPE
66 , quantity RCV_SHIPMENT_LINES.quantity_received%TYPE
67 -- <FSC R12 END>
68 );
69
70 -- <FSC R12 START>
71 -- QP Result Record to capture information returned by QP.
72 -- Record to keep the freight charge info per line
73 Type Freight_Charges_Rec_Type is RECORD
74 (
75 charge_type_code QP_PREQ_LDETS_TMP_T.charge_type_code%TYPE,
76 freight_charge QP_PREQ_LDETS_TMP_T.ORDER_QTY_ADJ_AMT%TYPE,
77 pricing_status_code QP_PREQ_LDETS_TMP_T.pricing_status_code%TYPE,
78 pricing_status_text QP_PREQ_LDETS_TMP_T.pricing_status_text%TYPE
79 );
80
81 Type Freight_Charges_Rec_Tbl_Type is table of Freight_Charges_Rec_Type;
82
83 --Record to keep the price/charge info per line.
84 Type Qp_Price_Result_Rec_Type is RECORD
85 (
86 line_index QP_PREQ_LDETS_TMP_T.line_index%TYPE,
87 line_id NUMBER,
88 base_unit_price NUMBER,
89 adjusted_price NUMBER,
90 freight_charge_rec_tbl freight_charges_rec_tbl_type,
91 pricing_status_code QP_PREQ_LDETS_TMP_T.pricing_status_code%TYPE,
92 pricing_status_text QP_PREQ_LDETS_TMP_T.pricing_status_text%TYPE
93 );
94
95 Type Qp_Price_Result_Rec_Tbl_Type is table of Qp_Price_Result_Rec_Type;
96
97 Type Line_Tbl_Type is table of Line_Rec_Type;
98 -- <FSC R12 END>
99 -------------------------------------------------------------------------------
100 -- Global package variables
101 -------------------------------------------------------------------------------
102
103 --Global Variables for Attribute Mapping during Pricing
104 G_HDR Header_Rec_Type;
105 G_LINE Line_Rec_Type;
106
107 -------------------------------------------------------------------------------
108 -- Package procedures
109 -------------------------------------------------------------------------------
110
111 PROCEDURE get_advanced_price
112 ( p_org_id IN NUMBER
113 , p_supplier_id IN NUMBER
114 , p_supplier_site_id IN NUMBER
115 , p_creation_date IN DATE
116 , p_order_type IN VARCHAR2
117 , p_ship_to_location_id IN NUMBER
118 , p_ship_to_org_id IN NUMBER
119 , p_order_header_id IN NUMBER
120 , p_order_line_id IN NUMBER
121 , p_item_revision IN VARCHAR2 -- Bug 3330884
122 , p_item_id IN NUMBER
123 , p_category_id IN NUMBER
124 , p_supplier_item_num IN VARCHAR2
125 , p_agreement_type IN VARCHAR2
126 , p_agreement_id IN NUMBER
127 , p_agreement_line_id IN NUMBER DEFAULT NULL --<R12 GBPA Adv Pricing>
128 , p_rate IN NUMBER
129 , p_rate_type IN VARCHAR2
130 , p_currency_code IN VARCHAR2
131 , p_need_by_date IN DATE
132 , p_quantity IN NUMBER
133 , p_uom IN VARCHAR2
134 , p_unit_price IN NUMBER
135 , x_base_unit_price OUT NOCOPY NUMBER
136 , x_unit_price OUT NOCOPY NUMBER
137 , x_return_status OUT NOCOPY VARCHAR2
138 );
139
140
141 FUNCTION is_valid_qp_line_type
142 ( p_line_type_id IN NUMBER
143 ) RETURN BOOLEAN;
144
145 -- <FSC R12 START>
146 Procedure get_advanced_price(p_header_rec IN Header_Rec_Type,
147 p_line_rec_tbl IN Line_Tbl_Type,
148 p_request_type IN VARCHAR2,
149 p_pricing_event IN VARCHAR2,
150 p_has_header_pricing IN boolean,
151 p_return_price_flag IN boolean,
152 p_return_freight_flag IN boolean,
153 x_price_tbl OUT NOCOPY Qp_Price_Result_Rec_Tbl_Type,
154 x_return_status OUT NOCOPY VARCHAR2);
155 -- <FSC R12 END>
156
157 END PO_ADVANCED_PRICE_PVT;