DBA Data[Home] [Help]

PACKAGE BODY: APPS.BNE_INTERFACE_KEYS_PKG

Source


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