[Home] [Help]
PACKAGE BODY: APPS.BNE_STYLE_PROPERTIES_PKG
Source
1 package body BNE_STYLE_PROPERTIES_PKG as
2 /* $Header: bnestylepb.pls 120.3 2005/08/18 07:28:40 dagroves noship $ */
3
4 procedure INSERT_ROW (
5 X_ROWID in out NOCOPY VARCHAR2,
6 X_APPLICATION_ID in NUMBER,
7 X_STYLE_CODE in VARCHAR2,
8 X_STYLE_PROPERTY_NAME in VARCHAR2,
9 X_OBJECT_VERSION_NUMBER in NUMBER,
10 X_VALUE in VARCHAR2,
11 X_CREATION_DATE in DATE,
12 X_CREATED_BY in NUMBER,
13 X_LAST_UPDATE_DATE in DATE,
14 X_LAST_UPDATED_BY in NUMBER,
15 X_LAST_UPDATE_LOGIN in NUMBER,
16 X_DATA_TYPE in VARCHAR2
17 ) is
18 cursor C is select ROWID from BNE_STYLE_PROPERTIES
19 where APPLICATION_ID = X_APPLICATION_ID
20 and STYLE_CODE = X_STYLE_CODE
21 and STYLE_PROPERTY_NAME = X_STYLE_PROPERTY_NAME
22 ;
23 begin
24 insert into BNE_STYLE_PROPERTIES (
25 APPLICATION_ID,
26 STYLE_CODE,
27 STYLE_PROPERTY_NAME,
28 OBJECT_VERSION_NUMBER,
29 VALUE,
30 DATA_TYPE,
31 CREATED_BY,
32 CREATION_DATE,
33 LAST_UPDATED_BY,
34 LAST_UPDATE_LOGIN,
35 LAST_UPDATE_DATE
36 ) values (
37 X_APPLICATION_ID,
38 X_STYLE_CODE,
39 X_STYLE_PROPERTY_NAME,
40 X_OBJECT_VERSION_NUMBER,
41 X_VALUE,
42 X_DATA_TYPE,
43 X_CREATED_BY,
44 X_CREATION_DATE,
45 X_LAST_UPDATED_BY,
46 X_LAST_UPDATE_LOGIN,
47 X_LAST_UPDATE_DATE
48 );
49
50 open c;
51 fetch c into X_ROWID;
52 if (c%notfound) then
53 close c;
54 raise no_data_found;
55 end if;
56 close c;
57
58 end INSERT_ROW;
59
60 procedure LOCK_ROW (
61 X_APPLICATION_ID in NUMBER,
62 X_STYLE_CODE in VARCHAR2,
63 X_STYLE_PROPERTY_NAME in VARCHAR2,
64 X_OBJECT_VERSION_NUMBER in NUMBER,
65 X_VALUE in VARCHAR2,
66 X_DATA_TYPE in VARCHAR2
67 ) is
68 cursor c1 is select
69 OBJECT_VERSION_NUMBER,
70 VALUE,
71 DATA_TYPE
72 from BNE_STYLE_PROPERTIES
73 where APPLICATION_ID = X_APPLICATION_ID
74 and STYLE_CODE = X_STYLE_CODE
75 and STYLE_PROPERTY_NAME = X_STYLE_PROPERTY_NAME
76 for update of APPLICATION_ID nowait;
77 begin
78 for tlinfo in c1 loop
79 if ( (tlinfo.VALUE = X_VALUE)
80 AND (tlinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
81 AND ((tlinfo.DATA_TYPE = X_DATA_TYPE)
82 OR ((tlinfo.DATA_TYPE is null) AND (X_DATA_TYPE is null)))
83 ) then
84 null;
85 else
86 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
87 app_exception.raise_exception;
88 end if;
89 end loop;
90 return;
91 end LOCK_ROW;
92
93 procedure UPDATE_ROW (
94 X_APPLICATION_ID in NUMBER,
95 X_STYLE_CODE in VARCHAR2,
96 X_STYLE_PROPERTY_NAME in VARCHAR2,
97 X_OBJECT_VERSION_NUMBER in NUMBER,
98 X_VALUE in VARCHAR2,
99 X_LAST_UPDATE_DATE in DATE,
100 X_LAST_UPDATED_BY in NUMBER,
101 X_LAST_UPDATE_LOGIN in NUMBER,
102 X_DATA_TYPE in VARCHAR2
103 ) is
104 begin
105 update BNE_STYLE_PROPERTIES set
106 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
107 VALUE = X_VALUE,
108 DATA_TYPE = X_DATA_TYPE,
109 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
110 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
111 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
112 where APPLICATION_ID = X_APPLICATION_ID
113 and STYLE_CODE = X_STYLE_CODE
114 and STYLE_PROPERTY_NAME = X_STYLE_PROPERTY_NAME;
115
116 if (sql%notfound) then
117 raise no_data_found;
118 end if;
119 end UPDATE_ROW;
120
121 procedure DELETE_ROW (
122 X_APPLICATION_ID in NUMBER,
123 X_STYLE_CODE in VARCHAR2,
124 X_STYLE_PROPERTY_NAME in VARCHAR2
125 ) is
126 begin
127 delete from BNE_STYLE_PROPERTIES
128 where APPLICATION_ID = X_APPLICATION_ID
129 and STYLE_CODE = X_STYLE_CODE
130 and STYLE_PROPERTY_NAME = X_STYLE_PROPERTY_NAME;
131
132 if (sql%notfound) then
133 raise no_data_found;
134 end if;
135
136 end DELETE_ROW;
137
138 procedure ADD_LANGUAGE
139 is
140 begin
141 null;
142 end ADD_LANGUAGE;
143
144 procedure LOAD_ROW(
145 x_style_asn IN VARCHAR2,
146 x_style_code IN VARCHAR2,
147 x_object_version_number IN VARCHAR2,
148 x_style_property_name IN VARCHAR2,
149 x_value IN VARCHAR2,
150 x_owner IN VARCHAR2,
151 x_last_update_date IN VARCHAR2,
152 x_custom_mode IN VARCHAR2,
153 x_data_type IN VARCHAR2
154 )
155 is
156 l_app_id number;
157 l_row_id varchar2(64);
158 f_luby number; -- entity owner in file
159 f_ludate date; -- entity update date in file
160 db_luby number; -- entity owner in db
161 db_ludate date; -- entity update date in db
162 begin
163 -- translate values to IDs
164 l_app_id := BNE_LCT_TOOLS_PKG.ASN_TO_APP_ID(x_style_asn);
165
166 -- Translate owner to file_last_updated_by
167 f_luby := fnd_load_util.owner_id(x_owner);
168
169 -- Translate char last_update_date to date
170 f_ludate := nvl(to_date(x_last_update_date, 'YYYY/MM/DD'), sysdate);
171 begin
172 select LAST_UPDATED_BY, LAST_UPDATE_DATE
173 into db_luby, db_ludate
174 from BNE_STYLE_PROPERTIES
175 where APPLICATION_ID = l_app_id
176 and STYLE_CODE = x_style_code
177 and STYLE_PROPERTY_NAME = x_style_property_name;
178
179 -- Test for customization and version
180 if (fnd_load_util.upload_test(f_luby, f_ludate, db_luby,
181 db_ludate, x_custom_mode)) then
182 -- Update existing row
183 BNE_STYLE_PROPERTIES_PKG.Update_Row(
184 X_APPLICATION_ID => l_app_id,
185 X_STYLE_CODE => x_style_code,
186 X_STYLE_PROPERTY_NAME => x_style_property_name,
187 X_OBJECT_VERSION_NUMBER => x_object_version_number,
188 X_VALUE => x_value,
189 X_DATA_TYPE => x_data_type,
190 X_LAST_UPDATE_DATE => f_ludate,
191 X_LAST_UPDATED_BY => f_luby,
192 X_LAST_UPDATE_LOGIN => 0
193 );
194 end if;
195 exception
196 when no_data_found then
197 -- Record doesn't exist - insert in all cases
198 BNE_STYLE_PROPERTIES_PKG.Insert_Row(
199 X_ROWID => l_row_id,
200 X_APPLICATION_ID => l_app_id,
201 X_STYLE_CODE => x_style_code,
202 X_STYLE_PROPERTY_NAME => x_style_property_name,
203 X_OBJECT_VERSION_NUMBER => x_object_version_number,
204 X_VALUE => x_value,
205 X_DATA_TYPE => x_data_type,
206 X_CREATION_DATE => f_ludate,
207 X_CREATED_BY => f_luby,
208 X_LAST_UPDATE_DATE => f_ludate,
209 X_LAST_UPDATED_BY => f_luby,
210 X_LAST_UPDATE_LOGIN => 0
211 );
212 end;
213
214 end LOAD_ROW;
215
216
217 end BNE_STYLE_PROPERTIES_PKG;