[Home] [Help]
PACKAGE BODY: APPS.IEM_UTILITY_PVT
Source
1 package body IEM_UTILITY_PVT as
2 /* $Header: iemutilb.pls 120.2 2006/03/20 10:34:13 chtang noship $*/
3 G_PKG_NAME varchar2(100):='IEM_UTILITY_PVT';
4 PROCEDURE GetEmailAccountList(p_api_version_number IN NUMBER,
5 p_init_msg_list IN VARCHAR2 ,
6 p_commit IN VARCHAR2 ,
7 x_account_tbl out nocopy email_account_tbl,
8 x_return_status OUT NOCOPY VARCHAR2,
9 x_msg_count OUT NOCOPY NUMBER,
10 x_msg_data OUT NOCOPY VARCHAR2) IS
11 l_api_version_number number:=1.0;
12 l_api_name varchar2(30):='GetEmailAccountList';
13 cursor c1 is select email_account_id,from_name from iem_mstemail_accounts where deleted_flag<>'Y'
14 order by from_name;
15 i number:=0;
16 BEGIN
17 -- Standard call to check for call compatibility.
18 IF NOT FND_API.Compatible_API_Call (l_api_version_number,
19 p_api_version_number,
20 l_api_name,
21 G_PKG_NAME)
22 THEN
23 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
24 END IF;
25 SAVEPOINT select_mail_count_pvt;
26 x_return_status := FND_API.G_RET_STS_SUCCESS;
27 i:=0;
28 for v1 in c1 loop
29 i:=i+1;
30 x_account_tbl(i).email_account_id:=v1.email_account_id;
31 x_account_tbl(i).account_name:=v1.from_name;
32 end loop;
33 -- Standard Check Of p_commit.
34 IF p_commit='T' THEN
35 COMMIT WORK;
36 END IF;
37 -- Standard callto get message count and if count is 1, get message info.
38 FND_MSG_PUB.Count_And_Get
39 ( p_count => x_msg_count,
40 p_data => x_msg_data
41 );
42 EXCEPTION
43
44 WHEN FND_API.G_EXC_ERROR THEN
45 ROLLBACK TO select_mail_count_PVT;
46 x_return_status := FND_API.G_RET_STS_ERROR ;
47 FND_MSG_PUB.Count_And_Get
48 ( p_count => x_msg_count,
49 p_data => x_msg_data
50 );
51 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
52 ROLLBACK TO select_mail_count_PVT;
53 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
54 FND_MSG_PUB.Count_And_Get
55 ( p_count => x_msg_count,
56 p_data => x_msg_data
57 );
58 WHEN OTHERS THEN
59 ROLLBACK TO select_mail_count_PVT;
60 x_return_status := FND_API.G_RET_STS_ERROR;
61 IF FND_MSG_PUB.Check_Msg_Level
62 (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
63 THEN
64 FND_MSG_PUB.Add_Exc_Msg
65 ( G_PKG_NAME ,
66 l_api_name
67 );
68 END IF;
69 FND_MSG_PUB.Count_And_Get
70 ( p_count => x_msg_count ,
71 p_data => x_msg_data
72 );
73
74 END GetEmailAccountList;
75
76 PROCEDURE GetClassLists(p_api_version_number IN NUMBER,
77 p_init_msg_list IN VARCHAR2 ,
78 p_commit IN VARCHAR2 ,
79 p_email_account_id in number,
80 x_class_tbl out nocopy email_class_tbl,
81 x_return_status OUT NOCOPY VARCHAR2,
82 x_msg_count OUT NOCOPY NUMBER,
83 x_msg_data OUT NOCOPY VARCHAR2) IS
84 l_api_version_number number:=1.0;
85 l_api_name varchar2(30):='GetEmailAccountList';
86 cursor c1 is
87 select a.route_classification_id,b.name from iem_account_route_class a,iem_route_classifications b
88 where a.route_classification_id=b.route_classification_id and a.enabled_flag='Y'
89 and a.email_account_id=p_email_account_id
90 order by 2;
91
92 i number:=0;
93 BEGIN
94 -- Standard call to check for call compatibility.
95 IF NOT FND_API.Compatible_API_Call (l_api_version_number,
96 p_api_version_number,
97 l_api_name,
98 G_PKG_NAME)
99 THEN
100 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
101 END IF;
102 SAVEPOINT select_mail_count_pvt;
103 x_return_status := FND_API.G_RET_STS_SUCCESS;
104 i:=0;
105 for v1 in c1 loop
106 i:=i+1;
107 x_class_tbl(i).rt_classification_id:=v1.route_classification_id;
108 x_class_tbl(i).name:=v1.name;
109 end loop;
110 -- Standard Check Of p_commit.
111 IF p_commit='T' THEN
112 COMMIT WORK;
113 END IF;
114 -- Standard callto get message count and if count is 1, get message info.
115 FND_MSG_PUB.Count_And_Get
116 ( p_count => x_msg_count,
117 p_data => x_msg_data
118 );
119 EXCEPTION
120
121 WHEN FND_API.G_EXC_ERROR THEN
122 ROLLBACK TO select_mail_count_PVT;
123 x_return_status := FND_API.G_RET_STS_ERROR ;
124 FND_MSG_PUB.Count_And_Get
125 ( p_count => x_msg_count,
126 p_data => x_msg_data
127 );
128 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
129 ROLLBACK TO select_mail_count_PVT;
130 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
131 FND_MSG_PUB.Count_And_Get
132 ( p_count => x_msg_count,
133 p_data => x_msg_data
134 );
135 WHEN OTHERS THEN
136 ROLLBACK TO select_mail_count_PVT;
137 x_return_status := FND_API.G_RET_STS_ERROR;
138 IF FND_MSG_PUB.Check_Msg_Level
139 (FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
140 THEN
141 FND_MSG_PUB.Add_Exc_Msg
142 ( G_PKG_NAME ,
143 l_api_name
144 );
145 END IF;
146 FND_MSG_PUB.Count_And_Get
147 ( p_count => x_msg_count ,
148 p_data => x_msg_data
149 );
150 end GetClassLists;
151 FUNCTION gettimezone(p_date in date,
152 p_resource_id in number) return varchar2 IS
153 l_client_tz_id number;
154 l_status varchar2(10);
155 l_msg_count number;
156 l_msg_data varchar2(200);
157 l_date date;
158 x_date varchar2(200);
159 l_user_id number;
160 l_time_format varchar2(100);
161 l_format varchar2(100);
162 begin
163 select user_id into l_user_id from JTF_RS_RESOURCE_EXTNS
164 where resource_id=p_resource_id;
165 l_client_tz_id :=to_number(fnd_profile.value_specific('CLIENT_TIMEZONE_ID',l_user_id));
166 l_time_format :=fnd_profile.value_specific('ICX_DATE_FORMAT_MASK',l_user_id);
167 l_format:=l_time_format||' '||'HH24:MI:SS';
168 HZ_TIMEZONE_PUB.Get_Time(1.0,'F', 0, l_client_tz_id, p_date,
169 l_date, l_status, l_msg_count, l_msg_data);
170 x_date:=to_char(l_date,l_format);
171 return(x_date);
172 exception when others then
173 x_date:=to_char(p_date,'DD-MON-YYYY HH24:MI:SS');
174 return(x_date);
175 end gettimezone;
176 end IEM_UTILITY_PVT ;