[Home] [Help]
PACKAGE BODY: APPS.EDW_TRUNCATE_MD
Source
1 PACKAGE BODY EDW_TRUNCATE_MD AS
2 /* $Header: EDWUPMDB.pls 115.3 2002/12/06 22:33:32 sbuenits noship $ */
3 version CONSTANT VARCHAR (80)
4 := '$Header: EDWUPMDB.pls 115.3 2002/12/06 22:33:32 sbuenits noship $';
5 g_flag BOOLEAN := TRUE;
6
7 FUNCTION get_syn_info (syn_name IN VARCHAR2)
8 RETURN VARCHAR2
9 IS
10 CURSOR c_get_tbl_owner (syn_name IN VARCHAR2)
11 IS
12 SELECT table_owner
13 FROM user_synonyms
14 WHERE synonym_name = syn_name;
15
16 l_tbl_owner c_get_tbl_owner%ROWTYPE;
17 BEGIN
18 OPEN c_get_tbl_owner (syn_name);
19 FETCH c_get_tbl_owner INTO l_tbl_owner;
20
21 IF c_get_tbl_owner%NOTFOUND
22 THEN
23 RAISE g_getsyn;
24 END IF;
25
26 CLOSE c_get_tbl_owner;
27 RETURN l_tbl_owner.table_owner;
28 END get_syn_info;
29
30 PROCEDURE clean_up (tbl_name IN VARCHAR2)
31 IS
32 l_str VARCHAR2 (200);
33 BEGIN
34 l_str := 'truncate table '
35 || get_syn_info (tbl_name)
36 || '.'
37 || tbl_name;
38
39 IF g_flag
40 THEN
41 EXECUTE IMMEDIATE l_str;
42 g_flag := FALSE;
43 END IF;
44 END clean_up;
45 END edw_truncate_md;
46