DBA Data[Home] [Help]

PACKAGE: APPS.BEN_ENB_SHD

Source


1 Package ben_enb_shd as
2 /* $Header: beenbrhi.pkh 120.0 2005/05/28 02:27:57 appldev noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |                    Global Record Type Specification                      |
6 -- ----------------------------------------------------------------------------
7 --
8 Type g_rec_type Is Record
9   (
10    enrt_bnft_id                    NUMBER(15,0) ,
11    dflt_flag                       VARCHAR2(30)  ,
12    val_has_bn_prortd_flag          VARCHAR2(30)  ,
13    bndry_perd_cd                   VARCHAR2(30) ,
14    val                             NUMBER       ,
15    nnmntry_uom                     VARCHAR2(30) ,
16    bnft_typ_cd                     VARCHAR2(30) ,
17    entr_val_at_enrt_flag           VARCHAR2(30),
18    mn_val                          NUMBER(15,2) ,
19    mx_val                          NUMBER(15,2) ,
20    incrmt_val                      NUMBER(15,2) ,
21    dflt_val                        NUMBER(15,2) ,
22    rt_typ_cd                       VARCHAR2(30) ,
23    cvg_mlt_cd                      VARCHAR2(30) ,
24    ctfn_rqd_flag                   VARCHAR2(30) ,
25    ordr_num                        NUMBER(15) ,
26    crntly_enrld_flag               VARCHAR2(30) ,
27    elig_per_elctbl_chc_id          NUMBER(15,0) ,
28    prtt_enrt_rslt_id               NUMBER(15,0) ,
29    comp_lvl_fctr_id                NUMBER(15)   ,
30    business_group_id               NUMBER(15)   ,
31    enb_attribute_category          VARCHAR2(30) ,
32    enb_attribute1                  VARCHAR2(150),
33    enb_attribute2                  VARCHAR2(150),
34    enb_attribute3                  VARCHAR2(150),
35    enb_attribute4                  VARCHAR2(150),
36    enb_attribute5                  VARCHAR2(150),
37    enb_attribute6                  VARCHAR2(150),
38    enb_attribute7                  VARCHAR2(150),
39    enb_attribute8                  VARCHAR2(150),
40    enb_attribute9                  VARCHAR2(150),
41    enb_attribute10                 VARCHAR2(150),
42    enb_attribute11                 VARCHAR2(150),
43    enb_attribute12                 VARCHAR2(150),
44    enb_attribute13                 VARCHAR2(150),
45    enb_attribute14                 VARCHAR2(150),
46    enb_attribute15                 VARCHAR2(150),
47    enb_attribute16                 VARCHAR2(150),
48    enb_attribute17                 VARCHAR2(150),
49    enb_attribute18                 VARCHAR2(150),
50    enb_attribute19                 VARCHAR2(150),
51    enb_attribute20                 VARCHAR2(150),
52    enb_attribute21                 VARCHAR2(150),
53    enb_attribute22                 VARCHAR2(150),
54    enb_attribute23                 VARCHAR2(150),
55    enb_attribute24                 VARCHAR2(150),
56    enb_attribute25                 VARCHAR2(150),
57    enb_attribute26                 VARCHAR2(150),
58    enb_attribute27                 VARCHAR2(150),
59    enb_attribute28                 VARCHAR2(150),
60    enb_attribute29                 VARCHAR2(150),
61    enb_attribute30                 VARCHAR2(150),
62    request_id                      NUMBER(15)   ,
63    program_application_id          NUMBER(15)   ,
64    program_id                      NUMBER(15)   ,
65    mx_wout_ctfn_val                NUMBER	,
66    mx_wo_ctfn_flag                 varchar2(30) ,
67    program_update_date             DATE         ,
68    object_version_number           NUMBER(9)
69   );
70 --
71 -- ----------------------------------------------------------------------------
72 -- |           Global Definitions - Internal Development Use Only             |
73 -- ----------------------------------------------------------------------------
74 --
75 g_old_rec  g_rec_type;                            -- Global record definition
76 g_api_dml  boolean;                               -- Global api dml status
77 --
78 -- ----------------------------------------------------------------------------
79 -- |------------------------< return_api_dml_status >-------------------------|
80 -- ----------------------------------------------------------------------------
81 -- {Start Of Comments}
82 --
83 -- Description:
84 --   This function will return the current g_api_dml private global
85 --   boolean status.
86 --   The g_api_dml status determines if at the time of the function
87 --   being executed if a dml statement (i.e. INSERT, UPDATE or DELETE)
88 --   is being issued from within an api.
89 --   If the status is TRUE then a dml statement is being issued from
90 --   within this entity api.
91 --   This function is primarily to support database triggers which
92 --   need to maintain the object_version_number for non-supported
93 --   dml statements (i.e. dml statement issued outside of the api layer).
94 --
95 -- Prerequisites:
96 --   None.
97 --
98 -- In Parameters:
99 --   None.
100 --
101 -- Post Success:
102 --   Processing continues.
103 --   If the function returns a TRUE value then, dml is being executed from
104 --   within this api.
105 --
106 -- Post Failure:
107 --   None.
108 --
109 -- Access Status:
110 --   Internal Row Handler Use Only.
111 --
112 -- {End Of Comments}
113 -- ----------------------------------------------------------------------------
114 Function return_api_dml_status Return Boolean;
115 --
116 -- ----------------------------------------------------------------------------
117 -- |---------------------------< constraint_error >---------------------------|
118 -- ----------------------------------------------------------------------------
119 -- {Start Of Comments}
120 --
121 -- Description:
122 --   This procedure is called when a constraint has been violated (i.e.
123 --   The exception hr_api.check_integrity_violated,
124 --   hr_api.parent_integrity_violated, hr_api.child_integrity_violated or
125 --   hr_api.unique_integrity_violated has been raised).
126 --   The exceptions can only be raised as follows:
127 --   1) A check constraint can only be violated during an INSERT or UPDATE
128 --      dml operation.
129 --   2) A parent integrity constraint can only be violated during an
130 --      INSERT or UPDATE dml operation.
131 --   3) A child integrity constraint can only be violated during an
132 --      DELETE dml operation.
133 --   4) A unique integrity constraint can only be violated during INSERT or
134 --      UPDATE dml operation.
135 --
136 -- Prerequisites:
137 --   1) Either hr_api.check_integrity_violated,
138 --      hr_api.parent_integrity_violated, hr_api.child_integrity_violated or
139 --      hr_api.unique_integrity_violated has been raised with the subsequent
140 --      stripping of the constraint name from the generated error message
141 --      text.
142 --   2) Standalone validation test which corresponds with a constraint error.
143 --
144 -- In Parameter:
145 --   p_constraint_name is in upper format and is just the constraint name
146 --   (e.g. not prefixed by brackets, schema owner etc).
147 --
148 -- Post Success:
149 --   Development dependant.
150 --
151 -- Post Failure:
152 --   Developement dependant.
153 --
154 -- Developer Implementation Notes:
155 --   For each constraint being checked the hr system package failure message
156 --   has been generated as a template only. These system error messages should
157 --   be modified as required (i.e. change the system failure message to a user
158 --   friendly defined error message).
159 --
160 -- Access Status:
161 --   Internal Development Use Only.
162 --
163 -- {End Of Comments}
164 -- ----------------------------------------------------------------------------
165 Procedure constraint_error
166             (p_constraint_name in all_constraints.constraint_name%TYPE);
167 --
168 -- ----------------------------------------------------------------------------
169 -- |-----------------------------< api_updating >-----------------------------|
170 -- ----------------------------------------------------------------------------
171 -- {Start Of Comments}
172 --
173 -- Description:
174 --   This function is used to populate the g_old_rec record with the
175 --   current row from the database for the specified primary key
176 --   provided that the primary key exists and is valid and does not
177 --   already match the current g_old_rec. The function will always return
178 --   a TRUE value if the g_old_rec is populated with the current row.
179 --   A FALSE value will be returned if all of the primary key arguments
180 --   are null.
181 --
182 -- Prerequisites:
183 --   None.
184 --
185 -- In Parameters:
186 --
187 -- Post Success:
188 --   A value of TRUE will be returned indiciating that the g_old_rec
189 --   is current.
190 --   A value of FALSE will be returned if all of the primary key arguments
191 --   have a null value (this indicates that the row has not be inserted into
192 --   the Schema), and therefore could never have a corresponding row.
193 --
194 -- Post Failure:
195 --   A failure can only occur under two circumstances:
196 --   1) The primary key is invalid (i.e. a row does not exist for the
197 --      specified primary key values).
198 --   2) If an object_version_number exists but is NOT the same as the current
199 --      g_old_rec value.
200 --
201 -- Developer Implementation Notes:
202 --   None.
203 --
204 -- Access Status:
205 --   Internal Development Use Only.
206 --
207 -- {End Of Comments}
208 -- ----------------------------------------------------------------------------
209 Function api_updating
210   (
211   p_enrt_bnft_id                       in number,
212   p_object_version_number              in number
213   )      Return Boolean;
214 --
215 -- ----------------------------------------------------------------------------
216 -- |---------------------------------< lck >----------------------------------|
217 -- ----------------------------------------------------------------------------
218 -- {Start Of Comments}
219 --
220 -- Description:
221 --   The Lck process has two main functions to perform. Firstly, the row to be
222 --   updated or deleted must be locked. The locking of the row will only be
223 --   successful if the row is not currently locked by another user.
224 --   Secondly, during the locking of the row, the row is selected into
225 --   the g_old_rec data structure which enables the current row values from the
226 --   server to be available to the api.
227 --
228 -- Prerequisites:
229 --   When attempting to call the lock the object version number (if defined)
230 --   is mandatory.
231 --
232 -- In Parameters:
233 --   The arguments to the Lck process are the primary key(s) which uniquely
234 --   identify the row and the object version number of row.
235 --
236 -- Post Success:
237 --   On successful completion of the Lck process the row to be updated or
238 --   deleted will be locked and selected into the global data structure
239 --   g_old_rec.
240 --
241 -- Post Failure:
242 --   The Lck process can fail for three reasons:
243 --   1) When attempting to lock the row the row could already be locked by
244 --      another user. This will raise the HR_Api.Object_Locked exception.
245 --   2) The row which is required to be locked doesn't exist in the HR Schema.
246 --      This error is trapped and reported using the message name
247 --      'HR_7220_INVALID_PRIMARY_KEY'.
248 --   3) The row although existing in the HR Schema has a different object
249 --      version number than the object version number specified.
250 --      This error is trapped and reported using the message name
251 --      'HR_7155_OBJECT_INVALID'.
252 --
253 -- Developer Implementation Notes:
254 --   For each primary key and the object version number arguments add a
255 --   call to hr_api.mandatory_arg_error procedure to ensure that these
256 --   argument values are not null.
257 --
258 -- Access Status:
259 --   Internal Development Use Only.
260 --
261 -- {End Of Comments}
262 -- ----------------------------------------------------------------------------
263 Procedure lck
264   (
265   p_enrt_bnft_id                       in number,
266   p_object_version_number              in number
267   );
268 --
269 -- ----------------------------------------------------------------------------
270 -- |-----------------------------< convert_args >-----------------------------|
271 -- ----------------------------------------------------------------------------
272 -- {Start Of Comments}
273 --
274 -- Description:
275 --   This function is used to turn attribute parameters into the record
276 --   structure parameter g_rec_type.
277 --
278 -- Prerequisites:
279 --   This is a private function and can only be called from the ins or upd
280 --   attribute processes.
281 --
282 -- In Parameters:
283 --
284 -- Post Success:
285 --   A returning record structure will be returned.
286 --
287 -- Post Failure:
288 --   No direct error handling is required within this function. Any possible
289 --   errors within this function will be a PL/SQL value error due to conversion
290 --   of datatypes or data lengths.
291 --
292 -- Developer Implementation Notes:
293 --   None.
294 --
295 -- Access Status:
296 --   Internal Row Handler Use Only.
297 --
298 -- {End Of Comments}
299 -- ----------------------------------------------------------------------------
300 Function convert_args
301  (
302    p_enrt_bnft_id                   in  number
303   ,p_dflt_flag                      in  varchar2
304   ,p_val_has_bn_prortd_flag         in  varchar2
305   ,p_bndry_perd_cd                  in  varchar2
306   ,p_val                            in  number
307   ,p_nnmntry_uom                    in  varchar2
308   ,p_bnft_typ_cd                    in  varchar2
309   ,p_entr_val_at_enrt_flag          in  varchar2
310   ,p_mn_val                         in  number
311   ,p_mx_val                         in  number
312   ,p_incrmt_val                     in  number
313   ,p_dflt_val                       in  number
314   ,p_rt_typ_cd                      in  varchar2
315   ,p_cvg_mlt_cd                     in  varchar2
316   ,p_ctfn_rqd_flag                  in  varchar2
317   ,p_ordr_num                       in  number
318   ,p_crntly_enrld_flag              in  varchar2
319   ,p_elig_per_elctbl_chc_id         in  number
320   ,p_prtt_enrt_rslt_id              in  number
321   ,p_comp_lvl_fctr_id               in  number
322   ,p_business_group_id              in  number
323   ,p_enb_attribute_category         in  varchar2
324   ,p_enb_attribute1                 in  varchar2
325   ,p_enb_attribute2                 in  varchar2
326   ,p_enb_attribute3                 in  varchar2
327   ,p_enb_attribute4                 in  varchar2
328   ,p_enb_attribute5                 in  varchar2
329   ,p_enb_attribute6                 in  varchar2
330   ,p_enb_attribute7                 in  varchar2
331   ,p_enb_attribute8                 in  varchar2
332   ,p_enb_attribute9                 in  varchar2
333   ,p_enb_attribute10                in  varchar2
334   ,p_enb_attribute11                in  varchar2
335   ,p_enb_attribute12                in  varchar2
336   ,p_enb_attribute13                in  varchar2
337   ,p_enb_attribute14                in  varchar2
338   ,p_enb_attribute15                in  varchar2
339   ,p_enb_attribute16                in  varchar2
340   ,p_enb_attribute17                in  varchar2
341   ,p_enb_attribute18                in  varchar2
342   ,p_enb_attribute19                in  varchar2
343   ,p_enb_attribute20                in  varchar2
344   ,p_enb_attribute21                in  varchar2
345   ,p_enb_attribute22                in  varchar2
346   ,p_enb_attribute23                in  varchar2
347   ,p_enb_attribute24                in  varchar2
348   ,p_enb_attribute25                in  varchar2
349   ,p_enb_attribute26                in  varchar2
350   ,p_enb_attribute27                in  varchar2
351   ,p_enb_attribute28                in  varchar2
352   ,p_enb_attribute29                in  varchar2
353   ,p_enb_attribute30                in  varchar2
354   ,p_request_id                     in  number
355   ,p_program_application_id         in  number
356   ,p_program_id                     in  number
357   ,p_mx_wout_ctfn_val               in  number
358   ,p_mx_wo_ctfn_flag                in  varchar2
359   ,p_program_update_date            in  date
360   ,p_object_version_number          in  number
361  )
362 	Return g_rec_type;
363 --
364 end ben_enb_shd;