1 package hr_element_links AUTHID CURRENT_USER as
2 /* $Header: pyelelnk.pkh 115.0 99/07/17 05:58:58 porting ship $ */
3 --
4
5 /*
6 /*
7 ******************************************************************
8 * *
9 * Copyright (C) 1989 Oracle Corporation UK Ltd., *
10 * Richmond, England. *
11 * *
12 * All rights reserved. *
13 * *
14 * This material has been provided pursuant to an agreement *
15 * containing restrictions on its use. The material is also *
16 * protected by copyright law. No part of this material may *
17 * be copied or distributed, transmitted or transcribed, in *
18 * any form or by any means, electronic, mechanical, magnetic, *
19 * manual, or otherwise, or disclosed to third parties without *
20 * the express written permission of Oracle Corporation UK Ltd, *
21 * Oracle Park, Bittams Lane, Guildford Road, Chertsey, Surrey, *
22 * England. *
23 * *
24 ******************************************************************
25 --
26 Name : hr_element_links
27 --
28 Description : This package holds procedures and functions related to the
29 following tables :
30 PAY_ELEMENT_LINKS_F
31 --
32 $Author: appldev $
33 $Date: 99/07/17 05:58:58 $
34 $Revision: 115.0 $
35
36 Uses : hr_element_links
37 Used By : n/a
38 --
39 Test List
40 ---------
41 Procedure Name Date Test Id Status
42 +----------------------------+----------+-----------+-------+--------------+
43 chk_mutual_exclusivity M Dyer 19-Jan-1993 1 Complete
44 --
45 Change List
46 -----------
47 Date Name Vers Bug No Description
48 +-----------+-------------+-------+----------+-----------------------------+ 17-Feb-93 J.S.Hobbs 30.6 Altered insert_alu and
49 create_standard_entries_el.
50 03-Mar-1993 J.S.Hobbs 30.9 Removed get_termination_date,
51 get_entry_start_date_qc and
52 create_rec_element_entry.
53 They are in hrentmnt.
54 21-Apr-1993 M Dyer
55 05-Oct-1993 M Kaddir 40.2 X21 Changed chk_element_link
56 and chk_mutual_exclusivity
57 to include two new link
58 criteria:
59 - Employment Category and
60 - Pay Basis
61 22-Oct-1993 J.S.Hobbs 40.2 -Changed ins_3p_element_link
62 to cope with two new
63 criteria ie. PAY_BASIS_ID and
64 EMPLOYMENT_CATEGORY.
65 -Removed
66 create_standard_entries_el
67 and recoded in hrentmnt with
68 a new prcoedure called
69 maintain_entries_el.
70 24-Jan-94 N Simpson - Removed CHK_MUTUAL_EXCLUSIVITY
71 which was not accessed by
72 other packages.G525
73
74 ###########################################################################
75
76 04-Mar-1994 C.Swan Moved from 10.0 as a result
77 of the 10->10G merge.
78 07-Mar-1994 C.Swan Removed leading "####" from
79 above line, due to
80 Autoinstall objecting.
81 28-MAR-94 R.Neale 40.6 Added header info
82 30-MAR-94 A.McGhee 40.7 Moved header line to the
83 comment section.
84
85 */
86 --
87 /*
88 NAME
89 get_greatest_end_date
90 DESCRIPTION
91 This function returns the greatest end date that the element link can
92 continue until. This is the least of the element_type end date and
93 the last end date of any payrolls it may be linked to
94 */
95 --
96 FUNCTION get_greatest_end_date(p_element_type_id in number,
97 p_business_group_id in number,
98 p_link_to_all_payrolls_flag in varchar2,
99 p_payroll_id in number,
100 p_greatest_link_date in date)
101 return date;
102 --
103 /*
104 NAME
105 chk_element_links
106 DESCRIPTION
107 This procedure checks to see if any distributed links are themselves in distribution sets
108 */
109 --
110 --
111 PROCEDURE chk_element_links(p_element_type_id in number,
112 p_element_link_id in number,
113 p_val_start_date in date,
114 p_val_end_date in out date,
115 p_business_group_id in number,
116 p_legislation_code in varchar2,
117 p_costable_type in varchar2,
118 p_organization_id in number,
119 p_people_group_id in number,
120 p_job_id in number,
121 p_position_id in number,
122 p_grade_id in number,
123 p_location_id in number,
124 p_payroll_id in number,
125 p_link_to_all_payrolls_flag in varchar2,
126 p_element_set_id in number,
127 p_balancing_keyflex_id in number,
128 p_classification_id in number,
129 p_employment_category in varchar2,
130 p_pay_basis_id in number);
131 --
132 /*
133 NAME
134 chk_upd_element_links
135 DESCRIPTION
136 The costable type of a link can only be updated over all time if there
137 are no entries in existence for this link.
138 */
139 --
140 PROCEDURE chk_upd_element_links(p_element_link_id in number,
141 p_update_mode in varchar2,
142 p_val_start_date in date,
143 p_val_end_date in date,
144 p_old_costable_type in varchar2,
145 p_costable_type in varchar2);
146 --
147 /*
148 NAME
149 chk_del_element_links
150 DESCRIPTION
151 This procedure checks to see whether element links can be deleted.
152 They cannot be deleted if there are any non recurring entries in the
153 but this will result in these entries being lost forever and a warning
154 message will be given to this effect.
155 */
156 --
157 --
158 PROCEDURE chk_del_element_link(p_element_link_id in varchar2,
159 p_val_start_date in date,
160 p_val_end_date in date,
161 p_warning_message in out varchar2);
162 --
163 PROCEDURE insert_alu(p_mode varchar2,
164 p_id_flex_num number,
165 p_business_group_id number,
166 p_people_group_id number,
167 p_element_link_id number,
168 p_assignment_id number,
169 p_effective_start_date date,
170 p_effective_end_date date);
171 --
172 /*
173 NAME
174 ins_costing_segments
175 DESCRIPTION
176 This procedure will update the pay_cost_allocation_keyflex table with
177 the concatenated costing keyflexes. It should always be called when
178 a new costed, fixed or distributed element link is created and also
179 when one of these fields has been updated.
180 */
181 PROCEDURE ins_costing_segments(
182 p_cost_allocation_keyflex_id varchar2,
183 p_displayed_cost_keyflex varchar2,
184 p_balancing_keyflex_id varchar2,
185 p_displayed_balancing_keyflex varchar2);
186 --
187 --
188 /*
189 NAME
190 ins_3p_element_link
191 DESCRIPTION
192 This procedure inserts link input values when an element link is
193 created. It will also insert Assignment link usages and Standard
194 recurring entries.
195 */
196 --
197 procedure ins_3p_element_link
198 (
199 p_element_link_id in number,
200 p_element_type_id in number,
201 p_val_start_date in date,
202 p_val_end_date in date,
203 p_standard_link_flag in varchar2,
204 p_payroll_id in number,
205 p_link_to_all_payrolls_flag in varchar2,
206 p_job_id in number,
207 p_grade_id in number,
208 p_position_id in number,
209 p_organization_id in number,
210 p_people_group_id in number,
211 p_location_id in number,
212 p_pay_basis_id in number,
213 p_employment_category in varchar2,
214 p_qual_age in number,
215 p_qual_length_of_service in number,
216 p_qual_units in varchar2,
217 p_costable_type in varchar2,
218 p_pay_value_name in varchar2,
219 p_id_flex_num in number,
220 p_business_group_id in number,
221 p_legislation_code in varchar2
222 );
223 --
224 /*
225 NAME
226 upd_3p_element_link
227 DESCRIPTION
228 This procedure updates the costing flag on the link input values
229 according to the costable type on the element link.
230 */
231 --
232 PROCEDURE upd_3p_element_links(p_element_link_id in number,
233 p_val_start_date in date,
234 p_val_end_date in date,
235 p_pay_value_name in varchar2,
236 p_old_costable_type in varchar2,
237 p_costable_type in varchar2,
238 p_payroll_id number,
239 p_business_group_id number,
240 p_location_id number,
241 p_grade_id number,
242 p_link_to_all_payrolls_flag varchar2,
243 p_organization_id number,
244 p_position_id number,
245 p_job_id number,
246 p_element_type_id number,
247 p_pay_basis_id number,
248 p_employment_category number,
249 p_people_group_id number,
250 p_old_link_flag in varchar2,
251 p_link_flag in varchar2);
252 --
253 PROCEDURE delete_entry_values(
254 p_element_entry_id in number,
255 p_delete_mode in varchar2,
256 p_val_session_date in date,
257 p_val_start_date in date,
258 p_val_end_date in date);
259 --
260 --
261 /*
262 NAME
263 del_3p_element_link
264 DESCRIPTION
265 This procedure deletes link input values in line with the deletion on
266 element link. It will also delete Assignment link usages and recurring
267 entries.
268 */
269 --
270 PROCEDURE del_3p_element_links(
271 p_element_link_id in number,
272 p_delete_mode in varchar2,
273 p_val_session_date in date,
274 p_val_start_date in date,
275 p_val_end_date in date,
276 p_id_flex_num in number,
277 p_business_group_id in number,
278 p_people_group_id in number);
279 --
280 --
281 /* TITLE
282 chk_link_input_values
283 DESCRIPTION
284 This procedure checks against the corresponding input value to ensure
285 that the validation is correct for the link input value. This includes
286 hot defaulted values.
287 */
288 --
289 PROCEDURE chk_link_input_values(
290 p_input_value_id in numbeR,
291 p_legislation_code in varchar2,
292 p_costable_type in varchar2,
293 p_costed_flag in varchar2,
294 p_validation_start_date in datE,
295 P_Validation_end_date in datE,
296 p_min_value in varchar2,
297 p_max_value in varchar2,
298 p_default_value in varchar2,
299 p_warning_or_error in varchar2);
300 --
301 -- This procedure checks that the link flag may be updated to Y by checking
302 -- for the existence of entries for the link.
303 --
304 procedure LINK_FLAG_UPDATED (p_link_id number);
305 --
306 end hr_element_links;