The following lines contain the word 'select', 'insert', 'update' or 'delete':
03-MAR-1994 P.K.Attwood 4.1 Changed select statement in
get_dates to query
trunc(sysdate). Added
delete_ses_rows procedure.
13-MAY-1994 P.K.Attwood 3.0 Transferred out nocopy of version 4 DT
into version 3, so all server
side code is in the same place.
05-OCT-1994 R.M.Fine 30.1 Renamed package to dt_fndate to
conform to naming convention that
all objects begin '_'.
30-MAR-1999 P.K.Attwood 110.1 861272 In get_dates corrected setting
115.1 g_sys_date when globals
variables have not been set and
a row already exists in
fnd_sessions.
22-APR-1999 P.K.Attwood 115.2 854170 Rewrote the delete_ses_rows
procedure to remove the join
between FND_SESSIONS and a v$
view.
13-AUG-1999 P.K.Attwood 115.3 In change_ses_date when no row
is found in FND_SESSIONS added
raise exception.
22-JUN-2001 P.K.Attwood 115.4 1841141 To support OPS (Oracle Parallel
Server) inside the
delete_ses_rows procedure
changed references from
v$session to gv$session.
13-SEP-2001 P.K.Attwood 115.5 Added set_effective_date
procedure.
19-DEC-2001 G.Perry 115.6 Added dbdrv
31-JAN-2002 G.Sayers 115.7 Added validation to get_dates and
change_ses_date to ensure
g_ses_yesterday_date is set to
null when g_ses_date=01/01/0001
01-FEB-2002 G.Sayers 115.8 Removed hr_utility commands.
06-Dec-2002 A.Holt 115.9 NOCOPY Performance Changes for 11.5.9
09-Feb-2005 K.Tangeeda 115.10 Versions 115.10 and 115.11 contain
the same code as version 115.9
09-Feb-2005 K.Tangeeda 115.11 This version contains the same
code as the version 115.9
07-May-2006 V.Kaduban 120.1 Procedure delete_old_ses_rows has
been added which is exact copy of
delete_ses_rows. Existing
delete_ses_rows has been modified
so that all it does is to delete the
row from fnd_sessions for the current
session. Also the procedure
clean_fnd_sessions has been added
which does the same thing as
delete_old_ses_rows but used by
a concurrent program to do that
cleanup periodically.All these
changes are as a part of long term
solution to the bug 4163689.
14-Aug-2008 avarri 120.2 7260450 Modified delete_old_ses_rows to
resolve the performance issue.
27-Aug-2009 avarri 120.1.12000000.3 Modified delete_old_ses_rows to
replace fndSessionId.FIRST with 1 and
fndSessionId.LAST with
fndSessionId.COUNT to resolve 8839784
-----------+-------------+-------+----------+-------------------------------+
*/
--
-- Declare globals to this package
--
g_ses_date date;
select fs.effective_date
, fs.effective_date -1
, to_date('01/01/0001','DD/MM/YYYY')
, to_date('31/12/4712','DD/MM/YYYY')
, trunc(sysdate)
into g_ses_date
, g_ses_yesterday_date
, g_start_of_time
, g_end_of_time
, g_sys_date
from fnd_sessions fs
where fs.session_id = userenv('sessionid');
insert into fnd_sessions (session_id, effective_date)
values (userenv('sessionid'), g_ses_date);
no_row_need_to_insert exception;
update fnd_sessions
set effective_date = trunc(p_ses_date)
where session_id = userenv('sessionid');
raise no_row_need_to_insert;
when no_row_need_to_insert then
g_ses_date := trunc(p_ses_date);
insert into fnd_sessions (session_id, effective_date)
values (userenv('sessionid'), g_ses_date);
procedure delete_ses_rows(p_commit out nocopy number) is
--
-- Declare exceptions to be handled
--
begin
delete from fnd_sessions f
where session_id = userenv('sessionid');
end delete_ses_rows;
procedure delete_old_ses_rows(p_commit out nocopy number) is
--
-- Declare cursors
--
cursor csr_fnd_ses is
select session_id
from fnd_sessions;
select audsid
from gv$session;
delete from fnd_sessions where session_id = delSessionId(l);
end delete_old_ses_rows;
delete_old_ses_rows(l_commit_flag);