1 Package pe_pei_bus AUTHID CURRENT_USER as
2 /* $Header: pepeirhi.pkh 120.0 2005/05/31 13:21:30 appldev noship $ */
3 --
4 -- ----------------------------------------------------------------------------
5 -- |---------------------------< insert_validate >----------------------------|
6 -- ----------------------------------------------------------------------------
7 -- {Start Of Comments}
8 --
9 -- Description:
10 -- This procedure controls the execution of all insert business rules
11 -- validation.
12 --
13 -- Pre Conditions:
14 -- This private procedure is called from ins procedure.
15 --
16 -- In Parameters:
17 -- A Pl/Sql record structre.
18 --
19 -- Post Success:
20 -- Processing continues.
21 --
22 -- Post Failure:
23 -- If a business rules fails the error will not be handled by this procedure
24 -- unless explicity coded.
25 --
26 -- Developer Implementation Notes:
27 -- For insert, your business rules should be executed from this procedure and
28 -- should ideally (unless really necessary) just be straight procedure or
29 -- function calls. Try and avoid using conditional branching logic.
30 --
31 -- Access Status:
32 -- Internal Table Handler Use Only.
33 --
34 -- {End Of Comments}
35 -- ----------------------------------------------------------------------------
36 Procedure insert_validate(p_rec in pe_pei_shd.g_rec_type);
37 --
38 -- ----------------------------------------------------------------------------
39 -- |---------------------------< update_validate >----------------------------|
40 -- ----------------------------------------------------------------------------
41 -- {Start Of Comments}
42 --
43 -- Description:
44 -- This procedure controls the execution of all update business rules
45 -- validation.
46 --
47 -- Pre Conditions:
48 -- This private procedure is called from upd procedure.
49 --
50 -- In Parameters:
51 -- A Pl/Sql record structre.
52 --
53 -- Post Success:
54 -- Processing continues.
55 --
56 -- Post Failure:
57 -- If a business rules fails the error will not be handled by this procedure
58 -- unless explicity coded.
59 --
60 -- Developer Implementation Notes:
61 -- For update, your business rules should be executed from this procedure and
62 -- should ideally (unless really necessary) just be straight procedure or
63 -- function calls. Try and avoid using conditional branching logic.
64 --
65 -- Access Status:
66 -- Internal Table Handler Use Only.
67 --
68 -- {End Of Comments}
69 -- ----------------------------------------------------------------------------
70 Procedure update_validate(p_rec in pe_pei_shd.g_rec_type);
71 --
72 -- ----------------------------------------------------------------------------
73 -- |---------------------------< delete_validate >----------------------------|
74 -- ----------------------------------------------------------------------------
75 -- {Start Of Comments}
76 --
77 -- Description:
78 -- This procedure controls the execution of all delete business rules
79 -- validation.
80 --
81 -- Pre Conditions:
82 -- This private procedure is called from del procedure.
83 --
84 -- In Parameters:
85 -- A Pl/Sql record structre.
86 --
87 -- Post Success:
88 -- Processing continues.
89 --
90 -- Post Failure:
91 -- If a business rules fails the error will not be handled by this procedure
92 -- unless explicity coded.
93 --
94 -- Developer Implementation Notes:
95 -- For delete, your business rules should be executed from this procedure and
96 -- should ideally (unless really necessary) just be straight procedure or
97 -- function calls. Try and avoid using conditional branching logic.
98 --
99 -- Access Status:
100 -- Internal Table Handler Use Only.
101 --
102 -- {End Of Comments}
103 -- ----------------------------------------------------------------------------
104 Procedure delete_validate(p_rec in pe_pei_shd.g_rec_type);
105 --
106 -- ---------------------------------------------------------------------------
107 -- |---------------------< return_legislation_code >-------------------------|
108 -- ---------------------------------------------------------------------------
109 --
110 function return_legislation_code
111 (p_person_extra_info_id in number
112 ) return varchar2;
113 --
114 -- ----------------------------------------------------------------------------
115 -- |-----------------------< chk_non_updateable_args >------------------------|
116 -- ----------------------------------------------------------------------------
117 -- {Start Of Comments}
118 --
119 -- Description:
120 -- Verify that the non updateable arguments not changed.
121 -- For the PERSON_EXTRA_INFO table neither of the FK's can be updated
122 -- i.e. PERSON_ID and INFORMATION_TYPE
123 --
124 -- Pre Conditions:
125 -- None
126 --
127 -- In Parameters:
128 -- p_rec
129 --
130 -- Post Success:
131 -- Processing continues.
132 --
133 -- Post Failure:
134 -- An application error will be raised and processing is terminated.
135 --
136 -- Developer Implementation Notes:
137 -- None
138 --
139 -- Access Status:
140 -- Internal Row Handler Use Only.
141 --
142 -- {End Of Comments}
143 -- ----------------------------------------------------------------------------
144 --
145 Procedure chk_non_updateable_args(p_rec in pe_pei_shd.g_rec_type);
146 --
147 --
148 -- ---------------------------------------------------------------------------
149 -- |------------------------------< chk_person_id >---------------------------|
150 -- ---------------------------------------------------------------------------
151 --
152 -- Desciption:
153 -- This procedures validates that the person id exists on the PER_PERSON_F
154 -- table. Note: It does not check if they exists at a given time such as
155 -- p_effective_date
156 --
157 -- Pre-conditions :
158 -- None
159 --
160 -- In Parameters :
161 -- p_person_id
162 --
163 -- Post Success :
164 -- Processing continues if the person id is valid
165 --
166 -- Post Failure :
167 -- An application error will be raised and processing is terminated if the
168 -- person id is invalid
169 --
170 -- Access Status :
171 -- Internal Row Handler Use only.
172 --
173 -- {End of Comments}
174 --
175 -- ---------------------------------------------------------------------------
176 procedure chk_person_id
177 (p_person_id in per_people_extra_info.person_id%TYPE
178 -- ,p_effective_date in date
179 );
180 --
181 -- ----------------------------------------------------------------------------
182 -- |-------------------------< chk_information_type >--------------------------|
183 -- ----------------------------------------------------------------------------
184 --
185 -- Desciption:
186 -- This procedures validates that the information type is active on the
187 -- PER_PEOPLE_INFO_TYPE table
188 --
189 -- Pre-conditions :
190 -- p_person_id is valid
191 --
192 -- In Parameters :
193 -- p_information_type
194 -- p_person_id
195 --
196 -- Post Success :
197 -- Processing continues if the information type is active. It will also
198 -- continue if the information type does not allow multiple occurrences and
199 -- there doesn't a record for the given information type and person.
200 --
201 -- Post Failure :
202 -- An application error will be raised and processing is terminated if the
203 -- information type is not active.
204 -- An application error will also be raised and processing is terminated if
205 -- the information type doe not allow multiple occurrences and there already
206 -- exists a record for that information type and person.
207 --
208 -- Access Status :
209 -- Internal Row Handler Use only.
210 --
211 -- {End of Comments}
212 --
213 -- ---------------------------------------------------------------------------
214 Procedure chk_information_type
215 (p_information_type in per_people_extra_info.information_type%TYPE
216 ,p_person_id in per_people_extra_info.person_id%TYPE);
217 end pe_pei_bus;