DBA Data[Home] [Help]

PACKAGE BODY: APPS.CSFW_TIMEZONE_PUB

Source


1 PACKAGE BODY CSFW_TIMEZONE_PUB as
2 /* $Header: csfwtznb.pls 115.5 2003/10/16 07:02:12 srengana ship $ */
3 -- Start of Comments
4 -- Package name     : CSFW_TIMEZONE_PUB
5 -- Purpose          :
6 -- History          :
7 -- NOTE             :
8 -- End of Comments
9 FUNCTION GET_CLIENT_TIME(p_server_time date)
10 RETURN date IS
11 
12 l_client_tz_id  number;
13 l_server_tz_id  number;
14 l_msg_count     number;
15 l_status        varchar2(1);
16 x_client_time   date;
17 l_msg_data      varchar2(2000);
18 
19 
20 BEGIN
21 
22 IF (fnd_timezones.timezones_enabled <> 'Y') THEN
23         return p_server_time;
24 END IF;
25 
26 l_client_tz_id := to_number(fnd_profile.value_specific('CLIENT_TIMEZONE_ID'));
27 l_server_tz_id := to_number(fnd_profile.value_specific('SERVER_TIMEZONE_ID'));
28 
29 HZ_TIMEZONE_PUB.GET_TIME(1.0, 'F', l_server_tz_id, l_client_tz_id, p_server_time, x_client_time, l_status, l_msg_count, l_msg_data);
30 
31 return x_client_time;
32 END GET_CLIENT_TIME;
33 
34 
35 
36 FUNCTION TIME_DIFF_SERVER_TO_CLIENT
37 RETURN NUMBER IS
38 
39 l_client_tz_id  number;
40 l_server_tz_id  number;
41 l_msg_count     number;
42 l_status        varchar2(1);
43 x_time_diff     number;
44 l_msg_data      varchar2(2000);
45 l_sysdate_server date;
46 l_sysdate_client date;
47 
48 BEGIN
49 IF (fnd_timezones.timezones_enabled <> 'Y') THEN
50         return 0;
51 END IF;
52 
53 l_client_tz_id := to_number(fnd_profile.value_specific('CLIENT_TIMEZONE_ID'));
54 l_server_tz_id := to_number(fnd_profile.value_specific('SERVER_TIMEZONE_ID'));
55 
56 l_sysdate_server := sysdate;
57 
58 HZ_TIMEZONE_PUB.GET_TIME(1.0, 'F', l_server_tz_id, l_client_tz_id, l_sysdate_server, l_sysdate_client, l_status, l_msg_count, l_msg_data);
59 x_time_diff := l_sysdate_server - l_sysdate_client;-- (server - client)
60 
61 return x_time_diff;
62 
63 END TIME_DIFF_SERVER_TO_CLIENT;
64 
65 
66 FUNCTION GET_SERVER_TIME(p_client_time VARCHAR2, p_date_format VARCHAR2)
67 RETURN String IS
68 
69 l_client_tz_id  number;
70 l_server_tz_id  number;
71 l_msg_count     number;
72 l_status        varchar2(1);
73 x_server_time   date;
74 l_msg_data      varchar2(2000);
75 l_client_date   date;
76 
77 
78 BEGIN
79 
80 IF (fnd_timezones.timezones_enabled <> 'Y') THEN
81         return p_client_time;
82 END IF;
83 
84 
85 l_client_tz_id := to_number(fnd_profile.value('CLIENT_TIMEZONE_ID'));
86 l_server_tz_id := to_number(fnd_profile.value('SERVER_TIMEZONE_ID'));
87 
88 HZ_TIMEZONE_PUB.GET_TIME(1.0, 'F', l_client_tz_id,l_server_tz_id, to_date(p_client_time, p_date_format) ,x_server_time, l_status, l_msg_count, l_msg_data);
89 
90 return to_char(x_server_time,p_date_format) ;
91 END GET_SERVER_TIME;
92 
93 
94 
95 
96 END CSFW_TIMEZONE_PUB;