DBA Data[Home] [Help]

PACKAGE: APPS.DPP_UTILITY_PVT

Source


1 PACKAGE DPP_UTILITY_PVT AUTHID CURRENT_USER as
2 /* $Header: dppvutls.pls 120.15 2011/09/13 09:05:31 rvkondur ship $ */
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(240),
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(240),
84  DESCRIPTION  VARCHAR2(240),
85  vendor_part_no  VARCHAR2(240)
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_customer_items_all(
216     p_search_criteria IN  search_criteria_tbl_type
217    ,x_customer_item_tbl OUT NOCOPY item_tbl_type
218    ,x_rec_count	OUT NOCOPY NUMBER
219    ,x_return_status OUT NOCOPY VARCHAR2
220    );
221 
222 PROCEDURE search_warehouses(
223     p_search_criteria IN  search_criteria_tbl_type
224    ,x_warehouse_tbl OUT NOCOPY warehouse_tbl_type
225    ,x_rec_count	OUT NOCOPY NUMBER
226    ,x_return_status OUT NOCOPY VARCHAR2
227    );
228 
229 PROCEDURE Get_CoveredInventory(
230 		p_hdr_rec		IN dpp_inv_hdr_rec_type
231 	 ,p_covered_inv_tbl	     IN OUT NOCOPY dpp_inv_cov_tbl_type
232    ,x_return_status	     OUT 	NOCOPY  VARCHAR2
233 );
234 
235 PROCEDURE Get_InventoryDetails(
236 		p_hdr_rec		IN dpp_inv_hdr_rec_type
237 	 ,p_inventorydetails_tbl	     IN OUT NOCOPY inventorydetails_tbl_type
238 	 ,x_rec_count	OUT NOCOPY NUMBER
239    ,x_return_status	     OUT 	  NOCOPY VARCHAR2
240 );
241 
242 PROCEDURE Get_CustomerInventory(
243 		p_hdr_rec			IN dpp_inv_hdr_rec_type
244 	 ,p_cust_inv_tbl	     IN OUT NOCOPY dpp_cust_inv_tbl_type
245 	 ,x_rec_count	OUT NOCOPY NUMBER
246    ,x_return_status	     OUT 	  NOCOPY VARCHAR2
247 );
248 
249 PROCEDURE search_customers(
250     p_search_criteria IN  search_criteria_tbl_type
251    ,x_customer_tbl OUT NOCOPY customer_tbl_type
252    ,x_rec_count	OUT NOCOPY NUMBER
253    ,x_return_status OUT NOCOPY VARCHAR2
254    );
255 
256 PROCEDURE search_customers_all(
257     p_search_criteria IN  search_criteria_tbl_type
258    ,x_customer_tbl OUT NOCOPY customer_tbl_type
259    ,x_rec_count	OUT NOCOPY NUMBER
260    ,x_return_status OUT NOCOPY VARCHAR2
261    );
262 
263 PROCEDURE Get_LastPrice(
264 		p_hdr_rec			IN dpp_inv_hdr_rec_type
265 	 ,p_cust_price_tbl	IN OUT NOCOPY dpp_cust_price_tbl_type
266 	 ,x_rec_count	OUT NOCOPY NUMBER
267    ,x_return_status	     OUT 	  NOCOPY VARCHAR2
268 );
269 
270 PROCEDURE Get_ListPrice(
271 		p_hdr_rec			IN dpp_inv_hdr_rec_type
272 	 ,p_listprice_tbl	     IN OUT NOCOPY dpp_list_price_tbl_type
273 	 ,x_rec_count	OUT NOCOPY NUMBER
274    ,x_return_status	     OUT NOCOPY	  VARCHAR2
275 );
276 
277 PROCEDURE Get_Vendor(
278 	p_vendor_rec IN OUT NOCOPY vendor_rec_type
279 	,x_rec_count		OUT NOCOPY NUMBER
280   ,x_return_status	OUT NOCOPY	  VARCHAR2
281 );
282 
283 PROCEDURE Get_Vendor_Site(
284 	p_vendor_site_rec IN OUT NOCOPY vendor_site_rec_type
285 	,x_rec_count		OUT NOCOPY NUMBER
286   ,x_return_status	OUT NOCOPY	  VARCHAR2
287 );
288 
289 PROCEDURE Get_Vendor_Contact(
290 	 p_vendor_contact_rec IN OUT NOCOPY vendor_contact_rec_type
291 	,x_rec_count		OUT NOCOPY NUMBER
292   ,x_return_status	OUT NOCOPY	  VARCHAR2
293 );
294 
295 PROCEDURE Get_Warehouse(
296 	 p_warehouse_tbl	     	IN OUT NOCOPY warehouse_tbl_type
297 	 ,x_rec_count		OUT NOCOPY NUMBER
298    	,x_return_status	OUT NOCOPY	  VARCHAR2
299 );
300 
301 PROCEDURE Get_Customer(
302 	p_customer_tbl IN OUT NOCOPY customer_tbl_type
303 	 ,x_rec_count		OUT NOCOPY NUMBER
304    	,x_return_status	OUT NOCOPY	  VARCHAR2
305 );
306 
307 PROCEDURE Get_Product(
308 	 p_item_tbl	     	IN OUT NOCOPY item_tbl_type
309  	,p_org_id    IN    NUMBER
310 	 ,x_rec_count		OUT NOCOPY NUMBER
311    	,x_return_status	OUT NOCOPY	  VARCHAR2
312 );
313 
314 
315 --To be used incase we are storing the log messages in the fnd_log_messages table
316 --Currently all debug messages are going into the DPP_LOG_MESSAGES table
317 
318 PROCEDURE debug_message (p_log_level      IN NUMBER DEFAULT FND_LOG.LEVEL_STATEMENT,
319                          p_module_name    IN VARCHAR2,
320                          p_text           IN VARCHAR2
321 );
322 
323 -- Do Not use this in future
324 PROCEDURE debug_message(
325 									    p_message_text   IN  VARCHAR2,
326 									    p_message_level  IN  NUMBER := NULL
327 );
328 
329 
330 PROCEDURE error_message(
331    p_message_name VARCHAR2,
332    p_token_name   VARCHAR2 := NULL,
333    P_token_value  VARCHAR2 := NULL
334 );
335 
336 PROCEDURE get_EmailAddress(
337 	 p_user_id IN NUMBER
338 	 ,x_email_address	OUT NOCOPY VARCHAR2
339    ,x_return_status	OUT NOCOPY	  VARCHAR2
340 );
341 
342 ---------------------------------------------------------------------
343 -- PROCEDURE
344 --    Convert_Currency
345 -- NOTE
346 
347 -- HISTORY
348 --parameter p_from_currency      IN  VARCHAR2,
349 --   p_to_currency        IN  VARCHAR2,
350 --   p_conv_date          IN  DATE DEFAULT SYSDATE,
351 --   p_from_amount        IN  NUMBER,
352 --   x_to_amount          OUT NUMBER
353 --    If x_conversion_type = 'User', and the relationship between the
354 --    two currencies is not fixed, x_user_rate will be used as the
355 --    conversion rate to convert the amount
356 --    else no_user_rate is required
357 ---------------------------------------------------------------------
358 
359 PROCEDURE convert_currency(
360    p_from_currency   IN       VARCHAR2
361   ,p_to_currency     IN       VARCHAR2
362   ,p_conv_type       IN       VARCHAR2 DEFAULT FND_API.G_MISS_CHAR
363   ,p_conv_rate       IN       NUMBER   DEFAULT FND_API.G_MISS_NUM
364   ,p_conv_date       IN       DATE     DEFAULT SYSDATE
365   ,p_from_amount     IN       NUMBER
366   ,x_return_status   OUT NOCOPY      VARCHAR2
367   ,x_to_amount       OUT NOCOPY      NUMBER
368   ,x_rate            OUT NOCOPY      NUMBER);
369 
370 ---------------------------------------------------------------------
371 -- PROCEDURE
372 --    Convert_functional_Curr
373 -- NOTE
374 -- This procedures takes in amount and converts it to the functional currency
375 --  and returns the converted amount,exchange_rate,set_of_book_id,
376 --  f-nctional_currency_code,exchange_rate_date
377 
378 -- HISTORY
379 
380 --parameter x_Amount1 IN OUT NUMBER -- reqd Parameter -- amount to be converted
381 --   x_TC_CURRENCY_CODE IN OUT VARCHAR2,
382 --   x_Set_of_books_id OUT NUMBER,
383 --   x_MRC_SOB_TYPE_CODE OUT NUMBER, 'P' and 'R'
384 --     We only do it for primary ('P' because we donot supprot MRC)
385 --   x_FC_CURRENCY_CODE OUT VARCHAR2,
386 --   x_EXCHANGE_RATE_TYPE OUT VARCHAR2,
387 --     comes from a DPP profile  or what ever is passed
388 --   x_EXCHANGE_RATE_DATE  OUT DATE,
389 --     could come from a DPP profile but right now is sysdate
390 --   x_EXCHANGE_RATE       OUT VARCHAR2,
391 --   x_return_status      OUT VARCHAR2
392 -- The following is the rule in the GL API
393 --    If x_conversion_type = 'User', and the relationship between the
394 --    two currencies is not fixed, x_user_rate will be used as the
395 --    conversion rate to convert the amount
396 --    else no_user_rate is required
397 
398 ---------------------------------------------------------------------
399 
400 
401 PROCEDURE calculate_functional_curr(
402    p_from_amount          IN       NUMBER
403   ,p_conv_date            IN       DATE DEFAULT SYSDATE
404   ,p_tc_currency_code     IN       VARCHAR2
405   ,p_org_id               IN       NUMBER DEFAULT NULL
406   ,x_to_amount            OUT NOCOPY      NUMBER
407   ,x_set_of_books_id      OUT NOCOPY      NUMBER
408   ,x_mrc_sob_type_code    OUT NOCOPY      VARCHAR2
409   ,x_fc_currency_code     OUT NOCOPY      VARCHAR2
410   ,x_exchange_rate_type   IN OUT NOCOPY   VARCHAR2
411   ,x_exchange_rate        IN OUT NOCOPY   NUMBER
412   ,x_return_status        OUT NOCOPY      VARCHAR2);
413 
414 PROCEDURE check_Transaction(
415    p_transaction_header_id     IN NUMBER
416   ,p_status_change             IN VARCHAR2
417   ,x_rec_count                 OUT NOCOPY NUMBER
418   ,x_msg_data                  OUT NOCOPY VARCHAR2
419   ,x_return_status             OUT NOCOPY VARCHAR2);
420 
421 --======================================================================
422 -- FUNCTION
423 --    CurrRound
424 --
425 -- PURPOSE
426 --    Returns the round value for an amount based on the currency
427 --
428 -- HISTORY
429 --    12-Sep-2011  rvkondur  Create.
430 --======================================================================
431 FUNCTION CurrRound(
432     p_amount IN NUMBER,
433     p_currency_code IN VARCHAR2
434 )
435 RETURN NUMBER;
436 
437 END DPP_UTILITY_PVT;
438