1 PACKAGE pay_pyucslis_pkg AS
2 /* $Header: pyucslis.pkh 120.4.12010000.1 2008/07/27 23:46:52 appldev ship $ */
3 --
4 -- Globals to hold concurrent request WHO column information.
5 --
6 p_request_id number(15);
7 p_program_application_id number(15);
8 p_program_id number(15);
9 p_update_date date;
10 --
11 -- -----------------------------------------------------------------------------
12 -- |-----------------------< add_contacts_for_person >-------------------------|
13 --
14 -- Purpose - Procedure to add the contacts (people of SPT OTHER) for this
15 -- person to the list of visible people in profiles which
16 -- restrict access to contacts.
17 -- -----------------------------------------------------------------------------
18 Procedure add_contacts_for_person
19 (p_person_id number,
20 p_business_group_id number,
21 p_generation_scope varchar2,
22 p_effective_date date);
23
24 --
25 -- -----------------------------------------------------------------------------
26 -- |---------------------< add_unrelated_contacts>-----------------------------|
27 --
28 -- Purpose - Procedure to add all unrelated contacts (people of SPT OTHER)
29 -- to the list of visible people in profiles which
30 -- restrict access to contacts.
31 -- -----------------------------------------------------------------------------
32 Procedure add_unrelated_contacts
33 (p_business_group_id number,
34 p_generation_scope varchar2,
35 p_effective_date date);
36
37 -- -----------------------------------------------------------------------------
38 -- |------------------< build_lists_for_user >---------------------------------|
39 --
40 -- Purpose - Procedure to allow re-evaluation of security permissions for one
41 -- user for one particular security profile which is then stored in
42 -- the internal security tables ready for quick access when they log
43 -- onto that security profile.
44 -- WARNING!!!
45 -- customers have been granted permission to call this
46 -- procedure DIRECTLY!
47 -- However as this package (pay_pyucslis_pkg) is a security API
48 -- (calling hr_security_internal) it cannot be a documented public API.
49 -- Therefore please *do not* change these parameters as this will
50 -- invalidate customer code.
51 -- -----------------------------------------------------------------------------
52 Procedure build_lists_for_user
53 (p_security_profile_id number,
54 p_user_id number,
55 p_effective_date date default trunc(sysdate));
56 -- |--------------------< generate lists >-------------------------------------|
57 --
58 -- Purpose - Called from the PYUCSL.sql script when LISTGEN and GLISTGEN
59 -- processes are submitted. This routine is provided for backwards
60 -- compatibility only.
61 --
62 -- -----------------------------------------------------------------------------
63 --
64 PROCEDURE generate_lists
65 (p_effective_date IN DATE
66 ,p_security_profile_name IN VARCHAR2 DEFAULT 'ALL_SECURITY_PROFILES'
67 ,p_business_group_mode IN VARCHAR2 DEFAULT 'LOCAL'
68 );
69 --
70 -- -----------------------------------------------------------------------------
71 -- |--------------------< generate lists >-------------------------------------|
72 --
73 -- Purpose - This routine is called when generating security list information
74 -- for a single profile or when an HR foundation installation runs
75 -- SLM.
76 --
77 -- -----------------------------------------------------------------------------
78 --
79 PROCEDURE generate_lists
80 (p_effective_date IN DATE
81 ,p_generation_scope IN VARCHAR2
82 ,p_business_group_id IN NUMBER default null
83 ,p_security_profile_id IN NUMBER default null
84 ,p_security_profile_name IN VARCHAR2 default null
85 ,p_who_to_process IN VARCHAR2 default null
86 ,p_user_id IN NUMBER default null
87 ,p_static_user_processing IN VARCHAR2 default 'ALL_STATIC'
88 );
89
90 --
91 -- ----------------------------------------------------------------------------
92 -- |-------------------------< submit_security >------------------------------|
93 --
94 -- Purpose - Called on submission of the SLM process. Simply an entry point
95 -- to the process and calls generate_list_control.
96 --
97 -- ----------------------------------------------------------------------------
98 --
99 procedure submit_security(errbuf out NOCOPY varchar2,
100 retcode out NOCOPY number,
101 p_effective_date varchar2 default null,
102 p_generation_scope varchar2 default null,
103 p_business_group_id varchar2 default null,
104 p_security_profile_id varchar2 default null,
105 p_who_to_process varchar2 default null,
106 p_action_parameter_group_id varchar2 default null,
107 p_user_name varchar2 default null,
108 p_static_user_processing varchar2 default 'ALL_STATIC');
109 --
110 -- -----------------------------------------------------------------------------
111 -- |--------------------< generate list_control >------------------------------|
112 --
113 -- Purpose - Called from the submit_security when the security list maintenance
114 -- process is submitted. It controls the execution of the list
115 -- information code. For full HR customers it submits a request to
116 -- use PYUGEN for the generation of the PPL.
117 -- This process is re-submitted when the sub-requests are complete
118 -- to complete the processing.
119 --
120 -- -----------------------------------------------------------------------------
121 --
122 procedure generate_list_control(p_effective_date date,
123 p_generation_scope varchar2,
124 p_business_group_id varchar2 default null,
125 p_security_profile_id varchar2 default null,
126 p_who_to_process varchar2 default null,
127 p_action_parameter_group_id varchar2 default null,
128 p_user_id varchar2 default null,
129 p_static_user_processing varchar2 default 'ALL_STATIC',
130 errbuf out NOCOPY varchar2,
131 retcode out NOCOPY number);
132 --
133 -- -----------------------------------------------------------------------------
134 -- |----------------------< range_cursor >-------------------------------------|
135 --
136 -- Purpose - This routine is called from PYUGEN. It returns a SQL select used
137 -- to identify the people who need to be processed.
138 --
139 -- -----------------------------------------------------------------------------
140 --
141 procedure range_cursor (pactid in number,
142 sqlstr out NOCOPY varchar2);
143 --
144 -- -----------------------------------------------------------------------------
145 -- |--------------------< action_creation >------------------------------------|
146 --
147 -- Purpose - This routine is called to create assignment actions for each
148 -- person to be processed by PYUGEN.
149 --
150 -- -----------------------------------------------------------------------------
151 --
152 procedure action_creation (pactid in number,
153 stperson in number,
154 endperson in number,
155 chunk in number);
156 --
157 -- -----------------------------------------------------------------------------
158 -- |----------------------< archive_data >-------------------------------------|
159 --
160 -- Purpose - This routine is called to process each assignment action and
161 -- generate security access for the person concerned.
162 --
163 -- -----------------------------------------------------------------------------
164 --
165 procedure archive_data(p_assactid in number,
166 p_effective_date in date);
167 --
168 -- ----------------------------------------------------------------------------
169 -- |---------------------------< initialization >-----------------------------|
170 -- ----------------------------------------------------------------------------
171 --
172 -- Purpose : This process is called for each slave process to perform
173 -- standard initialization.
174 --
175 -- Notes :
176 --
177 procedure initialization(p_payroll_action_id in number);
178 --
179 -- -----------------------------------------------------------------------------
180 -- |--------------------< chk_person_in_profile >------------------------------|
181 --
182 -- Purpose - A checking routine indicating if the person is in the profile.
183 -- Used for testing purposes.
184 --
185 -- -----------------------------------------------------------------------------
186 --
187 function chk_person_in_profile (p_person_id in number,
188 p_security_profile_id number)
189 return varchar2;
190
191 --
192 -- ----------------------------------------------------------------------------
193 -- |---------------------< process_person >------------------------------------|
194 --
195 -- Purpose - Process security code for all assignments for specific person.
196 --
197 -- ----------------------------------------------------------------------------
198 --
199 procedure process_person (p_person_id per_all_people_f.person_id%TYPE,
200 p_effective_date date,
201 p_business_group_id number,
202 p_generation_scope varchar2,
203 p_who_to_process varchar2);
204 --
205 -- ----------------------------------------------------------------------------
206 -- |-----------------------< submit_cand_sec_opt >----------------------------|
207 --
208 -- Purpose - This PL/SQL procedure is for the concurrent program
209 -- 'Change Candidate Access for Security Profiles'.
210 -- This process will take only one parameter, values are either
211 -- 'Y -> All' or 'X -> None'. Default value for the parameter
212 -- p_profile_option will be 'X' (None).
213 --
214 -- None -> Candidates will not be visible to that security profile
215 -- All -> Candidates will be visible to that security profile.
216 --
217 -- This process is intended for customer's those installed
218 -- iRecruitment. The default value for the view_all_candidates_flag
219 -- in per_security_profiles is 'Y'. Customer's can change that
220 -- option by running this process in one go.
221 --
222 -- Pre-Req - This process will run only if the iRecruitment is installed.
223 -- ----------------------------------------------------------------------------
224 --
225 procedure submit_cand_sec_opt(
226 errbuf out nocopy varchar2,
227 retcode out nocopy number,
228 p_profile_option in varchar2
229 );
230 --
231 END pay_pyucslis_pkg;
232