DBA Data[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;