[Home] [Help]
PACKAGE BODY: APPS.IEX_DEBUG_PUB
Source
1 PACKAGE BODY IEX_DEBUG_PUB as
2 /* $Header: iexidbgb.pls 120.2 2004/11/05 16:24:50 jsanju ship $ */
3 -- Start of Comments
4 -- Package name : IEX_DEBUG_PUB
5 -- Purpose :
6 -- History :
7 -- NOTE :
8 -- End of Comments
9
10
11 DB_NAME VARCHAR2(80) ;
12
13 PG_DEBUG NUMBER(2) ;
14
15 Function OpenFile(P_File in varchar2 ) Return Varchar2 IS
16 rtn_val Varchar2(2000);
17 Begin
18
19 if G_DIR is null then
20 select value INTO G_DIR
21 from v$PARAMETER where name = 'utl_file_dir';
22 if instr(G_DIR,',') > 0 then
23 G_DIR := substr(G_DIR,1,instr(G_DIR,',')-1);
24 end if;
25 END IF;
26
27
28 if P_FILE is null then
29 -- select substr('l'|| substr(to_char(sysdate,'MI'),1,1)
30 -- || lpad(iex_debug_file_s.nextval,6,'0'),1,8) || '.IEX'
31 --into G_FILE from dual;
32
33 SELECT DB_NAME || USERENV('SESSIONID') || '.IEX' into G_FILE
34 FROM DUAL;
35
36 G_FILE_PTR := utl_file.fopen(G_DIR, G_FILE, 'w');
37 else
38 G_FILE :=P_File;
39 G_FILE_PTR := utl_file.fopen(G_DIR, G_FILE, 'a');
40 end if;
41
42 rtn_val := G_DIR || '/' || g_file;
43
44
45 return(rtn_val);
46 Exception
47 WHEN OTHERS then
48 return(null);
49 End OpenFile;
50
51 Procedure SetDebugFileDir(P_FILEDIR IN VARCHAR2) IS
52
53 BEGIN
54 if p_FileDir IS not null then
55 G_DIR := p_FileDir;
56 end if;
57 END;
58
59
60 -- PROCEDURE LogMessage
61 --
62 -- Usage Used to log message to the debug file
63
64 PROCEDURE LogMessage(debug_msg in Varchar2,
65 debug_level in Number default 10,
66 print_date in varchar2 default 'N')
67
68 IS
69 rtn_val Varchar2(2000);
70 BEGIN
71 if (FND_LOG.LEVEL_PROCEDURE >= FND_LOG.G_CURRENT_RUNTIME_LEVEL) then
72 FND_LOG.STRING(FND_LOG.LEVEL_PROCEDURE, 'iex', debug_msg );
73 end if;
74
75 --jsanju , write to file for bug 3796601
76 if (G_Debug_Level <= debug_level) then
77 rtn_val:=OpenFile(G_FILE);
78 utl_file.put_line(G_FILE_PTR,
79 to_char( sysdate, 'DD-MON-YYYY HH:MI:SS') || ' ' || debug_msg );
80 utl_file.fflush(G_FILE_PTR);
81 utl_file.fclose(G_FILE_PTR);
82 end if;
83
84
85
86 Exception
87 WHEN OTHERS then
88 null;
89 END LogMessage; -- LogMessage
90
91
92 -- PROCEDURE SetDebugLevel
93 --
94 -- Usage set debug level if running outside of application otherwise debuglevel
95 -- is taken from the profile value
96
97 Procedure SetDebugLevel(p_debug_level in number)
98 IS
99 Begin
100 IEX_DEBUG_PUB.G_DEBUG_LEVEL := p_debug_level;
101 End SetDebugLevel;
102
103 BEGIN
104
105 PG_DEBUG := TO_NUMBER(NVL(FND_PROFILE.value('IEX_DEBUG_LEVEL'), '20'));
106 SELECT NAME INTO DB_NAME FROM V$DATABASE;
107 DB_NAME := DB_NAME || '_';
108
109 END IEX_DEBUG_PUB;