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