DBA Data[Home] [Help]

PACKAGE BODY: APPS.CSF_RMDUP

Source


1 package body csf_rmdup as
2 /*$Header: csfrmdpb.pls 120.0 2005/05/25 11:11:44 appldev noship $*/
3 
4 procedure clean_adm_bounds
5 is
6   cursor c1( start_id NUMBER ) is
7     select ADMIN_BOUND_ID, rowid
8     from CSF_MD_ADM_BOUNDS
9     where ADMIN_BOUND_ID >= start_id
10     order by ADMIN_BOUND_ID;
11   r1 c1%ROWTYPE;
12 
13   einde BOOLEAN;
14   min_start_id NUMBER;
15   max_batch NUMBER := 1000;
16 begin
17   min_start_id := -1;
18   einde := false;
19 
20   loop
21     open c1(min_start_id);
22     loop
23       fetch c1 into r1;
24 
25       if ( c1%NOTFOUND ) then
26         einde := true;
27         exit;
28       end if;
29 
30       if ( min_start_id = r1.ADMIN_BOUND_ID ) then
31         delete from CSF_MD_ADM_BOUNDS where rowid = r1.rowid;
32       else
33         min_start_id := r1.ADMIN_BOUND_ID;
34       end if;
35 
36       exit when c1%ROWCOUNT > max_batch;
37 
38     end loop;
39     close c1;
40 
41     commit;
42     exit when einde;
43 
44   end loop;
45 
46 end;
47 
48 procedure clean_hydros
49 is
50   cursor c1( start_id NUMBER ) is
51     select hydrography_id, rowid
52     from csf_md_hydros
53     where hydrography_id >= start_id
54     order by hydrography_id;
55   r1 c1%ROWTYPE;
56 
57   einde BOOLEAN;
58   min_start_id NUMBER;
59   max_batch NUMBER := 1000;
60 begin
61   min_start_id := -1;
62   einde := false;
63 
64   loop
65     open c1(min_start_id);
66     loop
67       fetch c1 into r1;
68 
69       if ( c1%NOTFOUND ) then
70         einde := true;
71         exit;
72       end if;
73 
74       if ( min_start_id = r1.hydrography_id ) then
75         delete from csf_md_hydros where rowid = r1.rowid;
76       else
77         min_start_id := r1.hydrography_id;
78       end if;
79 
80       exit when c1%ROWCOUNT > max_batch;
81 
82     end loop;
83     close c1;
84 
85     commit;
86     exit when einde;
87 
88   end loop;
89 
90 end;
91 
92 procedure clean_inst_style_shts
93 is
94   cursor c1( start_id NUMBER ) is
95     select INST_STYLE_ID, rowid
96     from CSF_MD_INST_STYLE_SHTS
97     where INST_STYLE_ID >= start_id
98     order by INST_STYLE_ID;
99   r1 c1%ROWTYPE;
100 
101   einde BOOLEAN;
102   min_start_id NUMBER;
103   max_batch NUMBER := 1000;
104 begin
105   min_start_id := -1;
106   einde := false;
107 
108   loop
109     open c1(min_start_id);
110     loop
111       fetch c1 into r1;
112 
113       if ( c1%NOTFOUND ) then
114         einde := true;
115         exit;
116       end if;
117 
118       if ( min_start_id = r1.INST_STYLE_ID ) then
119         delete from CSF_MD_INST_STYLE_SHTS where rowid = r1.rowid;
120       else
121         min_start_id := r1.INST_STYLE_ID;
122       end if;
123 
124       exit when c1%ROWCOUNT > max_batch;
125 
126     end loop;
127     close c1;
128 
129     commit;
130     exit when einde;
131 
132   end loop;
133 
134 end;
135 
136 procedure clean_land_uses
137 is
138   cursor c1( start_id NUMBER ) is
139     select LANDUSE_ID, rowid
140     from CSF_MD_LAND_USES
141     where LANDUSE_ID >= start_id
142     order by LANDUSE_ID;
143   r1 c1%ROWTYPE;
144 
145   einde BOOLEAN;
146   min_start_id NUMBER;
147   max_batch NUMBER := 1000;
148 begin
149   min_start_id := -1;
150   einde := false;
151 
152   loop
153     open c1(min_start_id);
154     loop
155       fetch c1 into r1;
156 
157       if ( c1%NOTFOUND ) then
158         einde := true;
159         exit;
160       end if;
161 
162       if ( min_start_id = r1.LANDUSE_ID ) then
163         delete from CSF_MD_LAND_USES where rowid = r1.rowid;
164       else
165         min_start_id := r1.LANDUSE_ID;
166       end if;
167 
168       exit when c1%ROWCOUNT > max_batch;
169 
170     end loop;
171     close c1;
172 
173     commit;
174     exit when einde;
175 
176   end loop;
177 
178 end;
179 
180 procedure clean_layer_metadata
181 is
182   cursor c1( start_id NUMBER ) is
183     select LAYER_METADATA_ID, rowid
184     from CSF_MD_LYR_METADATA
185     where LAYER_METADATA_ID >= start_id
186     order by LAYER_METADATA_ID;
187   r1 c1%ROWTYPE;
188 
189   einde BOOLEAN;
190   min_start_id NUMBER;
191   max_batch NUMBER := 1000;
192 begin
193   min_start_id := -1;
194   einde := false;
195 
196   loop
197     open c1(min_start_id);
198     loop
199       fetch c1 into r1;
200 
201       if ( c1%NOTFOUND ) then
202         einde := true;
203         exit;
204       end if;
205 
206       if ( min_start_id = r1.LAYER_METADATA_ID ) then
207         delete from CSF_MD_LYR_METADATA where rowid = r1.rowid;
208       else
209         min_start_id := r1.LAYER_METADATA_ID;
210       end if;
211 
212       exit when c1%ROWCOUNT > max_batch;
213 
214     end loop;
215     close c1;
216 
217     commit;
218     exit when einde;
219 
220   end loop;
221 
222 end;
223 
224 procedure clean_layer_style_shts
225 is
226   cursor c1( start_id NUMBER ) is
227     select LAYER_STYLE_SHEET_ID, rowid
228     from CSF_MD_LYR_STYLE_SHTS
229     where LAYER_STYLE_SHEET_ID >= start_id
230     order by LAYER_STYLE_SHEET_ID;
231   r1 c1%ROWTYPE;
232 
233   einde BOOLEAN;
234   min_start_id NUMBER;
235   max_batch NUMBER := 1000;
236 begin
237   min_start_id := -1;
238   einde := false;
239 
240   loop
241     open c1(min_start_id);
242     loop
243       fetch c1 into r1;
244 
245       if ( c1%NOTFOUND ) then
246         einde := true;
247         exit;
248       end if;
249 
250       if ( min_start_id = r1.LAYER_STYLE_SHEET_ID ) then
251         delete from CSF_MD_LYR_STYLE_SHTS where rowid = r1.rowid;
252       else
253         min_start_id := r1.LAYER_STYLE_SHEET_ID;
254       end if;
255 
256       exit when c1%ROWCOUNT > max_batch;
257 
258     end loop;
259     close c1;
260 
261     commit;
262     exit when einde;
263 
264   end loop;
265 
266 end;
267 
268 procedure clean_names
269 is
270   cursor c1( start_id NUMBER ) is
271     select name_id, rowid
272     from csf_md_names
273     where name_id >= start_id
274     order by name_id;
275   r1 c1%ROWTYPE;
276 
277   einde BOOLEAN;
278   min_start_id NUMBER;
279   max_batch NUMBER := 1000;
280 
281 begin
282   min_start_id := -1;
283   einde := false;
284 
285   loop
286     open c1(min_start_id);
287     loop
288       fetch c1 into r1;
289 
290       if ( c1%NOTFOUND ) then
291         einde := true;
292         exit;
293       end if;
294 
295       if ( min_start_id = r1.name_id ) then
296         delete from csf_md_names where rowid = r1.rowid;
297       else
298         min_start_id := r1.name_id;
299       end if;
300 
301       exit when c1%ROWCOUNT > max_batch;
302 
303     end loop;
304     close c1;
305 
306     commit;
307     exit when einde;
308   end loop;
309 end;
310 
311 procedure clean_pois
312 is
313   cursor c1( start_id NUMBER ) is
314     select poi_id, rowid
315     from csf_md_pois
316     where poi_id >= start_id
317     order by poi_id;
318   r1 c1%ROWTYPE;
319 
320   einde BOOLEAN;
321   min_start_id NUMBER;
322   max_batch NUMBER := 1000;
323 
324 begin
325   min_start_id := -1;
326   einde := false;
327 
328   loop
329     open c1(min_start_id);
330     loop
331       fetch c1 into r1;
332 
333       if ( c1%NOTFOUND ) then
334         einde := true;
335         exit;
336       end if;
337 
338       if ( min_start_id = r1.poi_id ) then
339         delete from csf_md_pois where rowid = r1.rowid;
340       else
341         min_start_id := r1.poi_id;
342       end if;
343 
344       exit when c1%ROWCOUNT > max_batch;
345 
346     end loop;
347     close c1;
348 
349     commit;
350     exit when einde;
351 
352   end loop;
353 
354 end;
355 
356 procedure clean_poi_names
357 is
358   cursor c1( start_id NUMBER ) is
359     select poi_nm_asgn_id, rowid
360     from csf_md_poi_nm_asgns
361     where poi_nm_asgn_id >= start_id
362     order by poi_nm_asgn_id;
363   r1 c1%ROWTYPE;
364 
365   einde BOOLEAN;
366   min_start_id NUMBER;
367   max_batch NUMBER := 1000;
368 
369 begin
370   min_start_id := -1;
371   einde := false;
372 
373   loop
374     open c1(min_start_id);
375     loop
376       fetch c1 into r1;
377 
378       if ( c1%NOTFOUND ) then
379         einde := true;
380         exit;
381       end if;
382 
383       if ( min_start_id = r1.poi_nm_asgn_id ) then
384         delete from csf_md_poi_nm_asgns where rowid = r1.rowid;
385       else
386         min_start_id := r1.poi_nm_asgn_id;
387       end if;
388 
389       exit when c1%ROWCOUNT > max_batch;
390 
391     end loop;
392     close c1;
393 
394     commit;
395     exit when einde;
396 
397   end loop;
398 
399 end;
400 
401 procedure clean_rail_segs
402 is
403   cursor c1( start_id NUMBER ) is
404     select railroad_segment_id, rowid
405     from csf_md_rail_segs
406     where railroad_segment_id >= start_id
407     order by railroad_segment_id;
408   r1 c1%ROWTYPE;
409 
410   einde BOOLEAN;
411   min_start_id NUMBER;
412   max_batch NUMBER := 1000;
413 
414 begin
415   min_start_id := -1;
416   einde := false;
417 
418   loop
419     open c1(min_start_id);
420     loop
421       fetch c1 into r1;
422 
423       if ( c1%NOTFOUND ) then
424         einde := true;
425         exit;
426       end if;
427 
428       if ( min_start_id = r1.railroad_segment_id ) then
429         delete from csf_md_rail_segs where rowid = r1.rowid;
430       else
431         min_start_id := r1.railroad_segment_id;
432       end if;
433 
434       exit when c1%ROWCOUNT > max_batch;
435 
436     end loop;
437     close c1;
438 
439     commit;
440     exit when einde;
441 
442   end loop;
443 
444 end;
445 
446 procedure clean_rdseg_names
447 is
448   cursor c1( start_id NUMBER ) is
449     select rd_seg_nm_id, rowid
450     from csf_md_rdseg_nm_asgns
451     where rd_seg_nm_id >= start_id
452     order by rd_seg_nm_id;
453   r1 c1%ROWTYPE;
454 
455   einde BOOLEAN;
456   min_start_id NUMBER;
457   max_batch NUMBER := 1000;
458 
459 begin
460   min_start_id := -1;
461   einde := false;
462 
463   loop
464     open c1(min_start_id);
465     loop
466       fetch c1 into r1;
467 
468       if ( c1%NOTFOUND ) then
469         einde := true;
470         exit;
471       end if;
472 
473       if ( min_start_id = r1.rd_seg_nm_id ) then
474         delete from csf_md_rdseg_nm_asgns where rowid = r1.rowid;
475       else
476         min_start_id := r1.rd_seg_nm_id;
477       end if;
478 
479       exit when c1%ROWCOUNT > max_batch;
480 
481     end loop;
482     close c1;
483 
484     commit;
485     exit when einde;
486 
487   end loop;
488 
489 end;
490 
491 procedure clean_road_segments
492 is
493   cursor c1( start_id NUMBER ) is
494     select road_segment_id, rowid
495     from csf_md_rd_segs
496     where road_segment_id >= start_id
497     order by road_segment_id;
498   r1 c1%ROWTYPE;
499 
500   einde BOOLEAN;
501   min_start_id NUMBER;
502   max_batch NUMBER := 1000;
503 
504 begin
505   min_start_id := -1;
506   einde := false;
507 
508   loop
509     open c1(min_start_id);
510     loop
511       fetch c1 into r1;
512 
513       if ( c1%NOTFOUND ) then
514         einde := true;
515         exit;
516       end if;
517 
518       if ( min_start_id = r1.road_segment_id ) then
519         delete from csf_md_rd_segs where rowid = r1.rowid;
520       else
521         min_start_id := r1.road_segment_id;
522       end if;
523 
524       exit when c1%ROWCOUNT > max_batch;
525 
526     end loop;
527     close c1;
528 
529     commit;
530     exit when einde;
531 
532   end loop;
533 
534 end;
535 
536 procedure clean_theme_metadata
537 is
538   cursor c1( start_id NUMBER ) is
539     select theme_id, rowid
540     from csf_md_theme_metadata
541     where theme_id >= start_id
542     order by theme_id;
543   r1 c1%ROWTYPE;
544 
545   einde BOOLEAN;
546   min_start_id NUMBER;
547   max_batch NUMBER := 1000;
548 
549 begin
550   min_start_id := -1;
551   einde := false;
552 
553   loop
554     open c1(min_start_id);
555     loop
556       fetch c1 into r1;
557 
558       if ( c1%NOTFOUND ) then
559         einde := true;
560         exit;
561       end if;
562 
563       if ( min_start_id = r1.theme_id ) then
564         delete from csf_md_theme_metadata where rowid = r1.rowid;
565       else
566         min_start_id := r1.theme_id;
567       end if;
568 
569       exit when c1%ROWCOUNT > max_batch;
570 
571     end loop;
572     close c1;
573 
574     commit;
575     exit when einde;
576 
577   end loop;
578 
579 end;
580 
581 end csf_rmdup;