DBA Data[Home] [Help]

PACKAGE BODY: APPS.CHV_INQ_SV

Source


4 /*=============================  CHV_INQ_SV  ===============================*/
1 PACKAGE BODY CHV_INQ_SV as
2 /* $Header: CHVSIN1B.pls 120.1 2005/09/23 07:05:36 ptkumar noship $*/
3 
5 
6 /*===========================================================================
7 
8   FUNCTION NAME:	get_bucket_type()
9 
10 ===========================================================================*/
11 PROCEDURE get_receipt_qty(p_last_receipt_transaction_id in number,
12         		  p_item_id                     in number,
13 		          p_purchasing_unit_of_measure  in varchar2,
14 			  p_purchasing_quantity      in out NOCOPY number,
15 			  p_shipment_number          in out NOCOPY varchar2,
16 			  p_receipt_transaction_date in out NOCOPY date) is
17 
18 x_purchasing_uom_code       varchar2(3)    ;
19 x_purchasing_quantity       number         ;
20 x_conversion_rate           number         ;
21 x_receiving_uom_code        varchar2(3)    ;
22 x_receiving_unit_of_measure varchar2(25)   ;
23 x_quantity_received         number         ;
24 x_shipment_number           varchar2(30)   ;
25 x_transaction_date          date           ;
26 
27 begin
28 
29   select rct.transaction_date,
30          rsh.shipment_num,
31          rsl.quantity_received,
32          rsl.unit_of_measure
33     into x_transaction_date,
34          x_shipment_number,
35          x_quantity_received,
36          x_receiving_unit_of_measure
37   from rcv_transactions rct,
38        rcv_shipment_headers rsh,
39        rcv_shipment_lines rsl
40   where transaction_id = p_last_receipt_transaction_id
41   and  rct.shipment_header_id = rsh.shipment_header_id
42   and  rct.shipment_line_id   = rsl.shipment_line_id ;
43 
44 /* Bug 1706360: Get the last_receipt_quantity (purchasing_quantity)
45    as the sum(quantity_received) from rcv_shipment_lines for the receipt_num
46    corresponding to p_last_receipt_transaction_id.
47    Also added item id cond. to the foll. sql stmt. so that
48    the qty received only against that item is computed. This is because
49    more than one item can be received in the same receipt. */
50 
51 select sum(quantity_received)
52 into x_quantity_received
53 from rcv_shipment_lines rsl
54 where rsl.shipment_header_id=(select rct.shipment_header_id
55                               from rcv_transactions rct where
56                               transaction_id = p_last_receipt_transaction_id)
57 and rsl.item_id = p_item_id;
58 
59 --End of Bug 1706360
60 
61   select uom_code
62     into x_receiving_uom_code
63     FROM mtl_units_of_measure
64    WHERE unit_of_measure = X_receiving_unit_of_measure ;
65 
66   select uom_code
67     into x_purchasing_uom_code
68     FROM mtl_units_of_measure
69    WHERE unit_of_measure = p_purchasing_unit_of_measure ;
70 
71    inv_convert.inv_um_conversion(x_receiving_uom_code,
72 				 x_purchasing_uom_code,
73 				 p_item_id, x_conversion_rate) ;
74 
75    x_purchasing_quantity := round((x_conversion_rate * x_quantity_received),5) ;
76 
77    p_purchasing_quantity      := x_purchasing_quantity ;
78    p_shipment_number          := x_shipment_number     ;
79    p_receipt_transaction_date := x_transaction_date    ;
80 
81 EXCEPTION WHEN OTHERS THEN
82   NULL ;
83 END ;
84 
85 /*===========================================================================
86 
87   PROCEDURE NAME:	get_bucket_dates()
88 
89 ===========================================================================*/
90 PROCEDURE get_bucket_dates(p_schedule_id        IN      NUMBER,
91 			   p_schedule_item_id 	IN      NUMBER,
92 			   p_column_name        IN      VARCHAR2,
93 			   p_bucket_descriptor  IN OUT NOCOPY  VARCHAR2,
94 			   p_bucket_start_date  IN OUT NOCOPY  DATE,
95                            p_bucket_end_date    IN OUT NOCOPY  DATE) IS
96 
97 bucket_rec      chv_horizontal_schedules%rowtype ;
98 start_date_rec  chv_horiz_date_schedules_v%rowtype ;
99 end_date_rec    chv_horiz_date_schedules_v%rowtype ;
100 
101 BEGIN
102 
103   SELECT *
104     INTO bucket_rec
105     FROM chv_horizontal_schedules
106    WHERE schedule_id = p_schedule_id
107      AND schedule_item_id = p_schedule_item_id
108      AND row_select_order = 1 ;
109 
110   SELECT *
111     INTO start_date_rec
112     FROM chv_horiz_date_schedules_v
113    WHERE schedule_id = p_schedule_id
114      AND schedule_item_id = p_schedule_item_id
115      AND row_select_order = 2 ;
116 
117   SELECT *
118     INTO end_date_rec
119     FROM chv_horiz_date_schedules_v
123 
120    WHERE schedule_id = p_schedule_id
121      AND schedule_item_id = p_schedule_item_id
122      AND row_select_order = 7 ;
124   FOR i IN 1..1 LOOP
125 
126      if p_column_name = 'COLUMN1' then
127         p_bucket_descriptor  :=  bucket_rec.column1 ;
128         p_bucket_start_date  :=  start_date_rec.column1 ;
129         p_bucket_end_date    :=  end_date_rec.column1 ;
130 
131      EXIT ;
132      end if ;
133 
134      if p_column_name = 'COLUMN2' then
135         p_bucket_descriptor  :=  bucket_rec.column2 ;
136         p_bucket_start_date  :=  start_date_rec.column2 ;
137         p_bucket_end_date    :=  end_date_rec.column2 ;
138 
139      EXIT ;
140      end if ;
141 
142      if p_column_name = 'COLUMN3' then
143         p_bucket_descriptor  :=  bucket_rec.column3 ;
144         p_bucket_start_date  :=  start_date_rec.column3 ;
145         p_bucket_end_date    :=  end_date_rec.column3 ;
146 
147      EXIT ;
148      end if ;
149 
150      if p_column_name = 'COLUMN4' then
151         p_bucket_descriptor  :=  bucket_rec.column4 ;
152         p_bucket_start_date  :=  start_date_rec.column4 ;
153         p_bucket_end_date    :=  end_date_rec.column4 ;
154 
155      EXIT ;
156      end if ;
157 
158      if p_column_name = 'COLUMN5' then
159         p_bucket_descriptor  :=  bucket_rec.column5 ;
160         p_bucket_start_date  :=  start_date_rec.column5 ;
161         p_bucket_end_date    :=  end_date_rec.column5 ;
162 
163      EXIT ;
164      end if ;
165 
166      if p_column_name = 'COLUMN6' then
167         p_bucket_descriptor  :=  bucket_rec.column6 ;
168         p_bucket_start_date  :=  start_date_rec.column6 ;
169         p_bucket_end_date    :=  end_date_rec.column6 ;
170 
171      EXIT ;
172      end if ;
173 
174      if p_column_name = 'COLUMN7' then
175         p_bucket_descriptor  :=  bucket_rec.column7 ;
176         p_bucket_start_date  :=  start_date_rec.column7 ;
177         p_bucket_end_date    :=  end_date_rec.column7 ;
178 
179      EXIT ;
180      end if ;
181 
182      if p_column_name = 'COLUMN8' then
183         p_bucket_descriptor  :=  bucket_rec.column8 ;
184         p_bucket_start_date  :=  start_date_rec.column8 ;
185         p_bucket_end_date    :=  end_date_rec.column8 ;
186 
187      EXIT ;
188      end if ;
189 
190      if p_column_name = 'COLUMN9' then
191         p_bucket_descriptor  :=  bucket_rec.column9 ;
192         p_bucket_start_date  :=  start_date_rec.column9 ;
193         p_bucket_end_date    :=  end_date_rec.column9 ;
194 
195      EXIT ;
196      end if ;
197 
198      if p_column_name = 'COLUMN10' then
199         p_bucket_descriptor  :=  bucket_rec.column10 ;
200         p_bucket_start_date  :=  start_date_rec.column10 ;
201         p_bucket_end_date    :=  end_date_rec.column10 ;
202 
203      EXIT ;
204      end if ;
205 
206      if p_column_name = 'COLUMN11' then
207         p_bucket_descriptor  :=  bucket_rec.column11 ;
208         p_bucket_start_date  :=  start_date_rec.column11 ;
209         p_bucket_end_date    :=  end_date_rec.column11 ;
210 
211      EXIT ;
212      end if ;
213 
214      if p_column_name = 'COLUMN12' then
215         p_bucket_descriptor  :=  bucket_rec.column12 ;
216         p_bucket_start_date  :=  start_date_rec.column12 ;
217         p_bucket_end_date    :=  end_date_rec.column12 ;
218 
219      EXIT ;
220      end if ;
221 
222      if p_column_name = 'COLUMN13' then
223         p_bucket_descriptor  :=  bucket_rec.column13 ;
224         p_bucket_start_date  :=  start_date_rec.column13 ;
225         p_bucket_end_date    :=  end_date_rec.column13 ;
226 
227      EXIT ;
228      end if ;
229 
230      if p_column_name = 'COLUMN14' then
231         p_bucket_descriptor  :=  bucket_rec.column14 ;
232         p_bucket_start_date  :=  start_date_rec.column14 ;
233         p_bucket_end_date    :=  end_date_rec.column14 ;
234 
235      EXIT ;
236      end if ;
237 
238      if p_column_name = 'COLUMN15' then
239         p_bucket_descriptor  :=  bucket_rec.column15 ;
240         p_bucket_start_date  :=  start_date_rec.column15 ;
241         p_bucket_end_date    :=  end_date_rec.column15 ;
242 
243      EXIT ;
244      end if ;
245 
246      if p_column_name = 'COLUMN16' then
247         p_bucket_descriptor  :=  bucket_rec.column16 ;
248         p_bucket_start_date  :=  start_date_rec.column16 ;
249         p_bucket_end_date    :=  end_date_rec.column16 ;
250 
251      EXIT ;
252      end if ;
253 
254      if p_column_name = 'COLUMN17' then
255         p_bucket_descriptor  :=  bucket_rec.column17 ;
256         p_bucket_start_date  :=  start_date_rec.column17 ;
257         p_bucket_end_date    :=  end_date_rec.column17 ;
258 
259      EXIT ;
260      end if ;
261 
262      if p_column_name = 'COLUMN18' then
263         p_bucket_descriptor  :=  bucket_rec.column18 ;
264         p_bucket_start_date  :=  start_date_rec.column18 ;
265         p_bucket_end_date    :=  end_date_rec.column18 ;
266 
267      EXIT ;
268      end if ;
269 
270      if p_column_name = 'COLUMN19' then
271         p_bucket_descriptor  :=  bucket_rec.column19 ;
272         p_bucket_start_date  :=  start_date_rec.column19 ;
273         p_bucket_end_date    :=  end_date_rec.column19 ;
274 
275      EXIT ;
276      end if ;
277 
278      if p_column_name = 'COLUMN20' then
279         p_bucket_descriptor  :=  bucket_rec.column20 ;
280         p_bucket_start_date  :=  start_date_rec.column20 ;
281         p_bucket_end_date    :=  end_date_rec.column20 ;
285 
282 
283      EXIT ;
284      end if ;
286      if p_column_name = 'COLUMN21' then
287         p_bucket_descriptor  :=  bucket_rec.column21 ;
288         p_bucket_start_date  :=  start_date_rec.column21 ;
289         p_bucket_end_date    :=  end_date_rec.column21 ;
290 
291      EXIT ;
292      end if ;
293 
294      if p_column_name = 'COLUMN22' then
295         p_bucket_descriptor  :=  bucket_rec.column22 ;
296         p_bucket_start_date  :=  start_date_rec.column22 ;
297         p_bucket_end_date    :=  end_date_rec.column22 ;
298 
299      EXIT ;
300      end if ;
301 
302      if p_column_name = 'COLUMN23' then
303         p_bucket_descriptor  :=  bucket_rec.column23 ;
304         p_bucket_start_date  :=  start_date_rec.column23 ;
305         p_bucket_end_date    :=  end_date_rec.column23 ;
306 
307      EXIT ;
308      end if ;
309 
310      if p_column_name = 'COLUMN24' then
311         p_bucket_descriptor  :=  bucket_rec.column24 ;
312         p_bucket_start_date  :=  start_date_rec.column24 ;
313         p_bucket_end_date    :=  end_date_rec.column24 ;
314 
315      EXIT ;
316      end if ;
317 
318      if p_column_name = 'COLUMN25' then
319         p_bucket_descriptor  :=  bucket_rec.column25 ;
320         p_bucket_start_date  :=  start_date_rec.column25 ;
321         p_bucket_end_date    :=  end_date_rec.column25 ;
322 
323      EXIT ;
324      end if ;
325 
326      if p_column_name = 'COLUMN26' then
327         p_bucket_descriptor  :=  bucket_rec.column26 ;
328         p_bucket_start_date  :=  start_date_rec.column26 ;
329         p_bucket_end_date    :=  end_date_rec.column26 ;
330 
331      EXIT ;
332      end if ;
333 
334      if p_column_name = 'COLUMN27' then
335         p_bucket_descriptor  :=  bucket_rec.column27 ;
336         p_bucket_start_date  :=  start_date_rec.column27 ;
337         p_bucket_end_date    :=  end_date_rec.column27 ;
338 
339      EXIT ;
340      end if ;
341 
342      if p_column_name = 'COLUMN28' then
343         p_bucket_descriptor  :=  bucket_rec.column28 ;
344         p_bucket_start_date  :=  start_date_rec.column28 ;
345         p_bucket_end_date    :=  end_date_rec.column28 ;
346 
347      EXIT ;
348      end if ;
349 
350      if p_column_name = 'COLUMN29' then
351         p_bucket_descriptor  :=  bucket_rec.column29 ;
352         p_bucket_start_date  :=  start_date_rec.column29 ;
353         p_bucket_end_date    :=  end_date_rec.column29 ;
354 
355      EXIT ;
356      end if ;
357 
358      if p_column_name = 'COLUMN30' then
359         p_bucket_descriptor  :=  bucket_rec.column30 ;
360         p_bucket_start_date  :=  start_date_rec.column30 ;
361         p_bucket_end_date    :=  end_date_rec.column30 ;
362 
363      EXIT ;
364      end if ;
365 
366      if p_column_name = 'COLUMN31' then
367         p_bucket_descriptor  :=  bucket_rec.column31 ;
368         p_bucket_start_date  :=  start_date_rec.column31 ;
369         p_bucket_end_date    :=  end_date_rec.column31 ;
370 
371      EXIT ;
372      end if ;
373 
374      if p_column_name = 'COLUMN32' then
375         p_bucket_descriptor  :=  bucket_rec.column32 ;
376         p_bucket_start_date  :=  start_date_rec.column32 ;
377         p_bucket_end_date    :=  end_date_rec.column32 ;
378 
379      EXIT ;
380      end if ;
381 
382      if p_column_name = 'COLUMN33' then
383         p_bucket_descriptor  :=  bucket_rec.column33 ;
384         p_bucket_start_date  :=  start_date_rec.column33 ;
385         p_bucket_end_date    :=  end_date_rec.column33 ;
386 
387      EXIT ;
388      end if ;
389 
390      if p_column_name = 'COLUMN34' then
391         p_bucket_descriptor  :=  bucket_rec.column34 ;
392         p_bucket_start_date  :=  start_date_rec.column34 ;
393         p_bucket_end_date    :=  end_date_rec.column34 ;
394 
395      EXIT ;
396      end if ;
397 
398      if p_column_name = 'COLUMN35' then
399         p_bucket_descriptor  :=  bucket_rec.column35 ;
400         p_bucket_start_date  :=  start_date_rec.column35 ;
401         p_bucket_end_date    :=  end_date_rec.column35 ;
402 
403      EXIT ;
404      end if ;
405 
406      if p_column_name = 'COLUMN36' then
407         p_bucket_descriptor  :=  bucket_rec.column36 ;
408         p_bucket_start_date  :=  start_date_rec.column36 ;
409         p_bucket_end_date    :=  end_date_rec.column36 ;
410 
411      EXIT ;
412      end if ;
413 
414      if p_column_name = 'COLUMN37' then
415         p_bucket_descriptor  :=  bucket_rec.column37 ;
416         p_bucket_start_date  :=  start_date_rec.column37 ;
417         p_bucket_end_date    :=  end_date_rec.column37 ;
418 
419      EXIT ;
420      end if ;
421 
422      if p_column_name = 'COLUMN38' then
423         p_bucket_descriptor  :=  bucket_rec.column38 ;
424         p_bucket_start_date  :=  start_date_rec.column38 ;
425         p_bucket_end_date    :=  end_date_rec.column38 ;
426 
427      EXIT ;
428      end if ;
429 
430      if p_column_name = 'COLUMN39' then
431         p_bucket_descriptor  :=  bucket_rec.column39 ;
432         p_bucket_start_date  :=  start_date_rec.column39 ;
433         p_bucket_end_date    :=  end_date_rec.column39 ;
434 
435      EXIT ;
436      end if ;
437 
438      if p_column_name = 'COLUMN40' then
439         p_bucket_descriptor  :=  bucket_rec.column40 ;
440         p_bucket_start_date  :=  start_date_rec.column40 ;
441         p_bucket_end_date    :=  end_date_rec.column40 ;
442 
443      EXIT ;
444      end if ;
445 
449         p_bucket_end_date    :=  end_date_rec.column41 ;
446      if p_column_name = 'COLUMN41' then
447         p_bucket_descriptor  :=  bucket_rec.column41 ;
448         p_bucket_start_date  :=  start_date_rec.column41 ;
450 
451      EXIT ;
452      end if ;
453 
454      if p_column_name = 'COLUMN42' then
455         p_bucket_descriptor  :=  bucket_rec.column42 ;
456         p_bucket_start_date  :=  start_date_rec.column42 ;
457         p_bucket_end_date    :=  end_date_rec.column42 ;
458 
459      EXIT ;
460      end if ;
461 
462      if p_column_name = 'COLUMN43' then
463         p_bucket_descriptor  :=  bucket_rec.column43 ;
464         p_bucket_start_date  :=  start_date_rec.column43 ;
465         p_bucket_end_date    :=  end_date_rec.column43 ;
466 
467      EXIT ;
468      end if ;
469 
470      if p_column_name = 'COLUMN44' then
471         p_bucket_descriptor  :=  bucket_rec.column44 ;
472         p_bucket_start_date  :=  start_date_rec.column44 ;
473         p_bucket_end_date    :=  end_date_rec.column44 ;
474 
475      EXIT ;
476      end if ;
477 
478      if p_column_name = 'COLUMN45' then
479         p_bucket_descriptor  :=  bucket_rec.column45 ;
480         p_bucket_start_date  :=  start_date_rec.column45 ;
481         p_bucket_end_date    :=  end_date_rec.column45 ;
482 
483      EXIT ;
484      end if ;
485 
486      if p_column_name = 'COLUMN46' then
487         p_bucket_descriptor  :=  bucket_rec.column46 ;
488         p_bucket_start_date  :=  start_date_rec.column46 ;
489         p_bucket_end_date    :=  end_date_rec.column46 ;
490 
491      EXIT ;
492      end if ;
493 
494      if p_column_name = 'COLUMN47' then
495         p_bucket_descriptor  :=  bucket_rec.column47 ;
496         p_bucket_start_date  :=  start_date_rec.column47 ;
497         p_bucket_end_date    :=  end_date_rec.column47 ;
498 
499      EXIT ;
500      end if ;
501 
502      if p_column_name = 'COLUMN48' then
503         p_bucket_descriptor  :=  bucket_rec.column48 ;
504         p_bucket_start_date  :=  start_date_rec.column48 ;
505         p_bucket_end_date    :=  end_date_rec.column48 ;
506 
507      EXIT ;
508      end if ;
509 
510      if p_column_name = 'COLUMN49' then
511         p_bucket_descriptor  :=  bucket_rec.column49 ;
512         p_bucket_start_date  :=  start_date_rec.column49 ;
513         p_bucket_end_date    :=  end_date_rec.column49 ;
514 
515      EXIT ;
516      end if ;
517 
518      if p_column_name = 'COLUMN50' then
519         p_bucket_descriptor  :=  bucket_rec.column50 ;
520         p_bucket_start_date  :=  start_date_rec.column50 ;
521         p_bucket_end_date    :=  end_date_rec.column50 ;
522 
523      EXIT ;
524      end if ;
525 
526      if p_column_name = 'COLUMN51' then
527         p_bucket_descriptor  :=  bucket_rec.column51 ;
528         p_bucket_start_date  :=  start_date_rec.column51 ;
529         p_bucket_end_date    :=  end_date_rec.column51 ;
530 
531      EXIT ;
532      end if ;
533 
534      if p_column_name = 'COLUMN52' then
535         p_bucket_descriptor  :=  bucket_rec.column52 ;
536         p_bucket_start_date  :=  start_date_rec.column52 ;
537         p_bucket_end_date    :=  end_date_rec.column52 ;
538 
539      EXIT ;
540      end if ;
541 
542      if p_column_name = 'COLUMN53' then
543         p_bucket_descriptor  :=  bucket_rec.column53 ;
544         p_bucket_start_date  :=  start_date_rec.column53 ;
545         p_bucket_end_date    :=  end_date_rec.column53 ;
546 
547      EXIT ;
548      end if ;
549 
550      if p_column_name = 'COLUMN54' then
551         p_bucket_descriptor  :=  bucket_rec.column54 ;
552         p_bucket_start_date  :=  start_date_rec.column54 ;
553         p_bucket_end_date    :=  end_date_rec.column54 ;
554 
555      EXIT ;
556      end if ;
557 
558      if p_column_name = 'COLUMN55' then
559         p_bucket_descriptor  :=  bucket_rec.column55 ;
560         p_bucket_start_date  :=  start_date_rec.column55 ;
561         p_bucket_end_date    :=  end_date_rec.column55 ;
562 
563      EXIT ;
564      end if ;
565 
566      if p_column_name = 'COLUMN56' then
567         p_bucket_descriptor  :=  bucket_rec.column56 ;
568         p_bucket_start_date  :=  start_date_rec.column56 ;
569         p_bucket_end_date    :=  end_date_rec.column56 ;
570 
571      EXIT ;
572      end if ;
573 
574      if p_column_name = 'COLUMN57' then
575         p_bucket_descriptor  :=  bucket_rec.column57 ;
576         p_bucket_start_date  :=  start_date_rec.column57 ;
577         p_bucket_end_date    :=  end_date_rec.column57 ;
578 
579      EXIT ;
580      end if ;
581 
582      if p_column_name = 'COLUMN58' then
583         p_bucket_descriptor  :=  bucket_rec.column58 ;
584         p_bucket_start_date  :=  start_date_rec.column58 ;
585         p_bucket_end_date    :=  end_date_rec.column58 ;
586 
587      EXIT ;
588      end if ;
589 
590      if p_column_name = 'COLUMN59' then
591         p_bucket_descriptor  :=  bucket_rec.column59 ;
592         p_bucket_start_date  :=  start_date_rec.column59 ;
593         p_bucket_end_date    :=  end_date_rec.column59 ;
594 
595      EXIT ;
596      end if ;
597 
598      if p_column_name = 'COLUMN60' then
599         p_bucket_descriptor  :=  bucket_rec.column60 ;
600         p_bucket_start_date  :=  start_date_rec.column60 ;
601         p_bucket_end_date    :=  end_date_rec.column60 ;
602 
603      EXIT ;
604      end if ;
605 
606   END LOOP ;
607 
608 EXCEPTION
609   WHEN OTHERS THEN
613 /*===========================================================================
610   NULL ;
611 
612 END ;
614 
615   FUNCTION NAME:	get_asl_org()
616 
617 ===========================================================================*/
618 FUNCTION  get_asl_org(p_organization_id 	IN   NUMBER,
619 		      p_vendor_id 	        IN   NUMBER,
620 		      p_vendor_site_id 	        IN   NUMBER,
621 		      p_item_id 	        IN   NUMBER)
622 					RETURN NUMBER is
623 
624 x_organization_id number := -1 ;
625 
626 BEGIN
627 
628       SELECT poatt.using_organization_id
629         INTO x_organization_id
630 	FROM  po_asl_attributes_val_v poatt
631        WHERE poatt.using_organization_id = p_organization_id
632 	 AND poatt.vendor_id             = p_vendor_id
633 	 AND poatt.vendor_site_id        = p_vendor_site_id
634 	 AND poatt.item_id               = p_item_id;
635 
636       return(x_organization_id) ;
637 
638 EXCEPTION
639   WHEN OTHERS THEN
640   return(x_organization_id) ;
641 END ;
642 
643 /*===========================================================================
644 
645   FUNCTION NAME:        get_last_receipt_id()
646 
647 ===========================================================================*/
648 function get_last_receipt_id(x_vendor_id      in number,
649                                    x_vendor_site_id  in number,
650                                    x_item_id         in number,
651                                    x_organization_id in number,
652                                    x_cum_period_start_date in date,
653                                    x_cum_period_end_date in date)
654                  return number is
655 
656 x_last_receipt_id number  := null ;
657 /* Bug 4618577 fixed. Added format mask to to_date function */
658 begin
659 
660  select max(rct.transaction_id)
661         into x_last_receipt_id
662         from   rcv_transactions rct,
663 	       rcv_shipment_lines rsl,
664 	       po_headers poh
665 	where  rct.shipment_line_id = rsl.shipment_line_id
666 	and    rct.transaction_type = 'RECEIVE'
667 	and    rct.transaction_date between
668    		to_date(x_cum_period_start_date,'YYYY/MM/DD') and
669                 to_date(x_cum_period_end_date,'YYYY/MM/DD')
670         and    rsl.to_organization_id = x_organization_id
671         and    rsl.item_id            = x_item_id
672         and    rsl.po_header_id       = poh.po_header_id
673         and    poh.vendor_id          = x_vendor_id
674         and    poh.vendor_site_id     = x_vendor_site_id
675         and    poh.supply_agreement_flag = 'Y'
676         and    rct.transaction_date in
677         (select max(rct2.transaction_date)
678         from   rcv_transactions rct2,
679 	       rcv_shipment_lines rsl2,
680                po_headers poh2
681         where  rct2.shipment_line_id   = rsl2.shipment_line_id
682         and    rct2.transaction_type   = 'RECEIVE'
683         and    rct2.transaction_date between
684                 to_date(x_cum_period_start_date,'YYYY/MM/DD') and
685                 to_date(x_cum_period_end_date,'YYYY/MM/DD')
686         and    rsl2.to_organization_id = x_organization_id
687         and    rsl2.item_id            = x_item_id
688         and    rsl2.po_header_id       = poh.po_header_id
689         and    poh2.vendor_id          = x_vendor_id
690         and    poh2.vendor_site_id     = x_vendor_site_id
691         and    poh2.supply_agreement_flag = 'Y');
692 
693     return(x_last_receipt_id) ;
694 
695 exception when others then
696 
697     return('') ;
698 
699 end ;
700 
701 /*===========================================================================
702 
703   FUNCTION NAME: get_bucket_type()
704 
705 ==========================================================================*/
706 FUNCTION get_bucket_type(p_bucket_type_code IN VARCHAR2)
707 			RETURN varchar2 is
708 
709 x_bucket_type_dsp   varchar2(80) ;
710 
711 BEGIN
712 
713  SELECT displayed_field
714    INTO x_bucket_type_dsp
715    FROM po_lookup_codes
716   WHERE lookup_type = 'SCHEDULE_BUCKET_TYPE'
717     AND lookup_code = p_bucket_type_code ;
718 
719    return(x_bucket_type_dsp) ;
720 
721 EXCEPTION
722   WHEN OTHERS THEN
723   return('') ;
724 END ;
725 END CHV_INQ_SV ;