DBA Data[Home] [Help]

PACKAGE: APPS.PQP_GB_CSS_DAILY_ABSENCES

Source


1 PACKAGE pqp_gb_css_daily_absences AS
2 /* $Header: pqgbdcss.pkh 120.0 2005/05/29 01:49:05 appldev noship $ */
3 
4 
5 
6 -- Through out this Package wherever any parameter/variable if defined as
7 -- p_entitlements or l_entitlements will be used to store or pass a persons
8 -- Entitltments Band Wise.
9 -- Variable/Parameter p_absences_taken_to_date stores the entitlememts
10 -- used up
11 --Variable/paramter p_entitlements_remaining stores the entitlements
12 -- that are avaialable at that point of time Band wise
13 
14      CURSOR csr_get_days_to_extend ( p_business_group_id NUMBER
15                                     ,p_assignment_id NUMBER
16 				    ,p_rolling_start_date DATE
17 				    ,p_rolling_end_date DATE
18 				    ,p_lookup_type VARCHAR2)
19      IS
20      SELECT SUM(
21                DECODE(
22                  SIGN(paa.date_end - p_rolling_end_date)
23                 ,1, p_rolling_end_date
24                 ,paa.date_end
25                )
26              - DECODE(
27                  SIGN(paa.date_start - p_rolling_start_date)
28                 ,1, paa.date_start
29                 ,p_rolling_start_date
30                )
31              + 1
32            ) cnt
33     FROM   per_absence_attendances paa
34           ,hr_lookups hrl
35 	  ,ben_pl_f bp
36 	  ,pqp_gap_absence_plans gap
37     WHERE  gap.assignment_id = p_assignment_id
38       and  gap.pl_id = bp.pl_id
39       and  hrl.lookup_type = p_lookup_type --'PQP_GAP_PLAN_TYPES_TO_EXTEND'
40       and  bp.pl_typ_id = hrl.lookup_code
41       and  ( p_rolling_start_date between
42              NVL(hrl.start_date_active, p_rolling_start_date)
43 	    and NVL(hrl.end_date_active, p_rolling_end_date)
44             OR
45              p_rolling_end_date between
46              NVL(hrl.start_date_active, p_rolling_start_date)
47              and NVL(hrl.end_date_active, p_rolling_end_date)
48 	   )
49       and  gap.absence_attendance_id = paa.absence_attendance_id
50       and  paa.business_group_id = p_business_group_id
51       and  ( paa.date_start  between
52              p_rolling_start_date and p_rolling_end_date
53 	     OR
54              paa.date_end between
55              p_rolling_start_date and p_rolling_end_date
56 	   ) ;
57 
58 
59 -------------debug------------------------------
60    PROCEDURE debug
61     (p_trace_message  IN     VARCHAR2,
62      p_trace_location IN     NUMBER   DEFAULT NULL
63     ) ;
64 
65 -------------debug_enter-----------------------
66    PROCEDURE debug_enter
67     (p_proc_name IN VARCHAR2 DEFAULT NULL,
68      p_trace_on  IN VARCHAR2 DEFAULT NULL
69     ) ;
70 
71 -------------debug_exit-----------------------
72    PROCEDURE debug_exit
73     (p_proc_name IN VARCHAR2 DEFAULT NULL,
74      p_trace_off IN VARCHAR2 DEFAULT NULL
75     ) ;
76 
77 -------------create_absence_plan_details--------------
78     PROCEDURE create_absence_plan_details
79             ( p_assignment_id      IN  NUMBER
80              ,p_business_group_id  IN  NUMBER
81              ,p_absence_id         IN  NUMBER
82              ,p_pl_id              IN  NUMBER
83              ,p_pl_typ_id          IN  NUMBER
84              ,p_create_start_date  IN  DATE
85              ,p_create_end_date    IN  DATE
86 	     ,p_entitlements       IN pqp_absval_pkg.t_entitlements
87 	     ,p_plan_information   IN pqp_absval_pkg.rec_plan_information
88 	     ,p_entitlements_remaining OUT NOCOPY pqp_absval_pkg.t_entitlements
89 	     ,p_entitlement_UOM    OUT NOCOPY VARCHAR2
90 	     ,p_working_days_per_week OUT NOCOPY NUMBER
91 	     ,p_fte  OUT NOCOPY NUMBER
92             ) ;
93 ------------------------------------------------------------
94 
95 FUNCTION get_review_date (
96            p_absence_start_date     IN DATE
97           ,p_absence_end_date       IN DATE
98           ,p_assignment_id          IN NUMBER
99 	  ,p_business_group_id      IN NUMBER
100           ,p_pl_typ_id              IN NUMBER
101 	  ,p_scheme_period_duration IN NUMBER
102 	  ,p_scheme_period_type     IN VARCHAR2
103 	  ,p_scheme_period_uom      IN VARCHAR2
104 	  ,p_total_entitlement      IN NUMBER
105 	  ,p_total_remaining        IN OUT NOCOPY NUMBER
106 	  ,p_4_year_rolling_period  IN BOOLEAN --TRUE for 4 year
107 -- PT Changes cchappid
108 	  ,p_working_days_in_week   IN NUMBER
109 	  ,p_standard_work_days_in_week IN NUMBER
110 	  ,p_fulltime               IN BOOLEAN
111           ,p_lookup_type            IN VARCHAR2
112           ) RETURN DATE ;
113 ---------------------------------------------------------
114 FUNCTION get_no_pay_days ( p_rolling_start_date        IN DATE
115                           ,p_rolling_end_date          IN DATE
116 			  ,p_assignment_id             IN NUMBER
117 			  ,p_business_group_id         IN NUMBER
118 			  ,p_pl_typ_id                 IN NUMBER
119 			  ,p_dont_count_css_nopay_days IN BOOLEAN
120 			  ,p_lookup_type               IN VARCHAR2
121 			 ) RETURN NUMBER ;
122 ----------------------------------------------------------------
123 FUNCTION get_rolling_start_date (
124             p_rolling_end_date IN DATE
125            ,p_scheme_period_duration IN NUMBER
126            ,p_assignment_id      IN NUMBER
127            ,p_business_group_id  IN NUMBER
128    	   ,p_scheme_period_type IN VARCHAR2
129            ,p_scheme_period_uom  IN VARCHAR2
130 	   ,p_pl_typ_id          IN NUMBER
131 	   ,p_4_year_rolling_period IN BOOLEAN
132            ,p_lookup_type           IN VARCHAR2
133           )  RETURN DATE ;
134 -----------------------------------------------------
135 
136 END pqp_gb_css_daily_absences ;