47: -- timecard which has history of transfer to BEE can be updated only, no delete
48: -- is allowed.
49:
50: PROCEDURE retro_restrict_edit (
51: p_tim_id IN hxt_det_hours_worked_f.tim_id%TYPE,
52: p_session_date IN DATE,
53: o_dt_update_mod OUT NOCOPY VARCHAR2,
54: o_error_message OUT NOCOPY VARCHAR2,
55: o_return_code OUT NOCOPY NUMBER,
52: p_session_date IN DATE,
53: o_dt_update_mod OUT NOCOPY VARCHAR2,
54: o_error_message OUT NOCOPY VARCHAR2,
55: o_return_code OUT NOCOPY NUMBER,
56: p_parent_id IN hxt_det_hours_worked_f.parent_id%TYPE
57: )
58: IS
59: CURSOR csr_not_transferred (
60: v_tim_id hxt_det_hours_worked_f.tim_id%TYPE,
56: p_parent_id IN hxt_det_hours_worked_f.parent_id%TYPE
57: )
58: IS
59: CURSOR csr_not_transferred (
60: v_tim_id hxt_det_hours_worked_f.tim_id%TYPE,
61: v_parent_id hxt_det_hours_worked_f.parent_id%TYPE
62: )
63: IS
64: SELECT 1
57: )
58: IS
59: CURSOR csr_not_transferred (
60: v_tim_id hxt_det_hours_worked_f.tim_id%TYPE,
61: v_parent_id hxt_det_hours_worked_f.parent_id%TYPE
62: )
63: IS
64: SELECT 1
65: FROM hxt_det_hours_worked hdhw
66: WHERE hdhw.tim_id = v_tim_id
67: AND hdhw.pay_status = 'P' -- Bug 6067007
68: AND hdhw.pa_status = 'P' -- Bug 6067007
69: AND NOT EXISTS ( SELECT 1
70: FROM hxt_det_hours_worked_f hdhw2
71: WHERE hdhw.tim_id = hdhw2.tim_id
72: AND hdhw2.effective_start_date >
73: hdhw.effective_start_date);
74:
74:
75:
76: -- Bug 6067007
77: CURSOR csr_transferred_retro (
78: v_tim_id hxt_det_hours_worked_f.tim_id%TYPE,
79: v_parent_id hxt_det_hours_worked_f.parent_id%TYPE
80: )
81: IS
82: SELECT 1
75:
76: -- Bug 6067007
77: CURSOR csr_transferred_retro (
78: v_tim_id hxt_det_hours_worked_f.tim_id%TYPE,
79: v_parent_id hxt_det_hours_worked_f.parent_id%TYPE
80: )
81: IS
82: SELECT 1
83: FROM hxt_det_hours_worked_f hdhw
79: v_parent_id hxt_det_hours_worked_f.parent_id%TYPE
80: )
81: IS
82: SELECT 1
83: FROM hxt_det_hours_worked_f hdhw
84: WHERE hdhw.tim_id = v_tim_id
85: AND ( hdhw.pay_status = 'R'
86: OR hdhw.pa_status = 'R'
87: );
88: -- Bug 6067007
89:
90:
91: CURSOR csr_transferred (
92: v_tim_id hxt_det_hours_worked_f.tim_id%TYPE,
93: v_parent_id hxt_det_hours_worked_f.parent_id%TYPE
94: )
95: IS
96: SELECT 1
89:
90:
91: CURSOR csr_transferred (
92: v_tim_id hxt_det_hours_worked_f.tim_id%TYPE,
93: v_parent_id hxt_det_hours_worked_f.parent_id%TYPE
94: )
95: IS
96: SELECT 1
97: FROM hxt_det_hours_worked_f hdhw
93: v_parent_id hxt_det_hours_worked_f.parent_id%TYPE
94: )
95: IS
96: SELECT 1
97: FROM hxt_det_hours_worked_f hdhw
98: WHERE hdhw.tim_id = v_tim_id
99: AND ( hdhw.pay_status = 'C'
100: OR hdhw.pa_status = 'C'
101: );
100: OR hdhw.pa_status = 'C'
101: );
102:
103: CURSOR csr_changed_today (
104: v_tim_id hxt_det_hours_worked_f.tim_id%TYPE,
105: v_parent_id hxt_det_hours_worked_f.parent_id%TYPE,
106: v_session_dt DATE
107: )
108: IS
101: );
102:
103: CURSOR csr_changed_today (
104: v_tim_id hxt_det_hours_worked_f.tim_id%TYPE,
105: v_parent_id hxt_det_hours_worked_f.parent_id%TYPE,
106: v_session_dt DATE
107: )
108: IS
109: SELECT 1
106: v_session_dt DATE
107: )
108: IS
109: SELECT 1
110: FROM hxt_det_hours_worked_f hdhw
111: WHERE hdhw.tim_id = v_tim_id
112: AND trunc(hdhw.effective_start_date)
113: = trunc(v_session_dt);
114:
118: l_not_transferred csr_not_transferred%ROWTYPE := NULL;
119: l_changed_today csr_changed_today%ROWTYPE := NULL;
120: l_proc VARCHAR2 (30) ;
121:
122: FUNCTION details (p_tim_id IN hxt_det_hours_worked_f.tim_id%TYPE)
123: RETURN BOOLEAN
124: IS
125: CURSOR csr_debug (v_tim_id hxt_det_hours_worked_f.tim_id%TYPE)
126: IS
121:
122: FUNCTION details (p_tim_id IN hxt_det_hours_worked_f.tim_id%TYPE)
123: RETURN BOOLEAN
124: IS
125: CURSOR csr_debug (v_tim_id hxt_det_hours_worked_f.tim_id%TYPE)
126: IS
127: SELECT hdhw.id, hdhw.parent_id, hdhw.date_worked, hdhw.pay_status,
128: hdhw.effective_start_date
129: FROM hxt_det_hours_worked hdhw
588: AND petv.element_type_id = c_element_type_id
589: AND petv.effective_start_date <= p_effective_start_date
590: AND petv.effective_end_date >= p_effective_end_date;
591:
592: v_amount hxt_det_hours_worked_f.amount%TYPE;
593: BEGIN
594:
595: -- Determine if the element is a fixed amount and what the fixed amount is.
596: