DBA Data[Home] [Help]

PACKAGE: APPS.DPP_UTILITY_PVT

Source


1 PACKAGE DPP_UTILITY_PVT as
2 /* $Header: dppvutls.pls 120.8 2008/05/16 06:18:26 sdasan noship $ */
3 
4 ------------------------------------------------------------------------------
5 -- HISTORY
6 --    24-Aug-2007  JAJOSE     Creation
7 
8 ------------------------------------------------------------------------------
9 DPP_DEBUG_HIGH_ON CONSTANT BOOLEAN := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_HIGH);
10 DPP_DEBUG_LOW_ON CONSTANT BOOLEAN := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
11 DPP_DEBUG_MEDIUM_ON CONSTANT BOOLEAN := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_MEDIUM);
12 
13 resource_locked EXCEPTION;
14 pragma EXCEPTION_INIT(resource_locked, -54);
15 
16 TYPE search_criteria_rec_type IS RECORD
17 (
18 search_criteria  VARCHAR2(50), -- contains criteria name
19 search_text   VARCHAR2(255)     -- contains criteria value
20 );
21 TYPE search_criteria_tbl_type IS TABLE OF search_criteria_rec_type INDEX BY BINARY_INTEGER;
22 
23 
24 TYPE vendor_rec_type IS RECORD
25 (
26  vendor_id  NUMBER,
27  vendor_number VARCHAR2(30),
28  vendor_name VARCHAR2(240)
29 );
30 
31 TYPE vendor_tbl_type IS TABLE OF vendor_rec_type INDEX BY BINARY_INTEGER;
32 
33 TYPE vendor_site_rec_type IS RECORD
34 (
35  vendor_id	NUMBER,
36  vendor_site_id  NUMBER,
37  vendor_site_code VARCHAR2(15),
38  address_line1 VARCHAR2(240),
39  address_line2 VARCHAR2(240),
40  address_line3 VARCHAR2(240),
41  city VARCHAR2(25),
42  state VARCHAR2(150),
43  zip VARCHAR2(20),
44 country VARCHAR2(25)
45 );
46 
47 TYPE vendor_site_tbl_type IS TABLE OF vendor_site_rec_type INDEX BY BINARY_INTEGER;
48 
49 TYPE vendor_contact_rec_type IS RECORD
50 (
51  vendor_site_id  NUMBER,
52  vendor_contact_id	NUMBER,
53  contact_first_name VARCHAR2(15),
54  contact_middle_name VARCHAR2(15),
55  contact_last_name VARCHAR2(20),
56  contact_phone              VARCHAR2(40),
57  contact_email_address      VARCHAR2(2000),
58  contact_fax                VARCHAR2(40)
59 );
60 
61 TYPE vendor_contact_tbl_type IS TABLE OF vendor_contact_rec_type INDEX BY BINARY_INTEGER;
62 
63 TYPE customer_rec_type IS RECORD
64 (
65  customer_id  NUMBER,
66  customer_number VARCHAR2(30),
67  customer_name VARCHAR2(360)
68 );
69 
70 TYPE customer_tbl_type IS TABLE OF customer_rec_type INDEX BY BINARY_INTEGER;
71 
72 TYPE item_rec_type IS RECORD
73 (
74  inventory_item_id  NUMBER,
75  item_number VARCHAR2(40),
76  DESCRIPTION  VARCHAR2(240)
77 );
78 
79 TYPE item_tbl_type IS TABLE OF item_rec_type INDEX BY BINARY_INTEGER;
80 TYPE itemnum_rec_type IS RECORD
81 (
82  inventory_item_id  NUMBER,
83  item_number VARCHAR2(40),
84  DESCRIPTION  VARCHAR2(240),
85  vendor_part_no  VARCHAR2(40)
86 );
87 
88 TYPE itemnum_tbl_type IS TABLE OF itemnum_rec_type INDEX BY BINARY_INTEGER;
89 
90 
91 TYPE warehouse_rec_type IS RECORD
92 (
93     warehouse_id				NUMBER,
94     warehouse_code			VARCHAR2(3),
95     Warehouse_Name      VARCHAR2(240)
96 );
97 
98 TYPE warehouse_tbl_type IS TABLE OF warehouse_rec_type INDEX BY BINARY_INTEGER;
99 
100 TYPE dpp_inv_hdr_rec_type IS RECORD
101 (
102   org_id	NUMBER,
103   effective_start_date	DATE,
104   effective_end_date	DATE,
105   currency_code	VARCHAR2(15)
106 );
107 
108 TYPE dpp_inv_cov_rct_rec_type IS RECORD
109 (
110     Date_Received           DATE,
111     Onhand_quantity	        NUMBER
112 );
113 
114 TYPE dpp_inv_cov_rct_tbl_type IS TABLE OF dpp_inv_cov_rct_rec_type INDEX BY BINARY_INTEGER;
115 
116 TYPE dpp_inv_cov_wh_rec_type IS RECORD
117 (
118     warehouse_id				NUMBER,
119     Warehouse_Name           VARCHAR2(240),
120     Covered_quantity	        NUMBER,
121     rct_line_tbl             dpp_inv_cov_rct_tbl_type
122 );
123 
124 TYPE dpp_inv_cov_wh_tbl_type IS TABLE OF dpp_inv_cov_wh_rec_type INDEX BY BINARY_INTEGER;
125 
126 TYPE dpp_inv_cov_rec_type IS RECORD
127 (
128     Transaction_Line_Id			NUMBER,
129     Inventory_ITem_ID					NUMBER,
130     UOM_Code									VARCHAR2(3),
131     Onhand_Quantity           NUMBER,
132     Covered_quantity	        NUMBER,
133     wh_line_tbl             dpp_inv_cov_wh_tbl_type
134 );
135 
136 TYPE dpp_inv_cov_tbl_type IS TABLE OF dpp_inv_cov_rec_type INDEX BY BINARY_INTEGER;
137 
138 TYPE inventorydetails_rec_type IS RECORD
139 (
140     Transaction_Line_Id			NUMBER,
141     Inventory_Item_ID					NUMBER,
142     UOM_Code									VARCHAR2(3),
143     Onhand_Quantity           NUMBER,
144     Covered_quantity	        NUMBER
145 );
146 
147 TYPE inventorydetails_tbl_type IS TABLE OF inventorydetails_rec_type INDEX BY BINARY_INTEGER;
148 
149 TYPE dpp_cust_inv_rec_type IS RECORD
150 (
151     Customer_ID								NUMBER,
152     Inventory_Item_ID					NUMBER,
153     UOM_Code									VARCHAR2(3),
154     Onhand_Quantity           NUMBER
155 );
156 
157 TYPE dpp_cust_inv_tbl_type IS TABLE OF dpp_cust_inv_rec_type INDEX BY BINARY_INTEGER;
158 
159 TYPE dpp_cust_price_rec_type IS RECORD
160 (
161   Customer_ID	          NUMBER,
162   Inventory_Item_ID	  NUMBER,
163   UOM_Code		  VARCHAR2(15),
164   Last_Price              NUMBER,
165   invoice_currency_code    VARCHAR2(15),
166   price_change            NUMBER,
167   converted_price_change  NUMBER
168 );
169 
170 TYPE dpp_cust_price_tbl_type IS TABLE OF dpp_cust_price_rec_type INDEX BY BINARY_INTEGER;
171 
172 TYPE dpp_list_price_rec_type IS RECORD
173 (
174     Inventory_Item_ID					NUMBER,
175     List_Price						NUMBER
176 );
177 
178 TYPE dpp_list_price_tbl_type IS TABLE OF dpp_list_price_rec_type INDEX BY BINARY_INTEGER;
179 
180 PROCEDURE search_vendors(
181     p_search_criteria IN  search_criteria_tbl_type
182    ,x_vendor_tbl OUT NOCOPY vendor_tbl_type
183    ,x_rec_count	OUT NOCOPY NUMBER
184    ,x_return_status OUT NOCOPY VARCHAR2
185    );
186 
187 PROCEDURE search_vendor_sites(
188     p_search_criteria IN  search_criteria_tbl_type
189    ,x_vendor_site_tbl OUT NOCOPY vendor_site_tbl_type
190    ,x_rec_count	OUT NOCOPY NUMBER
191    ,x_return_status OUT NOCOPY VARCHAR2
192    );
193 
194 PROCEDURE search_vendor_contacts(
195     p_search_criteria IN  search_criteria_tbl_type
196    ,x_vendor_contact_tbl OUT NOCOPY vendor_contact_tbl_type
197    ,x_rec_count	OUT NOCOPY NUMBER
198    ,x_return_status OUT NOCOPY VARCHAR2
199    );
200 
201 PROCEDURE search_items(
202     p_search_criteria IN  search_criteria_tbl_type
203    ,x_item_tbl OUT NOCOPY itemnum_tbl_type
204    ,x_rec_count	OUT NOCOPY NUMBER
205    ,x_return_status OUT NOCOPY VARCHAR2
206    );
207 
208 PROCEDURE search_customer_items(
209     p_search_criteria IN  search_criteria_tbl_type
210    ,x_customer_item_tbl OUT NOCOPY item_tbl_type
211    ,x_rec_count	OUT NOCOPY NUMBER
212    ,x_return_status OUT NOCOPY VARCHAR2
213    );
214 
215 PROCEDURE search_warehouses(
216     p_search_criteria IN  search_criteria_tbl_type
217    ,x_warehouse_tbl OUT NOCOPY warehouse_tbl_type
218    ,x_rec_count	OUT NOCOPY NUMBER
219    ,x_return_status OUT NOCOPY VARCHAR2
220    );
221 
222 PROCEDURE Get_CoveredInventory(
223 		p_hdr_rec		IN dpp_inv_hdr_rec_type
224 	 ,p_covered_inv_tbl	     IN OUT NOCOPY dpp_inv_cov_tbl_type
225    ,x_return_status	     OUT 	NOCOPY  VARCHAR2
226 );
227 
228 PROCEDURE Get_InventoryDetails(
229 		p_hdr_rec		IN dpp_inv_hdr_rec_type
230 	 ,p_inventorydetails_tbl	     IN OUT NOCOPY inventorydetails_tbl_type
231 	 ,x_rec_count	OUT NOCOPY NUMBER
232    ,x_return_status	     OUT 	  NOCOPY VARCHAR2
233 );
234 
235 PROCEDURE Get_CustomerInventory(
236 		p_hdr_rec			IN dpp_inv_hdr_rec_type
237 	 ,p_cust_inv_tbl	     IN OUT NOCOPY dpp_cust_inv_tbl_type
238 	 ,x_rec_count	OUT NOCOPY NUMBER
239    ,x_return_status	     OUT 	  NOCOPY VARCHAR2
240 );
241 
242 PROCEDURE search_customers(
243     p_search_criteria IN  search_criteria_tbl_type
244    ,x_customer_tbl OUT NOCOPY customer_tbl_type
245    ,x_rec_count	OUT NOCOPY NUMBER
246    ,x_return_status OUT NOCOPY VARCHAR2
247    );
248 
249 PROCEDURE Get_LastPrice(
250 		p_hdr_rec			IN dpp_inv_hdr_rec_type
251 	 ,p_cust_price_tbl	IN OUT NOCOPY dpp_cust_price_tbl_type
252 	 ,x_rec_count	OUT NOCOPY NUMBER
253    ,x_return_status	     OUT 	  NOCOPY VARCHAR2
254 );
255 
256 PROCEDURE Get_ListPrice(
257 		p_hdr_rec			IN dpp_inv_hdr_rec_type
258 	 ,p_listprice_tbl	     IN OUT NOCOPY dpp_list_price_tbl_type
259 	 ,x_rec_count	OUT NOCOPY NUMBER
260    ,x_return_status	     OUT NOCOPY	  VARCHAR2
261 );
262 
263 PROCEDURE Get_Vendor(
264 	p_vendor_rec IN OUT NOCOPY vendor_rec_type
265 	,x_rec_count		OUT NOCOPY NUMBER
266   ,x_return_status	OUT NOCOPY	  VARCHAR2
267 );
268 
269 PROCEDURE Get_Vendor_Site(
270 	p_vendor_site_rec IN OUT NOCOPY vendor_site_rec_type
271 	,x_rec_count		OUT NOCOPY NUMBER
272   ,x_return_status	OUT NOCOPY	  VARCHAR2
273 );
274 
275 PROCEDURE Get_Vendor_Contact(
276 	 p_vendor_contact_rec IN OUT NOCOPY vendor_contact_rec_type
277 	,x_rec_count		OUT NOCOPY NUMBER
278   ,x_return_status	OUT NOCOPY	  VARCHAR2
279 );
280 
281 PROCEDURE Get_Warehouse(
282 	 p_warehouse_tbl	     	IN OUT NOCOPY warehouse_tbl_type
283 	 ,x_rec_count		OUT NOCOPY NUMBER
284    	,x_return_status	OUT NOCOPY	  VARCHAR2
285 );
286 
287 PROCEDURE Get_Customer(
288 	p_customer_tbl IN OUT NOCOPY customer_tbl_type
289 	 ,x_rec_count		OUT NOCOPY NUMBER
290    	,x_return_status	OUT NOCOPY	  VARCHAR2
291 );
292 
293 PROCEDURE Get_Product(
294 	 p_item_tbl	     	IN OUT NOCOPY item_tbl_type
295  	,p_org_id    IN    NUMBER
296 	 ,x_rec_count		OUT NOCOPY NUMBER
297    	,x_return_status	OUT NOCOPY	  VARCHAR2
298 );
299 
300 
301 --To be used incase we are storing the log messages in the fnd_log_messages table
302 --Currently all debug messages are going into the DPP_LOG_MESSAGES table
303 
304 /*PROCEDURE debug_message (p_log_level IN NUMBER,
305                        p_module_name    IN VARCHAR2,
306                        p_text   IN VARCHAR2);*/
307 
308 PROCEDURE debug_message(
309 									    p_message_text   IN  VARCHAR2,
310 									    p_message_level  IN  NUMBER := NULL
311 );
312 
313 PROCEDURE error_message(
314    p_message_name VARCHAR2,
315    p_token_name   VARCHAR2 := NULL,
316    P_token_value  VARCHAR2 := NULL
317 );
318 
319 PROCEDURE get_EmailAddress(
320 	 p_user_id IN NUMBER
321 	 ,x_email_address	OUT NOCOPY VARCHAR2
322    ,x_return_status	OUT NOCOPY	  VARCHAR2
323 );
324 
325 ---------------------------------------------------------------------
326 -- PROCEDURE
327 --    Convert_Currency
328 -- NOTE
329 
330 -- HISTORY
331 --parameter p_from_currency      IN  VARCHAR2,
332 --   p_to_currency        IN  VARCHAR2,
333 --   p_conv_date          IN  DATE DEFAULT SYSDATE,
334 --   p_from_amount        IN  NUMBER,
335 --   x_to_amount          OUT NUMBER
336 --    If x_conversion_type = 'User', and the relationship between the
337 --    two currencies is not fixed, x_user_rate will be used as the
338 --    conversion rate to convert the amount
339 --    else no_user_rate is required
340 ---------------------------------------------------------------------
341 
342 PROCEDURE convert_currency(
343    p_from_currency   IN       VARCHAR2
344   ,p_to_currency     IN       VARCHAR2
345   ,p_conv_type       IN       VARCHAR2 DEFAULT FND_API.G_MISS_CHAR
346   ,p_conv_rate       IN       NUMBER   DEFAULT FND_API.G_MISS_NUM
347   ,p_conv_date       IN       DATE     DEFAULT SYSDATE
348   ,p_from_amount     IN       NUMBER
349   ,x_return_status   OUT NOCOPY      VARCHAR2
350   ,x_to_amount       OUT NOCOPY      NUMBER
351   ,x_rate            OUT NOCOPY      NUMBER);
352 
353 ---------------------------------------------------------------------
354 -- PROCEDURE
355 --    Convert_functional_Curr
356 -- NOTE
357 -- This procedures takes in amount and converts it to the functional currency
358 --  and returns the converted amount,exchange_rate,set_of_book_id,
359 --  f-nctional_currency_code,exchange_rate_date
360 
361 -- HISTORY
362 
363 --parameter x_Amount1 IN OUT NUMBER -- reqd Parameter -- amount to be converted
364 --   x_TC_CURRENCY_CODE IN OUT VARCHAR2,
365 --   x_Set_of_books_id OUT NUMBER,
366 --   x_MRC_SOB_TYPE_CODE OUT NUMBER, 'P' and 'R'
367 --     We only do it for primary ('P' because we donot supprot MRC)
368 --   x_FC_CURRENCY_CODE OUT VARCHAR2,
369 --   x_EXCHANGE_RATE_TYPE OUT VARCHAR2,
370 --     comes from a DPP profile  or what ever is passed
371 --   x_EXCHANGE_RATE_DATE  OUT DATE,
372 --     could come from a DPP profile but right now is sysdate
373 --   x_EXCHANGE_RATE       OUT VARCHAR2,
374 --   x_return_status      OUT VARCHAR2
375 -- The following is the rule in the GL API
376 --    If x_conversion_type = 'User', and the relationship between the
377 --    two currencies is not fixed, x_user_rate will be used as the
378 --    conversion rate to convert the amount
379 --    else no_user_rate is required
380 
381 ---------------------------------------------------------------------
382 
383 
384 PROCEDURE calculate_functional_curr(
385    p_from_amount          IN       NUMBER
386   ,p_conv_date            IN       DATE DEFAULT SYSDATE
387   ,p_tc_currency_code     IN       VARCHAR2
388   ,p_org_id               IN       NUMBER DEFAULT NULL
389   ,x_to_amount            OUT NOCOPY      NUMBER
390   ,x_set_of_books_id      OUT NOCOPY      NUMBER
391   ,x_mrc_sob_type_code    OUT NOCOPY      VARCHAR2
392   ,x_fc_currency_code     OUT NOCOPY      VARCHAR2
393   ,x_exchange_rate_type   IN OUT NOCOPY   VARCHAR2
394   ,x_exchange_rate        IN OUT NOCOPY   NUMBER
395   ,x_return_status        OUT NOCOPY      VARCHAR2);
396 
397 PROCEDURE check_Transaction(
398    p_transaction_header_id     IN NUMBER
399   ,p_status_change             IN VARCHAR2
400   ,x_rec_count                 OUT NOCOPY NUMBER
401   ,x_msg_data                  OUT NOCOPY VARCHAR2
402   ,x_return_status             OUT NOCOPY VARCHAR2);
403 END DPP_UTILITY_PVT;
404