1 Package hr_leg_api_hook_call_internal AUTHID CURRENT_USER as
2 /* $Header: peahlbsi.pkh 115.1 2002/12/03 13:50:49 apholt ship $ */
3 --
4 --
5 -- ---------------------------------------------------------------------------
6 -- |---------------------< create_leg_api_hook_call >-------------------------|
7 -- ---------------------------------------------------------------------------
8 -- {Start Of Comments}
9 --
10 -- Description:
11 -- This business process allows legislation groups to create hook call
12 -- information in the HR_API_HOOK_CALLS table. The hook call information
13 -- specifies which extra logic, package procedures or formula should be
14 -- called from the API hook points.
15 --
16 -- Each row should be a child of a parent API Hook which already exists on the
17 -- HR_API_HOOKS table. The p_api_hook_id acts as a foreign key to this table.
18 --
19 -- The legislation code value should always be set and indicates that the extra
20 -- logic should only be called for a hook call when data corresponds to the
21 -- legislation.
22 --
23 -- When more than one row exists for the same API_HOOK_ID, the SEQUENCE value
24 -- affects the order of the hook calls. Low numbers will be processed first.
25 -- Legislation specific calls must have a sequence between 1000 <= Sequence
26 -- <= 1999. Either 'before all' or 'after all' legislation specific calls.
27 --
28 -- All other parameters are described in detail below:
29 --
30 -- Prerequisites:
31 -- An API Hook must have been created so that the Hook Call can be attached to it.
32 --
33 -- In Parameters:
34 -- Name Reqd Type Description
35 -- p_validate N boolean If true, the database remains
36 -- unchanged. If false a valid
37 -- assignment is created in
38 -- the database.
39 --
40 -- p_effective_date Y date Effective date.
41 --
42 -- p_api_hook_id Y number The id of the parent API Hook
43 --
44 -- p_api_hook_call_type Y varchar2 The type of the hook call. Can
45 -- only be set to 'PP' for the first
46 -- version.
47 --
48 -- p_legislation_code Y varchar2 Legislation Code for group.
49 --
50 -- p_sequence N number When more than one row exists for
51 -- the same API_HOOK_ID, Sequence
52 -- will affect the order of the hook
53 -- calls (low numbers processed first).
54 --
55 -- p_enabled_flag Y varchar2 Takes a YES/NO value.
56 --
57 -- p_call_package Y varchar2 Name of the database package that
58 -- the hook package should call.
59 --
60 -- p_call_procedure Y varchar2 Name of the procedure within the
61 -- CALL_PACKAGE that the hook package
62 -- should call. It should not be
63 -- possible to call the same package
64 -- procedure at the same hook more
65 -- then once.
66 --
67 -- Post Success:
68 -- The API sets the following out parameters:
69 --
70 -- Name Type Description
71 -- p_api_hook_call_id number Unique ID for the hook call.
72 --
73 -- p_object_version_number number Version number of the new
74 -- hook call
75 -- Post Failure:
76 -- The API does not create the hook call and raises an error.
77 --
78 -- Access Status:
79 -- Public.
80 --
81 -- {End Of Comments}
82 --
83 procedure create_leg_api_hook_call
84 (p_validate in boolean default false,
85 p_effective_date in date,
86 p_api_hook_id in number,
87 p_api_hook_call_type in varchar2,
88 p_sequence in number,
89 p_enabled_flag in varchar2 default 'Y',
90 p_legislation_code in varchar2 default null,
91 p_call_package in varchar2 default null,
92 p_call_procedure in varchar2 default null,
93 p_api_hook_call_id out nocopy number,
94 p_object_version_number out nocopy number
95 );
96 --
97 -- ----------------------------------------------------------------------------
98 -- |---------------------< delete_leg_api_hook_call >-------------------------|
99 -- ----------------------------------------------------------------------------
100 -- {Start Of Comments}
101 --
102 -- Description:
103 -- This API enables a Legislation Group to delete a row on the
104 -- HR_API_HOOK_CALLS table.
105 --
106 -- Only the legislation group which created the row where legislation
107 -- code is not not null can delete the row.
108 --
109 -- Prerequisites:
110 -- A valid api hook call id
111 --
112 -- In Parameters:
113 -- Name Reqd Type Description
114 -- p_validate N boolean If true, the database remains
115 -- unchanged. If false, the hook is
116 -- deleted.
117 --
118 -- p_api_hook_call_id Y number Unique ID for the hook call to be
119 -- deleted.
120 --
121 -- p_object_version_number Y number Object Version Number of the
122 -- row to be deleted.
123 --
124 -- Post Success:
125 -- The API does not set any out parameters
126 --
127 -- Post Failure:
128 -- The API does not delete the hook call and raises an error.
129 --
130 -- Access Status:
131 -- Public.
132 --
133 -- {End Of Comments}
134 --
135 procedure delete_leg_api_hook_call
136 (p_validate in boolean default false,
137 p_api_hook_call_id in number,
138 p_object_version_number in number);
139 --
140 -- ----------------------------------------------------------------------------
141 -- |---------------------< update_leg_api_hook_call >-------------------------|
142 -- ----------------------------------------------------------------------------
143 -- {Start Of Comments}
144 --
145 -- Description:
146 -- This API enables a Legislation Group to update a row on the
147 -- HR_API_HOOK_CALLS table.
148 --
149 -- Only the legislation group which created the row where legislation
150 -- code is not null can update the row.
151 --
152 -- Prerequisites:
153 -- The row to be updated must exist on the table.
154 --
155 -- In Parameters:
156 -- Name Reqd Type Description
157 -- p_validate N boolean If true, the database remains
158 -- unchanged. If false a valid
159 -- assignment is created in
160 -- the database.
161 --
162 -- p_effective_date Y date Effective date.
163 --
164 -- p_api_hook_call_id Y number Unique ID for the hook call.
165 --
166 -- p_sequence N number When more than one row exists for
167 -- the same API_HOOK_ID, Sequence
168 -- will affect the order of the hook
169 -- calls (low numbers processed first).
170 --
171 -- p_enabled_flag N varchar2 Takes a YES/NO value.
172 --
173 -- p_call_package N varchar2 Name of the database package that
174 -- the hook package should call.
175 --
176 -- p_call_procedure N varchar2 Name of the procedure within the
177 -- CALL_PACKAGE that the hook package
178 -- should call. It should not be
179 -- possible to call the same package
180 -- procedure at the same hook more
181 -- then once.
182 --
183 --
184 -- Post Success:
185 -- The API sets the following out parameters:
186 --
187 -- Name Type Description
188 -- p_object_version_number number Version number of the updated hook call.
189 --
190 -- Post Failure:
191 -- The API does not update the hook call and raises an error.
192 --
193 -- Access Status:
194 -- Public.
195 --
196 -- {End Of Comments}
197 --
198 procedure update_leg_api_hook_call
199 (p_validate in boolean default false,
200 p_effective_date in date,
201 p_api_hook_call_id in number,
202 p_sequence in number default hr_api.g_number,
203 p_enabled_flag in varchar2 default hr_api.g_varchar2,
204 p_call_package in varchar2 default hr_api.g_varchar2,
205 p_call_procedure in varchar2 default hr_api.g_varchar2,
206 p_object_version_number in out nocopy number
207 );
208 end hr_leg_api_hook_call_internal;