DBA Data[Home] [Help]

PACKAGE BODY: APPS.DEFRULE_PKG

Source


1 PACKAGE BODY DEFRULE_pkg AS
2 /* $Header: OEXVDRLB.pls 120.0 2005/06/01 00:19:00 appldev noship $ */
3 
4 
5    PROCEDURE Insert_Row(
6       p_rowid 		in out NOCOPY /* file.sql.39 change */  varchar2
7      ,p_condition_id	in	  number
8      ,p_attr_def_condition_id	in	NUMBER
9      ,p_attr_def_rule_id	in out NOCOPY /* file.sql.39 change */	NUMBER
10      ,p_sequence_no	in	NUMBER
11      ,p_database_object_name 	in	VARCHAR2
12      ,p_attribute_code 	in	VARCHAR2
13     ,p_src_type 	in	VARCHAR2
14     ,p_src_api_pkg 	in	VARCHAR2
15     ,p_src_api_fn 	in	VARCHAR2
16     ,p_src_profile_option 	in	VARCHAR2
17     ,p_src_constant_value 	in	VARCHAR2
18     ,p_src_system_variable_expr 	in	VARCHAR2
19     ,p_src_parameter_name 	in	VARCHAR2
20     ,p_src_foreign_key_name 	in	VARCHAR2
21     ,p_src_database_object_name 	in	VARCHAR2
22     ,p_src_attribute_code 	in	VARCHAR2
23     ,p_src_sequence_name	in	VARCHAR2
24     ,p_system_flag	in	VARCHAR2
25     ,p_permanent_flag 		in VARCHAR2
26     ,p_created_by       	 	in      number
27     ,p_creation_date       		in      date
28     ,p_last_updated_by 	    	in      number
29     ,p_last_update_date        	in      date
30     ,p_last_update_login       	in      number
31     ,p_attribute_category       	in      varchar2
32     ,p_attribute1	       	in      varchar2
33     ,p_attribute2	       	in      varchar2
34     ,p_attribute3	       	in      varchar2
35     ,p_attribute4	       	in      varchar2
36     ,p_attribute5	       	in      varchar2
37     ,p_attribute6	       	in      varchar2
38     ,p_attribute7	       	in      varchar2
39     ,p_attribute8	       	in      varchar2
40     ,p_attribute9	       	in      varchar2
41     ,p_attribute10	       	in      varchar2
42     ,p_attribute11	       	in      varchar2
43     ,p_attribute12	       	in      varchar2
44     ,p_attribute13	       	in      varchar2
45     ,p_attribute14	       	in      varchar2
46     ,p_attribute15	       	in      varchar2
47    ) IS
48 
49 CURSOR C IS SELECT rowid from OE_DEF_attr_def_rules
50 	    WHERE attr_def_rule_id = p_attr_def_rule_id;
51 
52 BEGIN
53 
54       INSERT INTO OE_DEF_ATTR_DEF_RULES(
55 			     attr_def_condition_id,
56 			     attr_def_rule_id,
57 		             sequence_no,
58 		             database_object_name,
59 		             attribute_code,
60 			     src_type,
61 			     src_api_pkg,
62 			     src_api_fn,
63 			     src_profile_option,
64 			     src_constant_value,
65 			     src_system_variable_expr,
66 			     src_parameter_name,
67 			     src_foreign_key_name,
68 			     src_database_object_name,
69 			     src_attribute_code,
70 			     system_flag ,
71 			     permanent_flag,
72 			     created_by,
73 	             	     creation_date,
74 		             last_updated_by,
75 		             last_update_date,last_update_login)
76 
77 		 VALUES (
78 		p_attr_def_condition_id,
79 		p_attr_def_rule_id,
80 		p_sequence_no,
81 		p_database_object_name,
82 		p_attribute_code,
83 		p_src_type,
84 		p_src_api_pkg,
85 	        p_src_api_fn,
86 	        p_src_profile_option,
87 	        p_src_constant_value,
88 	        p_src_system_variable_expr,
89 	        p_src_parameter_name,
90 	        p_src_foreign_key_name,
91 	        p_src_database_object_name,
92        	        p_src_attribute_code,
93 	        p_system_flag ,
94 	        p_permanent_flag,
95         	p_created_by,
96 		p_creation_date,
97 		p_last_updated_by,
98 		p_last_update_date,
99 		p_last_update_login);
100 
101 OPEN C;
102 FETCH C INTO p_rowid;
103 if (C%NOTFOUND) THEN
104   CLOSE C;
105   Raise NO_DATA_FOUND;
106 else
107   CLOSE C;
108 end if;
109 
110 exception
111 when others then
112 
113   APP_EXCEPTION.RAISE_EXCEPTION;
114 END Insert_Row;
115 
116 
117 
118    PROCEDURE Update_Row(
119       p_rowid 		in out NOCOPY /* file.sql.39 change */  varchar2
120      ,p_condition_id	in	  number
121      ,p_attr_def_condition_id	in	NUMBER
122      ,p_attr_def_rule_id	in	NUMBER
123      ,p_sequence_no	in	NUMBER
124      ,p_database_object_name 	in	VARCHAR2
125      ,p_attribute_code 	in	VARCHAR2
126     ,p_src_type 	in	VARCHAR2
127     ,p_src_api_pkg 	in	VARCHAR2
128     ,p_src_api_fn 	in	VARCHAR2
129     ,p_src_profile_option 	in	VARCHAR2
130     ,p_src_constant_value 	in	VARCHAR2
131     ,p_src_system_variable_expr 	in	VARCHAR2
132     ,p_src_parameter_name 	in	VARCHAR2
133     ,p_src_foreign_key_name 	in	VARCHAR2
134     ,p_src_database_object_name 	in	VARCHAR2
135     ,p_src_attribute_code 	in	VARCHAR2
136     ,p_src_sequence_name	in	VARCHAR2
137     ,p_system_flag	in	VARCHAR2
138     ,p_permanent_flag 		in VARCHAR2
139     ,p_created_by       	 	in      number
140     ,p_creation_date       		in      date
141     ,p_last_updated_by 	    	in      number
142     ,p_last_update_date        	in      date
143     ,p_last_update_login       	in      number
144     ,p_attribute_category       	in      varchar2
145     ,p_attribute1	       	in      varchar2
146     ,p_attribute2	       	in      varchar2
147     ,p_attribute3	       	in      varchar2
148     ,p_attribute4	       	in      varchar2
149     ,p_attribute5	       	in      varchar2
150     ,p_attribute6	       	in      varchar2
151     ,p_attribute7	       	in      varchar2
152     ,p_attribute8	       	in      varchar2
153     ,p_attribute9	       	in      varchar2
154     ,p_attribute10	       	in      varchar2
155     ,p_attribute11	       	in      varchar2
156     ,p_attribute12	       	in      varchar2
157     ,p_attribute13	       	in      varchar2
158     ,p_attribute14	       	in      varchar2
159     ,p_attribute15	       	in      varchar2
160    ) IS
161 
162 BEGIN
163 
164 UPDATE OE_DEF_ATTR_DEF_RULES
165 set sequence_no = p_sequence_no,
166 database_object_name = p_database_object_name,
167 attribute_code=p_attribute_code,
168 src_type = p_src_type,
169 src_api_pkg = p_src_api_pkg,
170 src_api_fn = p_src_api_fn,
171 src_profile_option = p_src_profile_option,
172 src_constant_value = p_src_constant_value,
173 src_system_variable_expr = p_src_system_variable_expr,
174 src_parameter_name = p_src_parameter_name,
175 src_foreign_key_name = p_src_foreign_key_name,
176 src_database_object_name = p_src_database_object_name,
177 src_attribute_code = p_src_attribute_code,
178 last_updated_by=p_last_updated_by,
179 last_update_date=p_last_update_date
180 WHERE rowid = p_rowid;
181 
182 IF (SQL%NOTFOUND) then
183  Raise NO_DATA_FOUND;
184 end if;
185 
186 END Update_Row;
187 
188 
189 PROCEDURE Delete_Row(p_Rowid	  VARCHAR2,
190 		     p_system_flag varchar2,
191 		     p_permanent_flag varchar2) IS
192 BEGIN
193 
194   DELETE FROM OE_DEF_ATTR_DEF_RULES
195   WHERE rowid = p_rowid;
196 
197 
198 if (SQL%NOTFOUND) then
199  Raise NO_DATA_FOUND;
200 end if;
201 
202 END Delete_Row;
203 
204 
205    PROCEDURE Lock_Row(
206       p_rowid 		in out NOCOPY /* file.sql.39 change */  varchar2
207      ,p_condition_id	in	  number
208      ,p_attr_def_condition_id	in	NUMBER
209      ,p_attr_def_rule_id	in	NUMBER
210      ,p_sequence_no	in	NUMBER
211      ,p_database_object_name 	in	VARCHAR2
212      ,p_attribute_code 	in	VARCHAR2
213     ,p_src_type 	in	VARCHAR2
214     ,p_src_api_pkg 	in	VARCHAR2
215     ,p_src_api_fn 	in	VARCHAR2
216     ,p_src_profile_option 	in	VARCHAR2
217     ,p_src_constant_value 	in	VARCHAR2
218     ,p_src_system_variable_expr 	in	VARCHAR2
219     ,p_src_parameter_name 	in	VARCHAR2
220     ,p_src_foreign_key_name 	in	VARCHAR2
221     ,p_src_database_object_name 	in	VARCHAR2
222     ,p_src_attribute_code 	in	VARCHAR2
223     ,p_src_sequence_name	in	VARCHAR2
224     ,p_system_flag		in	VARCHAR2
225     ,p_permanent_flag 		in 	VARCHAR2
226     ,p_created_by       	in      number
227     ,p_creation_date       	in      date
228     ,p_last_updated_by 	    	in      number
229     ,p_last_update_date        	in      date
230     ,p_last_update_login       	in      number
231     ,p_attribute_category       in      varchar2
232     ,p_attribute1	       	in      varchar2
233     ,p_attribute2	       	in      varchar2
234     ,p_attribute3	       	in      varchar2
235     ,p_attribute4	       	in      varchar2
236     ,p_attribute5	       	in      varchar2
237     ,p_attribute6	       	in      varchar2
238     ,p_attribute7	       	in      varchar2
239     ,p_attribute8	       	in      varchar2
240     ,p_attribute9	       	in      varchar2
241     ,p_attribute10	       	in      varchar2
242     ,p_attribute11	       	in      varchar2
243     ,p_attribute12	       	in      varchar2
244     ,p_attribute13	       	in      varchar2
245     ,p_attribute14	       	in      varchar2
246     ,p_attribute15	       	in      varchar2
247 )
248 IS
249 
250 CURSOR C IS
251 SELECT * FROM OE_DEF_ATTR_DEF_RULES
252 WHERE rowid = p_Rowid
253 FOR UPDATE OF attr_def_rule_id ;
254 
255 Recinfo C%ROWTYPE;
256 
257 BEGIN
258 
259  OPEN C;
260  FETCH C into Recinfo;
261  IF (C%NOTFOUND) then
262    CLOSE C;
263    FND_MESSAGE.Set_Name('FND','FORM_RECORD_DELETED');
264    APP_EXCEPTION.Raise_Exception;
265  END IF;
266  CLOSE C;
267 
268 
269 if (
270 	    (Recinfo.attr_def_rule_id = p_attr_def_rule_id)
271         AND (Recinfo.attr_def_condition_id = p_attr_def_condition_id)
272         AND (Recinfo.database_object_name = p_database_object_name)
273         AND (Recinfo.attribute_code = p_attribute_code)
274         AND (Recinfo.sequence_no = p_sequence_no)
275         AND (Recinfo.src_type = p_src_type)
276 	AND (Recinfo.system_flag = p_system_flag)
277 	AND (Recinfo.permanent_flag = p_permanent_flag)
278 	AND ( (Recinfo.created_by = p_created_by)
279 	  OR ( ( Recinfo.created_by IS NULL)
280 	      AND ( p_created_by IS NULL)))
281 	AND ( (Recinfo.creation_date = p_creation_date)
282 	  OR ( ( Recinfo.creation_date IS NULL)
283 	      AND ( p_creation_date IS NULL)))
284 	AND ( (Recinfo.last_updated_by = p_last_updated_by)
285 	  OR ( ( Recinfo.last_updated_by IS NULL)
286 	      AND ( p_last_updated_by IS NULL)))
287 	AND ( (Recinfo.last_update_date = p_last_update_date)
288 	  OR ( ( Recinfo.last_update_date IS NULL)
289 	      AND ( p_last_update_date IS NULL)))
290 	AND ( (Recinfo.src_api_pkg = p_src_api_pkg)
291 	  OR ( ( Recinfo.src_api_pkg IS NULL)
292 	      AND ( p_src_api_pkg IS NULL)))
293 	AND ( (Recinfo.src_api_fn = p_src_api_fn)
294 	  OR ( ( Recinfo.src_api_fn IS NULL)
295 	      AND ( p_src_api_fn IS NULL)))
296 	AND ( (Recinfo.src_profile_option = p_src_profile_option)
297 	  OR ( ( Recinfo.src_profile_option IS NULL)
298 	      AND ( p_src_profile_option IS NULL)))
299 	AND ( (Recinfo.src_constant_value = p_src_constant_value)
300 	  OR ( ( Recinfo.src_constant_value IS NULL)
301 	      AND ( p_src_constant_value IS NULL)))
302 	AND ( (Recinfo.src_system_variable_expr = p_src_system_variable_expr)
303 	  OR ( ( Recinfo.src_system_variable_expr IS NULL)
304 	      AND ( p_src_system_variable_expr IS NULL)))
305 	AND ( (Recinfo.src_parameter_name = p_src_parameter_name)
306 	  OR ( ( Recinfo.src_parameter_name IS NULL)
307 	      AND ( p_src_parameter_name IS NULL)))
308 	AND ( (Recinfo.src_foreign_key_name = p_src_foreign_key_name)
309 	  OR ( ( Recinfo.src_foreign_key_name IS NULL)
310 	      AND ( p_src_foreign_key_name IS NULL)))
311 	AND ( (Recinfo.src_database_object_name = p_src_database_object_name)
312 	  OR ( ( Recinfo.src_database_object_name IS NULL)
313 	      AND ( p_src_database_object_name IS NULL)))
314 	AND ( (Recinfo.src_attribute_code = p_src_attribute_code)
315 	  OR ( ( Recinfo.src_attribute_code IS NULL)
316 	      AND ( p_src_attribute_code IS NULL)))
317 	AND ( (Recinfo.src_sequence_name = p_src_sequence_name)
318 	  OR ( ( Recinfo.src_sequence_name IS NULL)
319 	      AND ( p_src_sequence_name IS NULL)))
320 	AND ( (Recinfo.last_update_login = p_last_update_login)
321 	  OR ( ( Recinfo.last_update_login IS NULL)
322 	      AND ( p_last_update_login IS NULL)))
323 	AND ( (Recinfo.attribute_category = p_attribute_category)
324 	  OR ( ( Recinfo.attribute_category IS NULL)
325 	      AND ( p_attribute_category IS NULL)))
326 	AND ( (Recinfo.attribute1 = p_attribute1)
327 	  OR ( ( Recinfo.attribute1 IS NULL)
328 	      AND ( p_attribute1 IS NULL)))
329 	AND ( (Recinfo.attribute2 = p_attribute2)
330 	  OR ( ( Recinfo.attribute2 IS NULL)
331 	      AND ( p_attribute2 IS NULL)))
332 	AND ( (Recinfo.attribute3 = p_attribute3)
333 	  OR ( ( Recinfo.attribute3 IS NULL)
334 	      AND ( p_attribute3 IS NULL)))
335 	AND ( (Recinfo.attribute4 = p_attribute4)
336 	  OR ( ( Recinfo.attribute4 IS NULL)
337 	      AND ( p_attribute4 IS NULL)))
338 	AND ( (Recinfo.attribute5 = p_attribute5)
339 	  OR ( ( Recinfo.attribute5 IS NULL)
340 	      AND ( p_attribute5 IS NULL)))
341 	AND ( (Recinfo.attribute6 = p_attribute6)
342 	  OR ( ( Recinfo.attribute6 IS NULL)
343 	      AND ( p_attribute6 IS NULL)))
344 	AND ( (Recinfo.attribute7 = p_attribute7)
345 	  OR ( ( Recinfo.attribute7 IS NULL)
346 	      AND ( p_attribute7 IS NULL)))
347 	AND ( (Recinfo.attribute8 = p_attribute8)
348 	  OR ( ( Recinfo.attribute8 IS NULL)
349 	      AND ( p_attribute8 IS NULL)))
350 	AND ( (Recinfo.attribute9 = p_attribute9)
351 	  OR ( ( Recinfo.attribute9 IS NULL)
352 	      AND ( p_attribute9 IS NULL)))
353 	AND ( (Recinfo.attribute10 = p_attribute10)
354 	  OR ( ( Recinfo.attribute10 IS NULL)
355 	      AND ( p_attribute10 IS NULL)))
356 	AND ( (Recinfo.attribute11 = p_attribute11)
357 	  OR ( ( Recinfo.attribute11 IS NULL)
358 	      AND ( p_attribute11 IS NULL)))
359 	AND ( (Recinfo.attribute12 = p_attribute12)
360 	  OR ( ( Recinfo.attribute12 IS NULL)
361 	      AND ( p_attribute12 IS NULL)))
362 	AND ( (Recinfo.attribute13 = p_attribute13)
363 	  OR ( ( Recinfo.attribute13 IS NULL)
364 	      AND ( p_attribute13 IS NULL)))
365 	AND ( (Recinfo.attribute14 = p_attribute14)
366 	  OR ( ( Recinfo.attribute14 IS NULL)
367 	      AND ( p_attribute14 IS NULL)))
368 	AND ( (Recinfo.attribute15 = p_attribute15)
369 	  OR ( ( Recinfo.attribute15 IS NULL)
370 	      AND ( p_attribute15 IS NULL)))
371 )
372 then return;
373 else
374 FND_MESSAGE.set_Name('FND','FORM_RECORD_CHANGED');
375 APP_EXCEPTION.Raise_Exception;
376 end if;
377 
378 
379 END Lock_Row;
380 
381    Function check_Unique(p_attr_def_condition_id in NUMBER,
382 				    p_database_object_name in VARCHAR2,
383 				    p_attribute_code in VARCHAR2,
384 				    p_sequence_no in NUMBER)  RETURN BOOLEAN is
385 dmy_result varchar2(20);
386 begin
387   select 'dup sequence'
388   into dmy_result
389   from oe_def_attr_rules_v
390   where attr_def_condition_id = p_attr_def_condition_id
391   AND    database_object_name = p_database_object_name
392   AND    attribute_code = p_attribute_code
393   AND    SEQUENCE_NO = p_SEQUENCE_NO
394   and rownum =1;
395 
396   return TRUE;
397 exception when no_data_found then return FALSE;
398 
399 end;
400 
401 END DEFRULE_pkg;