[Home] [Help]
PACKAGE BODY: APPS.GMA_SY_PARA_CDS_PKG
Source
1 package body GMA_SY_PARA_CDS_PKG AS
2 /* $Header: GMAPARAB.pls 115.6 2002/10/31 19:29:38 appldev ship $ */
3 procedure INSERT_ROW (
4 X_ROWID in out nocopy VARCHAR2,
5 X_TABLE_NAME in VARCHAR2,
6 X_LANG_CODE in VARCHAR2,
7 X_PARAGRAPH_CODE in VARCHAR2,
8 X_SUB_PARACODE in NUMBER,
9 X_NONPRINTABLE_IND in NUMBER,
10 X_PARA_DESC 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 ) is
17 cursor C is select ROWID from SY_PARA_CDS_TL
18 where TABLE_NAME = X_TABLE_NAME
19 and LANG_CODE = X_LANG_CODE
20 and PARAGRAPH_CODE = X_PARAGRAPH_CODE
21 and SUB_PARACODE = X_SUB_PARACODE
22 and LANGUAGE = userenv('LANG')
23 ;
24 begin
25 insert into SY_PARA_CDS_TL (
26 TABLE_NAME,
27 LANG_CODE,
28 PARAGRAPH_CODE,
29 SUB_PARACODE,
30 PARA_DESC,
31 NONPRINTABLE_IND,
32 CREATION_DATE,
33 CREATED_BY,
34 LAST_UPDATE_DATE,
35 LAST_UPDATED_BY,
36 LAST_UPDATE_LOGIN,
37 LANGUAGE,
38 SOURCE_LANG
39 ) select
40 X_TABLE_NAME,
41 X_LANG_CODE,
42 X_PARAGRAPH_CODE,
43 X_SUB_PARACODE,
44 X_PARA_DESC,
45 X_NONPRINTABLE_IND,
46 X_CREATION_DATE,
47 X_CREATED_BY,
48 X_LAST_UPDATE_DATE,
49 X_LAST_UPDATED_BY,
50 X_LAST_UPDATE_LOGIN,
51 L.LANGUAGE_CODE,
52 userenv('LANG')
53 from FND_LANGUAGES L
54 where L.INSTALLED_FLAG in ('I', 'B')
55 and not exists
56 (select NULL
57 from SY_PARA_CDS_TL T
58 where T.TABLE_NAME = X_TABLE_NAME
59 and T.LANG_CODE = X_LANG_CODE
60 and T.PARAGRAPH_CODE = X_PARAGRAPH_CODE
61 and T.SUB_PARACODE = X_SUB_PARACODE
62 and T.LANGUAGE = L.LANGUAGE_CODE);
63
64 open c;
65 fetch c into X_ROWID;
66 if (c%notfound) then
67 close c;
68 raise no_data_found;
69 end if;
70 close c;
71
72 end INSERT_ROW;
73
74 procedure LOCK_ROW (
75 X_TABLE_NAME in VARCHAR2,
76 X_LANG_CODE in VARCHAR2,
77 X_PARAGRAPH_CODE in VARCHAR2,
78 X_SUB_PARACODE in NUMBER,
79 X_NONPRINTABLE_IND in NUMBER,
80 X_PARA_DESC in VARCHAR2
81 ) is
82 cursor c1 is select
83 NONPRINTABLE_IND,
84 PARA_DESC,
85 decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
86 from SY_PARA_CDS_TL
87 where TABLE_NAME = X_TABLE_NAME
88 and LANG_CODE = X_LANG_CODE
89 and PARAGRAPH_CODE = X_PARAGRAPH_CODE
90 and SUB_PARACODE = X_SUB_PARACODE
91 and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
92 for update of TABLE_NAME nowait;
93 begin
94 for tlinfo in c1 loop
95 if (tlinfo.BASELANG = 'Y') then
96 if ( (tlinfo.PARA_DESC = X_PARA_DESC)
97 AND (tlinfo.NONPRINTABLE_IND = X_NONPRINTABLE_IND)
98 ) then
99 null;
100 else
101 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
102 app_exception.raise_exception;
103 end if;
104 end if;
105 end loop;
106 return;
107 end LOCK_ROW;
108
109 procedure UPDATE_ROW (
110 X_TABLE_NAME in VARCHAR2,
111 X_LANG_CODE in VARCHAR2,
112 X_PARAGRAPH_CODE in VARCHAR2,
113 X_SUB_PARACODE in NUMBER,
114 X_NONPRINTABLE_IND in NUMBER,
115 X_PARA_DESC in VARCHAR2,
116 X_LAST_UPDATE_DATE in DATE,
117 X_LAST_UPDATED_BY in NUMBER,
118 X_LAST_UPDATE_LOGIN in NUMBER
119 ) is
120 begin
121 update SY_PARA_CDS_TL set
122 NONPRINTABLE_IND = X_NONPRINTABLE_IND,
123 PARA_DESC = X_PARA_DESC,
124 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
125 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
126 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
127 SOURCE_LANG = userenv('LANG')
128 where TABLE_NAME = X_TABLE_NAME
129 and LANG_CODE = X_LANG_CODE
130 and PARAGRAPH_CODE = X_PARAGRAPH_CODE
131 and SUB_PARACODE = X_SUB_PARACODE
132 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
133
134 if (sql%notfound) then
135 raise no_data_found;
136 end if;
137 end UPDATE_ROW;
138
139 procedure DELETE_ROW (
140 X_TABLE_NAME in VARCHAR2,
141 X_LANG_CODE in VARCHAR2,
142 X_PARAGRAPH_CODE in VARCHAR2,
143 X_SUB_PARACODE in NUMBER
144 ) is
145 begin
146 delete from SY_PARA_CDS_TL
147 where TABLE_NAME = X_TABLE_NAME
148 and LANG_CODE = X_LANG_CODE
149 and PARAGRAPH_CODE = X_PARAGRAPH_CODE
150 and SUB_PARACODE = X_SUB_PARACODE;
151
152 if (sql%notfound) then
153 raise no_data_found;
154 end if;
155
156 end DELETE_ROW;
157
158 procedure ADD_LANGUAGE
159 is
160 begin
161 update SY_PARA_CDS_TL T set (
162 PARA_DESC
163 ) = (select
164 B.PARA_DESC
165 from SY_PARA_CDS_TL B
166 where B.TABLE_NAME = T.TABLE_NAME
167 and B.LANG_CODE = T.LANG_CODE
168 and B.PARAGRAPH_CODE = T.PARAGRAPH_CODE
169 and B.SUB_PARACODE = T.SUB_PARACODE
170 and B.LANGUAGE = T.SOURCE_LANG)
171 where (
172 T.TABLE_NAME,
173 T.LANG_CODE,
174 T.PARAGRAPH_CODE,
175 T.SUB_PARACODE,
176 T.LANGUAGE
177 ) in (select
178 SUBT.TABLE_NAME,
179 SUBT.LANG_CODE,
180 SUBT.PARAGRAPH_CODE,
181 SUBT.SUB_PARACODE,
182 SUBT.LANGUAGE
183 from SY_PARA_CDS_TL SUBB, SY_PARA_CDS_TL SUBT
184 where SUBB.TABLE_NAME = SUBT.TABLE_NAME
185 and SUBB.LANG_CODE = SUBT.LANG_CODE
186 and SUBB.PARAGRAPH_CODE = SUBT.PARAGRAPH_CODE
187 and SUBB.SUB_PARACODE = SUBT.SUB_PARACODE
188 and SUBB.LANGUAGE = SUBT.SOURCE_LANG
189 and (SUBB.PARA_DESC <> SUBT.PARA_DESC
190 ));
191
192 insert into SY_PARA_CDS_TL (
193 TABLE_NAME,
194 LANG_CODE,
195 PARAGRAPH_CODE,
196 SUB_PARACODE,
197 PARA_DESC,
198 NONPRINTABLE_IND,
199 CREATION_DATE,
200 CREATED_BY,
201 LAST_UPDATE_DATE,
202 LAST_UPDATED_BY,
203 LAST_UPDATE_LOGIN,
204 LANGUAGE,
205 SOURCE_LANG
206 ) select
207 B.TABLE_NAME,
208 B.LANG_CODE,
209 B.PARAGRAPH_CODE,
210 B.SUB_PARACODE,
211 B.PARA_DESC,
212 B.NONPRINTABLE_IND,
213 B.CREATION_DATE,
214 B.CREATED_BY,
215 B.LAST_UPDATE_DATE,
216 B.LAST_UPDATED_BY,
217 B.LAST_UPDATE_LOGIN,
218 L.LANGUAGE_CODE,
219 B.SOURCE_LANG
220 from SY_PARA_CDS_TL B, FND_LANGUAGES L
221 where L.INSTALLED_FLAG in ('I', 'B')
222 and B.LANGUAGE = userenv('LANG')
223 and not exists
224 (select NULL
225 from SY_PARA_CDS_TL T
226 where T.TABLE_NAME = B.TABLE_NAME
227 and T.LANG_CODE = B.LANG_CODE
228 and T.PARAGRAPH_CODE = B.PARAGRAPH_CODE
229 and T.SUB_PARACODE = B.SUB_PARACODE
230 and T.LANGUAGE = L.LANGUAGE_CODE);
231 end ADD_LANGUAGE;
232
233 procedure TRANSLATE_ROW (
234 X_TABLE_NAME in VARCHAR2,
235 X_PARAGRAPH_CODE in VARCHAR2,
236 X_SUB_PARACODE in NUMBER,
237 X_PARA_DESC in VARCHAR2
238 ) IS
239 BEGIN
240 update SY_PARA_CDS_TL set
241 PARA_DESC = X_PARA_DESC,
242 SOURCE_LANG = userenv('LANG'),
243 LAST_UPDATE_DATE = sysdate,
244 LAST_UPDATED_BY = 0,
245 LAST_UPDATE_LOGIN = 0
246 where TABLE_NAME = X_TABLE_NAME
247 and PARAGRAPH_CODE = X_PARAGRAPH_CODE
248 and SUB_PARACODE = X_SUB_PARACODE
249 and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
250 end TRANSLATE_ROW;
251
252 procedure LOAD_ROW (
253 X_TABLE_NAME in VARCHAR2,
254 X_LANG_CODE in VARCHAR2,
255 X_PARAGRAPH_CODE in VARCHAR2,
256 X_SUB_PARACODE in NUMBER,
257 X_NONPRINTABLE_IND in NUMBER,
258 X_PARA_DESC in VARCHAR2
259 ) IS
260 l_user_id number:=0;
261 l_row_id VARCHAR2(64);
262 BEGIN
263 /* IF (X_OWNER ='SEED') THEN */
264 l_user_id :=1;
265 /* END IF; */
266
267 GMA_SY_PARA_CDS_PKG.UPDATE_ROW (
268
269 X_TABLE_NAME => X_TABLE_NAME,
270 X_LANG_CODE => X_LANG_CODE,
271 X_PARAGRAPH_CODE => X_PARAGRAPH_CODE,
272 X_SUB_PARACODE => X_SUB_PARACODE,
273 X_NONPRINTABLE_IND => X_NONPRINTABLE_IND,
274 X_PARA_DESC => X_PARA_DESC,
275 X_LAST_UPDATE_DATE => sysdate,
276 X_LAST_UPDATED_BY => l_user_id,
277 X_LAST_UPDATE_LOGIN => 0
278 );
279
280
281 EXCEPTION
282 WHEN NO_DATA_FOUND THEN
283
284
285 GMA_SY_PARA_CDS_PKG.INSERT_ROW ( X_ROWID => l_row_id,
286 X_TABLE_NAME => X_TABLE_NAME,
287 X_LANG_CODE => X_LANG_CODE,
288 X_PARAGRAPH_CODE => X_PARAGRAPH_CODE,
289 X_SUB_PARACODE => X_SUB_PARACODE,
290 X_NONPRINTABLE_IND => X_NONPRINTABLE_IND,
291 X_PARA_DESC => X_PARA_DESC,
292 X_CREATION_DATE => sysdate,
293 X_CREATED_BY => l_user_id,
294 X_LAST_UPDATE_DATE => sysdate,
295 X_LAST_UPDATED_BY => l_user_id,
296 X_LAST_UPDATE_LOGIN => 0
297 );
298
299 END LOAD_ROW;
300
301
302 end GMA_SY_PARA_CDS_PKG;