1 Package pay_element_template_api AUTHID CURRENT_USER as
2 /* $Header: pyetmapi.pkh 115.6 2003/10/17 08:10:58 arashid ship $ */
3 -- ----------------------------------------------------------------------------
4 -- |------------------------< create_user_structure >-------------------------|
5 -- ----------------------------------------------------------------------------
6 -- {Start Of Comments}
7 --
8 -- Description:
9 -- This API creates a user-specific copy of a template. The template created
10 -- by this API may be used for the generation of core schema objects. A
11 -- template is a collection of rows from many tables, identified by a row
12 -- in PAY_ELEMENT_TEMPLATES.
13 --
14 -- The generated template differs from the source template in some or all of
15 -- the following:
16 -- - the generated template is business group-specific whereas the source
17 -- template is legislation code-specific.
18 -- - the generated template may contain overrides for source template values
19 -- e.g. base processing priority, flexfield values.
20 -- - certain configuration flexfield (p_configuration_information1 .. 30)
21 -- values may cause the exclusion of parts of the source template from
22 -- the generated template, or may override defaults for element input
23 -- values within the generated template.
24 -- - the base name is used as a prefix for object names and for placeholder
25 -- substitution within the generated template.
26 --
27 -- Prerequisites:
28 -- The source template (p_source_template_id) must exist and be of template
29 -- type 'T'. The business group (p_business_group_id) must be valid for the
30 -- legislation of the source template.
31 --
32 -- In Parameters:
33 -- Name Reqd Type Description
34 -- p_validate Yes boolean If true, the database remains
35 -- unchanged. If false then the
36 -- the template is created.
37 -- p_effective_date Yes date Effective date (used for
38 -- business rule validation).
39 -- p_business_group_id Yes number Business group of the created
40 -- created template.
41 -- p_source_template_id Yes number Template from which the
42 -- created template is copied.
43 -- p_base_name Yes varchar2 User-supplied name for object
44 -- naming and substitution into
45 -- placeholders.
46 -- p_base_processing_priority No number Override for base processing
47 -- priority.
48 -- p_preference_info_category No varchar2 Preference flexfield.
49 -- p_preference_information1 No varchar2 Preference flexfield.
50 -- p_preference_information2 No varchar2 Preference flexfield.
51 -- p_preference_information3 No varchar2 Preference flexfield.
52 -- p_preference_information4 No varchar2 Preference flexfield.
53 -- p_preference_information5 No varchar2 Preference flexfield.
54 -- p_preference_information6 No varchar2 Preference flexfield.
55 -- p_preference_information7 No varchar2 Preference flexfield.
56 -- p_preference_information8 No varchar2 Preference flexfield.
57 -- p_preference_information9 No varchar2 Preference flexfield.
58 -- p_preference_information10 No varchar2 Preference flexfield.
59 -- p_preference_information11 No varchar2 Preference flexfield.
60 -- p_preference_information12 No varchar2 Preference flexfield.
61 -- p_preference_information13 No varchar2 Preference flexfield.
62 -- p_preference_information14 No varchar2 Preference flexfield.
63 -- p_preference_information15 No varchar2 Preference flexfield.
64 -- p_preference_information16 No varchar2 Preference flexfield.
65 -- p_preference_information17 No varchar2 Preference flexfield.
66 -- p_preference_information18 No varchar2 Preference flexfield.
67 -- p_preference_information19 No varchar2 Preference flexfield.
68 -- p_preference_information20 No varchar2 Preference flexfield.
69 -- p_preference_information21 No varchar2 Preference flexfield.
70 -- p_preference_information22 No varchar2 Preference flexfield.
71 -- p_preference_information23 No varchar2 Preference flexfield.
72 -- p_preference_information24 No varchar2 Preference flexfield.
73 -- p_preference_information25 No varchar2 Preference flexfield.
74 -- p_preference_information26 No varchar2 Preference flexfield.
75 -- p_preference_information27 No varchar2 Preference flexfield.
76 -- p_preference_information28 No varchar2 Preference flexfield.
77 -- p_preference_information29 No varchar2 Preference flexfield.
78 -- p_preference_information30 No varchar2 Preference flexfield.
79 -- p_configuration_info_category No varchar2 Configuration flexfield.
80 -- p_configuration_information1 No varchar2 Configuration flexfield.
81 -- p_configuration_information2 No varchar2 Configuration flexfield.
82 -- p_configuration_information3 No varchar2 Configuration flexfield.
83 -- p_configuration_information4 No varchar2 Configuration flexfield.
84 -- p_configuration_information5 No varchar2 Configuration flexfield.
85 -- p_configuration_information6 No varchar2 Configuration flexfield.
86 -- p_configuration_information7 No varchar2 Configuration flexfield.
87 -- p_configuration_information8 No varchar2 Configuration flexfield.
88 -- p_configuration_information9 No varchar2 Configuration flexfield.
89 -- p_configuration_information10 No varchar2 Configuration flexfield.
90 -- p_configuration_information11 No varchar2 Configuration flexfield.
91 -- p_configuration_information12 No varchar2 Configuration flexfield.
92 -- p_configuration_information13 No varchar2 Configuration flexfield.
93 -- p_configuration_information14 No varchar2 Configuration flexfield.
94 -- p_configuration_information15 No varchar2 Configuration flexfield.
95 -- p_configuration_information16 No varchar2 Configuration flexfield.
96 -- p_configuration_information17 No varchar2 Configuration flexfield.
97 -- p_configuration_information18 No varchar2 Configuration flexfield.
98 -- p_configuration_information19 No varchar2 Configuration flexfield.
99 -- p_configuration_information20 No varchar2 Configuration flexfield.
100 -- p_configuration_information21 No varchar2 Configuration flexfield.
101 -- p_configuration_information22 No varchar2 Configuration flexfield.
102 -- p_configuration_information23 No varchar2 Configuration flexfield.
103 -- p_configuration_information24 No varchar2 Configuration flexfield.
104 -- p_configuration_information25 No varchar2 Configuration flexfield.
105 -- p_configuration_information26 No varchar2 Configuration flexfield.
106 -- p_configuration_information27 No varchar2 Configuration flexfield.
107 -- p_configuration_information28 No varchar2 Configuration flexfield.
108 -- p_configuration_information29 No varchar2 Configuration flexfield.
109 -- p_configuration_information30 No varchar2 Configuration flexfield.
110 -- p_prefix_reporting_name No varchar2 Prefix reporting name
111 -- with base_name (Y or N).
112 -- p_allow_base_name_reuse No boolean Allow base name to be
113 -- shared across user
114 -- structures within a
115 -- business group.
116 --
117 -- Post Success:
118 -- If p_validate is false, a new template is created. Otherwise no new
119 -- core schema objects are created.
120 --
121 -- Name Type Description
122 -- p_template_id number If p_validate is false, this
123 -- identifies the template created.
124 -- If p_validate is true, this is
125 -- set to null.
126 -- p_object_version_number number If p_validate is false, this is
127 -- set to the version number of the
128 -- PAY_ELEMENT_TEMPLATES row whose
129 -- template_id is returned in
130 -- p_template_id. If p_validate is
131 -- true, this is set to null.
132 --
133 -- Post Failure:
134 -- Any work done is rolled back and an exception is raised.
135 --
136 -- Access Status:
137 -- Public.
138 --
139 -- {End Of Comments}
140 --
141 procedure create_user_structure
142 (p_validate in boolean default false
143 ,p_effective_date in date
144 ,p_business_group_id in number
145 ,p_source_template_id in number
146 ,p_base_name in varchar2
147 ,p_base_processing_priority in number default null
148 ,p_preference_info_category in varchar2 default null
149 ,p_preference_information1 in varchar2 default null
150 ,p_preference_information2 in varchar2 default null
151 ,p_preference_information3 in varchar2 default null
152 ,p_preference_information4 in varchar2 default null
153 ,p_preference_information5 in varchar2 default null
154 ,p_preference_information6 in varchar2 default null
155 ,p_preference_information7 in varchar2 default null
156 ,p_preference_information8 in varchar2 default null
157 ,p_preference_information9 in varchar2 default null
158 ,p_preference_information10 in varchar2 default null
159 ,p_preference_information11 in varchar2 default null
160 ,p_preference_information12 in varchar2 default null
161 ,p_preference_information13 in varchar2 default null
162 ,p_preference_information14 in varchar2 default null
163 ,p_preference_information15 in varchar2 default null
164 ,p_preference_information16 in varchar2 default null
165 ,p_preference_information17 in varchar2 default null
166 ,p_preference_information18 in varchar2 default null
167 ,p_preference_information19 in varchar2 default null
168 ,p_preference_information20 in varchar2 default null
169 ,p_preference_information21 in varchar2 default null
170 ,p_preference_information22 in varchar2 default null
171 ,p_preference_information23 in varchar2 default null
172 ,p_preference_information24 in varchar2 default null
173 ,p_preference_information25 in varchar2 default null
174 ,p_preference_information26 in varchar2 default null
175 ,p_preference_information27 in varchar2 default null
176 ,p_preference_information28 in varchar2 default null
177 ,p_preference_information29 in varchar2 default null
178 ,p_preference_information30 in varchar2 default null
179 ,p_configuration_info_category in varchar2 default null
180 ,p_configuration_information1 in varchar2 default null
181 ,p_configuration_information2 in varchar2 default null
182 ,p_configuration_information3 in varchar2 default null
183 ,p_configuration_information4 in varchar2 default null
184 ,p_configuration_information5 in varchar2 default null
185 ,p_configuration_information6 in varchar2 default null
186 ,p_configuration_information7 in varchar2 default null
187 ,p_configuration_information8 in varchar2 default null
188 ,p_configuration_information9 in varchar2 default null
189 ,p_configuration_information10 in varchar2 default null
190 ,p_configuration_information11 in varchar2 default null
191 ,p_configuration_information12 in varchar2 default null
192 ,p_configuration_information13 in varchar2 default null
193 ,p_configuration_information14 in varchar2 default null
194 ,p_configuration_information15 in varchar2 default null
195 ,p_configuration_information16 in varchar2 default null
196 ,p_configuration_information17 in varchar2 default null
197 ,p_configuration_information18 in varchar2 default null
198 ,p_configuration_information19 in varchar2 default null
199 ,p_configuration_information20 in varchar2 default null
200 ,p_configuration_information21 in varchar2 default null
201 ,p_configuration_information22 in varchar2 default null
202 ,p_configuration_information23 in varchar2 default null
203 ,p_configuration_information24 in varchar2 default null
204 ,p_configuration_information25 in varchar2 default null
205 ,p_configuration_information26 in varchar2 default null
206 ,p_configuration_information27 in varchar2 default null
207 ,p_configuration_information28 in varchar2 default null
208 ,p_configuration_information29 in varchar2 default null
209 ,p_configuration_information30 in varchar2 default null
210 ,p_prefix_reporting_name in varchar2 default 'N'
211 ,p_allow_base_name_reuse in boolean default false
212 ,p_template_id out nocopy number
213 ,p_object_version_number out nocopy number
214 );
215 -- ----------------------------------------------------------------------------
216 -- |---------------------------< generate_part1 >-----------------------------|
217 -- ----------------------------------------------------------------------------
218 -- {Start Of Comments}
219 --
220 -- Description:
221 -- This API takes a template and creates the core schema objects that that
222 -- template specifies (subject to the restriction that the objects can
223 -- be created before formula compilation). The caller may further restrict
224 -- the objects created by setting the p_hr_only flag to true.
225 --
226 -- Prerequisites:
227 -- The template (p_template_id) must exist and be of template type 'U'.
228 --
229 -- In Parameters:
230 -- Name Reqd Type Description
231 -- p_validate Yes boolean If true, the database remains
232 -- unchanged. If false then the
233 -- core schema objects will be
234 -- created.
235 -- p_effective_date Yes date Effective start date for the
236 -- generated objects.
237 -- p_hr_only Yes boolean If true, only HR objects are
238 -- generated.
239 -- If false, HR and PAYROLL
240 -- objects are generated.
241 -- p_hr_to_payroll Yes boolean If true, it is assumed that
242 -- HR objects exist for this
243 -- template and PAYROLL objects
244 -- are created.
245 -- p_template_id Yes number Identifies the template from
246 -- which the core schema objects
247 -- will be generated.
248 --
249 -- Post Success:
250 -- If p_validate is false, the core schema objects are created, and rows
251 -- are created in PAY_TEMPLATE_CORE_OBJECTS to refer to the new core schema
252 -- objects. If p_validate is true, any work done is rolled back.
253 --
254 -- Post Failure:
255 -- Any work done is rolled back and an exception is raised.
256 --
257 -- Access Status:
258 -- Public.
259 --
260 -- {End Of Comments}
261 --
262 procedure generate_part1
263 (p_validate in boolean default false
264 ,p_effective_date in date
265 ,p_hr_only in boolean default false
266 ,p_hr_to_payroll in boolean default false
267 ,p_template_id in number
268 );
269 -- ----------------------------------------------------------------------------
270 -- |---------------------------< generate_part2 >-----------------------------|
271 -- ----------------------------------------------------------------------------
272 -- {Start Of Comments}
273 --
274 -- Description:
275 -- This API takes a template and creates the core schema objects that that
276 -- template specifies (subject to the restriction that these objects depend
280 -- The template (referred to by p_template_id) must exist, generate_part1
277 -- on the PAYROLL formulas, specified by the template, having been compiled).
278 --
279 -- Prerequisites:
281 -- was called successfully with this template (to create HR and PAYROLL
282 -- objects), and any formulas specified by this template have been compiled.
283 --
284 -- In Parameters:
285 -- Name Reqd Type Description
286 -- p_validate Yes boolean If true, the database remains
287 -- unchanged. If false then the
288 -- core schema objects will be
289 -- created.
290 -- p_effective_date Yes date Effective start date for the
291 -- generated objects.
292 -- p_template_id Yes number Identifies the template from
293 -- which the core schema objects
294 -- will be generated.
295 --
296 -- Post Success:
297 -- If p_validate is false, the core schema objects are created, and rows
298 -- are created in PAY_TEMPLATE_CORE_OBJECTS to refer to the new core schema
299 -- objects. If p_validate is true, any work done is rolled back.
300 --
301 -- Post Failure:
302 -- Any work done is rolled back and an exception is raised.
303 --
304 -- Access Status:
305 -- Public.
306 --
307 -- {End Of Comments}
308 --
309 procedure generate_part2
310 (p_validate in boolean default false
311 ,p_effective_date in date
312 ,p_template_id in number
313 );
314 -- ----------------------------------------------------------------------------
315 -- |---------------------------< delete_template >----------------------------|
316 -- ----------------------------------------------------------------------------
317 -- {Start Of Comments}
318 --
319 -- Description:
320 -- This API deletes a template. This API does not delete any core schema
321 -- objects created from the template. It's main purpose is to delete
322 -- templates from which other templates are generated (template type 'T').
323 --
324 -- Prerequisites:
325 -- None.
326 --
327 -- In Parameters:
328 -- Name Reqd Type Description
329 -- p_validate Yes boolean If true, the database remains
330 -- unchanged. If false then the
331 -- template will be deleted.
332 -- p_template_id Yes boolean Identifies the template to
333 -- be deleted.
334 --
335 -- Post Success:
336 -- If p_validate is false, the template will be deleted. Otherwise, there is
337 -- no change to the template.
338 --
339 -- Post Failure:
340 -- Any deletes are rolled back and an exception is raised.
341 --
342 -- Access Status:
343 -- Public.
344 --
345 -- {End Of Comments}
346 --
347 procedure delete_template
348 (p_validate in boolean default false
349 ,p_template_id in number
350 );
351 -- ----------------------------------------------------------------------------
352 -- |---------------------------< delete_user_structure >-----------------------|
353 -- ----------------------------------------------------------------------------
354 -- {Start Of Comments}
355 --
356 -- Description:
357 -- This API deletes a template and all shadow schema objects associated with
358 -- it. This API also (zap) deletes any core schema objects created from the
359 -- template.
360 --
361 -- Prerequisites:
362 -- The template must exist and be of template type 'U'.
363 --
364 -- In Parameters:
365 -- Name Reqd Type Description
366 -- p_validate Yes boolean If true, the database remains
367 -- unchanged. If false then the
368 -- template and any core schema
369 -- objects created from it will
370 -- be deleted.
371 -- p_drop_formula_packages Yes boolean If true, any formula
372 -- packages created from the
373 -- template are dropped.
374 -- If false, the formula
375 -- packages are not dropped.
376 -- p_template_id Yes number Identifies the template to
377 -- be deleted.
378 -- Post Success:
379 -- If p_validate is false, then the template is deleted and any associated
380 -- core schema objects are (zap) deleted. Otherwise, there are no changes
381 -- to the database.
382 --
383 -- Name Type Description
384 --
385 -- Post Failure:
386 -- Any (non-package) deletes are rolled back and an exception is raised.
387 --
388 -- Access Status:
389 -- Public.
390 --
391 -- {End Of Comments}
392 --
393 procedure delete_user_structure
394 (p_validate in boolean default false
395 ,p_drop_formula_packages in boolean
398 end pay_element_template_api;
396 ,p_template_id in number
397 );