1 Package hr_app_api_hook_call_internal AUTHID CURRENT_USER as
2 /* $Header: peahcbsi.pkh 115.3 2002/12/03 13:30:15 apholt noship $ */
3 --
4 --
5 -- ---------------------------------------------------------------------------
6 -- |---------------------< create_app_api_hook_call >-------------------------|
7 -- ---------------------------------------------------------------------------
8 -- {Start Of Comments}
9 --
10 -- Description:
11 -- This business process allows Oracle Application 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 application_id value should always be set and indicates that the
20 -- extra logic should only be called for a hook call when data corresponds to
21 -- an application.
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 -- Application specific calls must have a sequence between 1000 <= Sequence
26 -- <= 1499.
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
32 -- to it.
33 --
34 -- In Parameters:
35 -- Name Reqd Type Description
36 -- p_validate N boolean If true, the database remains
37 -- unchanged. If false a valid
38 -- assignment is created in
39 -- the database.
40 --
41 -- p_effective_date Y date Effective date.
42 --
43 -- p_api_hook_id Y number The id of the parent API Hook
44 --
45 -- p_api_hook_call_type Y varchar2 The type of the hook call. Can
46 -- only be set to 'PP' for the
47 -- first version.
48 --
49 -- p_application_id Y number Application to which hook
50 -- applies.
51 -- p_app_install_status Y varchar2 Status of the installation.
52 --
53 -- p_sequence N number When more than one row exists
54 -- for
55 -- the same API_HOOK_ID, Sequence
56 -- will affect the order of the
57 -- hook
58 -- calls (low numbers processed
59 -- first).
60 --
61 -- p_enabled_flag Y varchar2 Takes a YES/NO value.
62 --
63 -- p_call_package Y varchar2 Name of the database package
64 -- that
65 -- the hook package should call.
66 --
67 -- p_call_procedure Y varchar2 Name of the procedure within
68 -- the
69 -- CALL_PACKAGE that the hook
70 -- package
71 -- should call. It should not be
72 -- possible to call the same
73 -- package
74 -- procedure at the same hook
75 -- more
76 -- then once.
77 --
78 -- Post Success:
79 -- The API sets the following out parameters:
80 --
81 -- Name Type Description
82 -- p_api_hook_call_id number Unique ID for the hook call.
83 --
84 -- p_object_version_number number Version number of the new
85 -- hook call
86 -- Post Failure:
87 -- The API does not create the hook call and raises an error.
88 --
89 -- Access Status:
90 -- Public.
91 --
92 -- {End Of Comments}
93 --
94 procedure create_app_api_hook_call
95 (p_validate in boolean default false,
96 p_effective_date in date,
97 p_api_hook_id in number,
98 p_api_hook_call_type in varchar2,
99 p_sequence in number,
100 p_application_id in number,
101 p_app_install_status in varchar2,
102 p_enabled_flag in varchar2 default 'N',
103 p_call_package in varchar2 default null,
104 p_call_procedure in varchar2 default null,
105 p_api_hook_call_id out nocopy number,
106 p_object_version_number out nocopy number
107 );
108 --
109 -- ----------------------------------------------------------------------------
110 -- |---------------------< delete_app_api_hook_call >-------------------------|
111 -- ----------------------------------------------------------------------------
112 -- {Start Of Comments}
113 --
114 -- Description:
115 -- This API enables a Oracle Application Group to delete a row on the
116 -- HR_API_HOOK_CALLS table.
117 --
118 -- Only the application group which created the row where application_id
119 -- is not not null can delete the row.
120 --
121 -- Prerequisites:
122 -- A valid api hook call id
123 --
124 -- In Parameters:
125 -- Name Reqd Type Description
126 -- p_validate N boolean If true, the database remains
127 -- unchanged. If false, the hook
128 -- is deleted.
129 --
130 -- p_api_hook_call_id Y number Unique ID for the hook call to
131 -- be deleted.
132 --
133 -- p_object_version_number Y number Object Version Number of the
134 -- row to be deleted.
135 --
136 -- Post Success:
137 -- The API does not set any out parameters
138 --
139 -- Post Failure:
140 -- The API does not delete the hook call and raises an error.
141 --
142 -- Access Status:
143 -- Public.
144 --
145 -- {End Of Comments}
146 --
147 procedure delete_app_api_hook_call
148 (p_validate in boolean default false,
149 p_api_hook_call_id in number,
150 p_object_version_number in number);
151 --
152 -- ----------------------------------------------------------------------------
153 -- |---------------------< update_app_api_hook_call >-------------------------|
154 -- ----------------------------------------------------------------------------
155 -- {Start Of Comments}
156 --
157 -- Description:
158 -- This API enables an Oracle Application Group to update a row on the
159 -- HR_API_HOOK_CALLS table.
160 --
161 -- Only the application group which created the row where application_id
162 -- is not null can update the row.
163 --
164 -- Prerequisites:
165 -- The row to be updated must exist on the table.
166 --
167 -- In Parameters:
168 -- Name Reqd Type Description
169 -- p_validate N boolean If true, the database remains
170 -- unchanged. If false a valid
171 -- assignment is created in
172 -- the database.
173 --
174 -- p_effective_date Y date Effective date.
175 --
176 -- p_api_hook_call_id Y number Unique ID for the hook call.
177 --
178 -- p_sequence N number When more than one row exists
179 -- for
180 -- the same API_HOOK_ID, Sequence
181 -- will affect the order of the
182 -- hook
183 -- calls (low numbers processed
184 -- first).
185 -- p_app_install_status N varchar2 Whether or not the app is
186 -- installed or shared.
187 --
188 -- p_enabled_flag N varchar2 Takes a YES/NO value.
189 --
190 -- p_call_package N varchar2 Name of the database package
191 -- that
192 -- the hook package should call.
193 --
194 -- p_call_procedure N varchar2 Name of the procedure within
195 -- the
196 -- CALL_PACKAGE that the hook
197 -- package
198 -- should call. It should not be
199 -- possible to call the same
200 -- package
201 -- procedure at the same hook
202 -- more
203 -- then once.
204 --
205 --
206 -- Post Success:
207 -- The API sets the following out parameters:
208 --
209 -- Name Type Description
210 -- p_object_version_number number Version number of the updated hook
211 -- call.
212 --
213 -- Post Failure:
214 -- The API does not update the hook call and raises an error.
215 --
216 -- Access Status:
217 -- Public.
218 --
219 -- {End Of Comments}
220 --
221 procedure update_app_api_hook_call
222 (p_validate in boolean default false,
223 p_effective_date in date,
224 p_api_hook_call_id in number,
225 p_object_version_number in out nocopy number,
226 p_sequence in number default hr_api.g_number,
227 p_app_install_status in varchar2 default hr_api.g_varchar2,
228 p_enabled_flag in varchar2 default hr_api.g_varchar2,
229 p_call_package in varchar2 default hr_api.g_varchar2,
230 p_call_procedure in varchar2 default hr_api.g_varchar2,
231 p_pre_processor_date in date default hr_api.g_date,
232 p_encoded_error in varchar2 default hr_api.g_varchar2,
233 p_status in varchar2 default hr_api.g_varchar2
234 );
235 end hr_app_api_hook_call_internal;