DBA Data[Home] [Help]

PACKAGE BODY: APPS.BNE_USER_SETTINGS_PKG

Source


1 package body BNE_USER_SETTINGS_PKG as
2 /* $Header: bneusersetb.pls 120.2 2005/06/29 03:41:12 dvayro noship $ */
3 
4 procedure INSERT_ROW (
5   X_ROWID in out NOCOPY VARCHAR2,
6   X_USER_ID in NUMBER,
7   X_SETTING_GROUP in VARCHAR2,
8   X_SETTING_NAME in VARCHAR2,
9   X_SETTING_VALUE in VARCHAR2,
10   X_CREATION_DATE in DATE,
11   X_CREATED_BY in NUMBER,
12   X_LAST_UPDATE_DATE in DATE,
13   X_LAST_UPDATED_BY in NUMBER,
14   X_LAST_UPDATE_LOGIN in NUMBER
15 ) is
16   cursor C is select ROWID from BNE_USER_SETTINGS
17     where USER_ID = X_USER_ID
18     and SETTING_GROUP = X_SETTING_GROUP
19     and SETTING_NAME = X_SETTING_NAME
20     ;
21 begin
22   insert into BNE_USER_SETTINGS (
23     USER_ID,
24     SETTING_GROUP,
25     SETTING_NAME,
26     SETTING_VALUE,
27     CREATED_BY,
28     CREATION_DATE,
29     LAST_UPDATED_BY,
30     LAST_UPDATE_LOGIN,
31     LAST_UPDATE_DATE
32   ) values (
33     X_USER_ID,
34     X_SETTING_GROUP,
35     X_SETTING_NAME,
36     X_SETTING_VALUE,
37     X_CREATED_BY,
38     X_CREATION_DATE,
39     X_LAST_UPDATED_BY,
40     X_LAST_UPDATE_LOGIN,
41     X_LAST_UPDATE_DATE
42   );
43 
44   open c;
45   fetch c into X_ROWID;
46   if (c%notfound) then
47     close c;
48     raise no_data_found;
49   end if;
50   close c;
51 
52 end INSERT_ROW;
53 
54 procedure LOCK_ROW (
55   X_USER_ID in NUMBER,
56   X_SETTING_GROUP in VARCHAR2,
57   X_SETTING_NAME in VARCHAR2,
58   X_SETTING_VALUE in VARCHAR2
59 ) is
60   cursor c1 is select
61       SETTING_VALUE
62     from BNE_USER_SETTINGS
63     where USER_ID = X_USER_ID
64     and SETTING_GROUP = X_SETTING_GROUP
65     and SETTING_NAME = X_SETTING_NAME
66     for update of USER_ID nowait;
67 begin
68   for tlinfo in c1 loop
69       if (    (tlinfo.SETTING_VALUE = X_SETTING_VALUE)
70       ) then
71         null;
72       else
73         fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
74         app_exception.raise_exception;
75       end if;
76   end loop;
77   return;
78 end LOCK_ROW;
79 
80 procedure UPDATE_ROW (
81   X_USER_ID in NUMBER,
82   X_SETTING_GROUP in VARCHAR2,
83   X_SETTING_NAME in VARCHAR2,
84   X_SETTING_VALUE in VARCHAR2,
85   X_LAST_UPDATE_DATE in DATE,
86   X_LAST_UPDATED_BY in NUMBER,
87   X_LAST_UPDATE_LOGIN in NUMBER
88 ) is
89 begin
90   update BNE_USER_SETTINGS set
91     SETTING_VALUE = X_SETTING_VALUE,
92     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
93     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
94     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
95   where USER_ID = X_USER_ID
96   and SETTING_GROUP = X_SETTING_GROUP
97   and SETTING_NAME = X_SETTING_NAME;
98 
99   if (sql%notfound) then
100     raise no_data_found;
101   end if;
102 end UPDATE_ROW;
103 
104 procedure DELETE_ROW (
105   X_USER_ID in NUMBER,
106   X_SETTING_GROUP in VARCHAR2,
107   X_SETTING_NAME in VARCHAR2
108 ) is
109 begin
110   delete from BNE_USER_SETTINGS
111   where USER_ID = X_USER_ID
112   and SETTING_GROUP = X_SETTING_GROUP
113   and SETTING_NAME = X_SETTING_NAME;
114 
115   if (sql%notfound) then
116     raise no_data_found;
117   end if;
118 
119 end DELETE_ROW;
120 
121 procedure ADD_LANGUAGE
122 is
123 begin
124   null;
125 end ADD_LANGUAGE;
126 
127 --------------------------------------------------------------------------------
128 --  PROCEDURE:     LOAD_ROW                                                   --
129 --                                                                            --
130 --  DESCRIPTION:   Load a row into the BNE_USER_SETTINGS entity.              --
131 --                 This proc is called from the apps loader.                  --
132 --                                                                            --
133 --  SEE:     http://www-apps.us.oracle.com/atg/plans/r115/fndloadqr.txt       --
134 --                                                                            --
135 --                                                                            --
136 --  MODIFICATION HISTORY                                                      --
137 --  Date       Username  Description                                          --
138 --  1-Oct-02   DGROVES   CREATED                                              --
139 --------------------------------------------------------------------------------
140 procedure LOAD_ROW(
141   x_user_name                   in VARCHAR2,
142   x_setting_group               in VARCHAR2,
143   x_setting_name                in VARCHAR2,
144   x_setting_value               in VARCHAR2,
145   x_owner                       in VARCHAR2,
146   x_last_update_date            in VARCHAR2,
147   x_custom_mode                 in VARCHAR2
148 )
149 is
150   l_user_id                     number;
151   l_row_id                      varchar2(64);
152   f_luby                        number;  -- entity owner in file
153   f_ludate                      date;    -- entity update date in file
154   db_luby                       number;  -- entity owner in db
155   db_ludate                     date;    -- entity update date in db
156 begin
157   -- translate values to IDs
158   select user_id
159   into   l_user_id
160   from   fnd_user
161   where user_name = x_user_name;
162 
163   -- Translate owner to file_last_updated_by
164   f_luby := fnd_load_util.owner_id(x_owner);
165 
166   -- Translate char last_update_date to date
167   f_ludate := nvl(to_date(x_last_update_date, 'YYYY/MM/DD'), sysdate);
168   begin
169     select LAST_UPDATED_BY, LAST_UPDATE_DATE
170     into db_luby, db_ludate
171     from BNE_USER_SETTINGS
172     where USER_ID        = l_user_id
173     and   SETTING_GROUP  = x_setting_group
174     and   SETTING_NAME   = x_setting_name;
175 
176     -- Test for customization and version
177     if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
178                                   db_ludate, x_custom_mode)) then
179       -- Update existing row
180       BNE_USER_SETTINGS_PKG.Update_Row(
181         X_USER_ID                      => l_user_id,
182         X_SETTING_GROUP                => x_setting_group,
183         X_SETTING_NAME                 => x_setting_name,
184         X_SETTING_VALUE                => x_setting_value,
185         X_LAST_UPDATE_DATE             => f_ludate,
186         X_LAST_UPDATED_BY              => f_luby,
187         X_LAST_UPDATE_LOGIN            => 0
188       );
189     end if;
190   exception
191     when no_data_found then
192       -- Record doesn't exist - insert in all cases
193       BNE_USER_SETTINGS_PKG.Insert_Row(
194         X_ROWID                        => l_row_id,
195         X_USER_ID                      => l_user_id,
196         X_SETTING_GROUP                => x_setting_group,
197         X_SETTING_NAME                 => x_setting_name,
198         X_SETTING_VALUE                => x_setting_value,
199         X_CREATION_DATE                => f_ludate,
200         X_CREATED_BY                   => f_luby,
201         X_LAST_UPDATE_DATE             => f_ludate,
202         X_LAST_UPDATED_BY              => f_luby,
203         X_LAST_UPDATE_LOGIN            => 0
204       );
205   end;
206 end LOAD_ROW;
207 
208 end BNE_USER_SETTINGS_PKG;