[Home] [Help]
PACKAGE BODY: APPS.ZX_DETERMINING_FACTORS_PKG
Source
1 package body ZX_DETERMINING_FACTORS_PKG as
2 /* $Header: zxritrldetfactb.pls 120.14 2005/11/01 23:51:58 rsanthan ship $ */
3
4 g_current_runtime_level CONSTANT NUMBER := FND_LOG.G_CURRENT_RUNTIME_LEVEL;
5 g_level_statement CONSTANT NUMBER := FND_LOG.LEVEL_STATEMENT;
6 g_level_procedure CONSTANT NUMBER := FND_LOG.LEVEL_PROCEDURE;
7 g_level_event CONSTANT NUMBER := FND_LOG.LEVEL_EVENT;
8 g_level_unexpected CONSTANT NUMBER := FND_LOG.LEVEL_UNEXPECTED;
9
10 PROCEDURE INSERT_ROW
11 (X_ROWID IN OUT NOCOPY VARCHAR2,
12 X_DETERMINING_FACTOR_ID NUMBER,
13 X_DETERMINING_FACTOR_CODE VARCHAR2,
14 X_DETERMINING_FACTOR_CLASS_COD VARCHAR2,
15 X_VALUE_SET VARCHAR2,
16 X_TAX_PARAMETER_CODE VARCHAR2,
17 X_DATA_TYPE_CODE VARCHAR2,
18 X_TAX_FUNCTION_CODE VARCHAR2,
19 X_RECORD_TYPE_CODE VARCHAR2,
20 X_TAX_REGIME_DET_FLAG VARCHAR2,
21 X_TAX_SUMMARIZATION_FLAG VARCHAR2,
22 X_TAX_RULES_FLAG VARCHAR2,
23 X_TAXABLE_BASIS_FLAG VARCHAR2,
24 X_TAX_CALCULATION_FLAG VARCHAR2,
25 X_INTERNAL_FLAG VARCHAR2,
26 X_RECORD_ONLY_FLAG VARCHAR2,
27 X_REQUEST_ID NUMBER,
28 X_DETERMINING_FACTOR_NAME VARCHAR2,
29 X_DETERMINING_FACTOR_DESC VARCHAR2,
30 X_CREATION_DATE DATE,
31 X_CREATED_BY NUMBER,
32 X_LAST_UPDATE_DATE DATE,
33 X_LAST_UPDATED_BY NUMBER,
34 X_LAST_UPDATE_LOGIN NUMBER,
35 X_OBJECT_VERSION_NUMBER NUMBER) IS
36
37 CURSOR C IS
38 SELECT ROWID
39 FROM ZX_DETERMINING_FACTORS_B
40 WHERE DETERMINING_FACTOR_ID = X_DETERMINING_FACTOR_ID;
41
42 BEGIN
43 IF (g_level_procedure >= g_current_runtime_level ) THEN
44 FND_LOG.STRING(g_level_procedure,
48
45 'ZX.PLSQL.ZX_DETERMINING_FACTORS_PKG.INSERT_ROW.BEGIN',
46 'ZX_DETERMINING_FACTORS_PKG.INSERT_ROW (+)');
47 END IF;
49 INSERT INTO ZX_DETERMINING_FACTORS_B (DETERMINING_FACTOR_ID,
50 DETERMINING_FACTOR_CODE,
51 DETERMINING_FACTOR_CLASS_CODE,
52 VALUE_SET,
53 TAX_PARAMETER_CODE,
54 DATA_TYPE_CODE,
55 TAX_FUNCTION_CODE,
56 RECORD_TYPE_CODE,
57 TAX_REGIME_DET_FLAG,
58 TAX_SUMMARIZATION_FLAG,
59 TAX_RULES_FLAG,
60 TAXABLE_BASIS_FLAG,
61 TAX_CALCULATION_FLAG,
62 INTERNAL_FLAG,
63 RECORD_ONLY_FLAG,
64 REQUEST_ID,
65 CREATION_DATE,
66 CREATED_BY,
67 LAST_UPDATE_DATE,
68 LAST_UPDATED_BY,
69 LAST_UPDATE_LOGIN,
70 OBJECT_VERSION_NUMBER)
71 values (X_DETERMINING_FACTOR_ID,
72 X_DETERMINING_FACTOR_CODE,
73 X_DETERMINING_FACTOR_CLASS_COD,
74 X_VALUE_SET,
75 X_TAX_PARAMETER_CODE,
76 X_DATA_TYPE_CODE,
77 X_TAX_FUNCTION_CODE,
78 X_RECORD_TYPE_CODE,
79 NVL(X_TAX_REGIME_DET_FLAG, 'N'),
80 NVL(X_TAX_SUMMARIZATION_FLAG, 'N'),
81 NVL(X_TAX_RULES_FLAG, 'N'),
82 NVL(X_TAXABLE_BASIS_FLAG, 'N'),
83 NVL(X_TAX_CALCULATION_FLAG, 'N'),
84 NVL(X_INTERNAL_FLAG, 'N'),
85 NVL(X_RECORD_ONLY_FLAG, 'N'),
86 X_REQUEST_ID,
87 X_CREATION_DATE,
88 X_CREATED_BY,
89 X_LAST_UPDATE_DATE,
90 X_LAST_UPDATED_BY,
91 X_LAST_UPDATE_LOGIN,
92 X_OBJECT_VERSION_NUMBER);
93
94 INSERT INTO ZX_DET_FACTORS_TL (DETERMINING_FACTOR_NAME,
95 DETERMINING_FACTOR_DESC,
96 CREATION_DATE,
97 CREATED_BY,
98 LAST_UPDATE_DATE,
99 LAST_UPDATED_BY,
100 LAST_UPDATE_LOGIN,
101 DETERMINING_FACTOR_ID,
102 LANGUAGE,
103 SOURCE_LANG)
104 SELECT X_DETERMINING_FACTOR_NAME,
105 X_DETERMINING_FACTOR_DESC,
106 X_CREATION_DATE,
107 X_CREATED_BY,
108 X_LAST_UPDATE_DATE,
109 X_LAST_UPDATED_BY,
110 X_LAST_UPDATE_LOGIN,
111 X_DETERMINING_FACTOR_ID,
112 L.LANGUAGE_CODE,
113 userenv('LANG')
114 FROM FND_LANGUAGES L
115 WHERE L.INSTALLED_FLAG in ('I', 'B')
116 AND NOT EXISTS (SELECT NULL
117 FROM ZX_DET_FACTORS_TL T
118 WHERE T.DETERMINING_FACTOR_ID = X_DETERMINING_FACTOR_ID
119 AND T.LANGUAGE = L.LANGUAGE_CODE);
120
121 OPEN C;
122 FETCH C INTO X_ROWID;
123 IF (C%NOTFOUND) THEN
124 CLOSE C;
125 RAISE NO_DATA_FOUND;
126 END IF;
127 CLOSE C;
128
129 IF (g_level_procedure >= g_current_runtime_level ) THEN
130 FND_LOG.STRING(g_level_procedure,
131 'ZX.PLSQL.ZX_DETERMINING_FACTORS_PKG.INSERT_ROW.END',
132 'ZX_DETERMINING_FACTORS_PKG.INSERT_ROW (-)');
133 END IF;
134 END INSERT_ROW;
135
136 PROCEDURE LOCK_ROW
137 (X_DETERMINING_FACTOR_ID NUMBER,
138 X_DETERMINING_FACTOR_CODE VARCHAR2,
139 X_DETERMINING_FACTOR_CLASS_COD VARCHAR2,
140 X_VALUE_SET VARCHAR2,
141 X_TAX_PARAMETER_CODE VARCHAR2,
142 X_DATA_TYPE_CODE VARCHAR2,
143 X_TAX_FUNCTION_CODE VARCHAR2,
144 X_RECORD_TYPE_CODE VARCHAR2,
145 X_TAX_REGIME_DET_FLAG VARCHAR2,
146 X_TAX_SUMMARIZATION_FLAG VARCHAR2,
147 X_TAX_RULES_FLAG VARCHAR2,
148 X_TAXABLE_BASIS_FLAG VARCHAR2,
152 X_REQUEST_ID NUMBER,
149 X_TAX_CALCULATION_FLAG VARCHAR2,
150 X_INTERNAL_FLAG VARCHAR2,
151 X_RECORD_ONLY_FLAG VARCHAR2,
153 X_DETERMINING_FACTOR_NAME VARCHAR2,
154 X_DETERMINING_FACTOR_DESC VARCHAR2,
155 X_OBJECT_VERSION_NUMBER NUMBER) IS
156
157 CURSOR C IS
158 SELECT DETERMINING_FACTOR_CODE,
159 DETERMINING_FACTOR_CLASS_CODE,
160 VALUE_SET,
161 TAX_PARAMETER_CODE,
162 DATA_TYPE_CODE,
163 TAX_FUNCTION_CODE,
164 RECORD_TYPE_CODE,
165 TAX_REGIME_DET_FLAG,
166 TAX_SUMMARIZATION_FLAG,
167 TAX_RULES_FLAG,
168 TAXABLE_BASIS_FLAG,
169 TAX_CALCULATION_FLAG,
170 INTERNAL_FLAG,
171 RECORD_ONLY_FLAG,
172 REQUEST_ID,
173 OBJECT_VERSION_NUMBER
174 FROM ZX_DETERMINING_FACTORS_B
175 WHERE DETERMINING_FACTOR_ID = X_DETERMINING_FACTOR_ID
176 FOR UPDATE OF DETERMINING_FACTOR_ID NOWAIT;
177 RECINFO C%ROWTYPE;
178
179 CURSOR C1 IS
180 SELECT DETERMINING_FACTOR_NAME,
181 DETERMINING_FACTOR_DESC,
182 DECODE(LANGUAGE, USERENV('LANG'), 'Y', 'N') BASELANG
183 FROM ZX_DET_FACTORS_TL
184 WHERE DETERMINING_FACTOR_ID = X_DETERMINING_FACTOR_ID
185 AND USERENV('LANG') IN (LANGUAGE, SOURCE_LANG)
186 FOR UPDATE OF DETERMINING_FACTOR_ID NOWAIT;
187
188 BEGIN
189 IF (g_level_procedure >= g_current_runtime_level ) THEN
190 FND_LOG.STRING(g_level_procedure,
191 'ZX.PLSQL.ZX_DETERMINING_FACTORS_PKG.LOCK_ROW.BEGIN',
192 'ZX_DETERMINING_FACTORS_PKG.LOCK_ROW (+)');
193 END IF;
194
195 OPEN C;
196 FETCH C INTO RECINFO;
197 IF (c%notfound) THEN
198 close c;
199 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
200 app_exception.raise_exception;
201 END IF;
202 CLOSE C;
203 IF ((recinfo.DETERMINING_FACTOR_CODE = X_DETERMINING_FACTOR_CODE) AND
204 (recinfo.DETERMINING_FACTOR_CLASS_CODE = X_DETERMINING_FACTOR_CLASS_COD) AND
205 ((recinfo.VALUE_SET = X_VALUE_SET) OR
206 ((recinfo.VALUE_SET is null) AND
207 (X_VALUE_SET is null))) AND
208 ((recinfo.TAX_PARAMETER_CODE = X_TAX_PARAMETER_CODE) OR
209 ((recinfo.TAX_PARAMETER_CODE is null) AND
210 (X_TAX_PARAMETER_CODE is null))) AND
211 (recinfo.DATA_TYPE_CODE = X_DATA_TYPE_CODE) AND
212 ((recinfo.TAX_FUNCTION_CODE = X_TAX_FUNCTION_CODE) OR
213 ((recinfo.TAX_FUNCTION_CODE is null) AND
214 (X_TAX_FUNCTION_CODE is null))) AND
215 (recinfo.RECORD_TYPE_CODE = X_RECORD_TYPE_CODE) AND
216 ((recinfo.TAX_REGIME_DET_FLAG = X_TAX_REGIME_DET_FLAG) OR
217 ((recinfo.TAX_REGIME_DET_FLAG is null) AND
218 (X_TAX_REGIME_DET_FLAG is null))) AND
219 ((recinfo.TAX_SUMMARIZATION_FLAG = X_TAX_SUMMARIZATION_FLAG) OR
220 ((recinfo.TAX_SUMMARIZATION_FLAG is null) AND
221 (X_TAX_SUMMARIZATION_FLAG is null))) AND
222 ((recinfo.TAX_RULES_FLAG = X_TAX_RULES_FLAG) OR
223 ((recinfo.TAX_RULES_FLAG is null) AND
224 (X_TAX_RULES_FLAG is null))) AND
225 ((recinfo.TAXABLE_BASIS_FLAG = X_TAXABLE_BASIS_FLAG) OR
226 ((recinfo.TAXABLE_BASIS_FLAG is null) AND
227 (X_TAXABLE_BASIS_FLAG is null))) AND
228 ((recinfo.TAX_CALCULATION_FLAG = X_TAX_CALCULATION_FLAG) OR
229 ((recinfo.TAX_CALCULATION_FLAG is null) AND
230 (X_TAX_CALCULATION_FLAG is null))) AND
231 ((recinfo.INTERNAL_FLAG = X_INTERNAL_FLAG) OR
232 ((recinfo.INTERNAL_FLAG is null) AND
233 (X_INTERNAL_FLAG is null))) AND
234 ((recinfo.RECORD_ONLY_FLAG = X_RECORD_ONLY_FLAG) OR
235 ((recinfo.RECORD_ONLY_FLAG is null) AND
236 (X_RECORD_ONLY_FLAG is null))) AND
237 ((recinfo.REQUEST_ID = X_REQUEST_ID) OR
238 ((recinfo.REQUEST_ID is null) AND
239 (X_REQUEST_ID is null))))
240 AND (recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER) THEN
241 NULL;
242 ELSE
243 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
244 app_exception.raise_exception;
245 END IF;
246
247 FOR tlinfo in c1 LOOP
248 IF (tlinfo.BASELANG = 'Y') THEN
249 IF ((tlinfo.DETERMINING_FACTOR_NAME = X_DETERMINING_FACTOR_NAME) AND
250 ((tlinfo.DETERMINING_FACTOR_DESC = X_DETERMINING_FACTOR_DESC) OR
251 ((tlinfo.DETERMINING_FACTOR_DESC is null) AND
252 (X_DETERMINING_FACTOR_DESC is null)))) THEN
253 NULL;
254 ELSE
255 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
256 app_exception.raise_exception;
257 END IF;
258 END IF;
259 END LOOP;
260
261 IF (g_level_procedure >= g_current_runtime_level ) THEN
262 FND_LOG.STRING(g_level_procedure,
263 'ZX.PLSQL.ZX_DETERMINING_FACTORS_PKG.LOCK_ROW.END',
264 'ZX_DETERMINING_FACTORS_PKG.LOCK_ROW (-)');
265 END IF;
266
267 RETURN;
268 END LOCK_ROW;
269
270 PROCEDURE UPDATE_ROW
271 (X_DETERMINING_FACTOR_ID NUMBER,
272 X_DETERMINING_FACTOR_CODE VARCHAR2,
273 X_DETERMINING_FACTOR_CLASS_COD VARCHAR2,
274 X_VALUE_SET VARCHAR2,
275 X_TAX_PARAMETER_CODE VARCHAR2,
276 X_DATA_TYPE_CODE VARCHAR2,
277 X_TAX_FUNCTION_CODE VARCHAR2,
278 X_RECORD_TYPE_CODE VARCHAR2,
282 X_TAXABLE_BASIS_FLAG VARCHAR2,
279 X_TAX_REGIME_DET_FLAG VARCHAR2,
280 X_TAX_SUMMARIZATION_FLAG VARCHAR2,
281 X_TAX_RULES_FLAG VARCHAR2,
283 X_TAX_CALCULATION_FLAG VARCHAR2,
284 X_INTERNAL_FLAG VARCHAR2,
285 X_RECORD_ONLY_FLAG VARCHAR2,
286 X_REQUEST_ID NUMBER,
287 X_DETERMINING_FACTOR_NAME VARCHAR2,
288 X_DETERMINING_FACTOR_DESC VARCHAR2,
289 X_LAST_UPDATE_DATE DATE,
290 X_LAST_UPDATED_BY NUMBER,
291 X_LAST_UPDATE_LOGIN NUMBER,
292 X_OBJECT_VERSION_NUMBER NUMBER) IS
293
294 BEGIN
295 IF (g_level_procedure >= g_current_runtime_level ) THEN
296 FND_LOG.STRING(g_level_procedure,
297 'ZX.PLSQL.ZX_DETERMINING_FACTORS_PKG.UPDATE_ROW.BEGIN',
298 'ZX_DETERMINING_FACTORS_PKG.UPDATE_ROW (+)');
299 END IF;
300
301 UPDATE ZX_DETERMINING_FACTORS_B
302 SET DETERMINING_FACTOR_CODE = X_DETERMINING_FACTOR_CODE,
303 DETERMINING_FACTOR_CLASS_CODE = X_DETERMINING_FACTOR_CLASS_COD,
304 VALUE_SET = X_VALUE_SET,
305 TAX_PARAMETER_CODE = X_TAX_PARAMETER_CODE,
306 DATA_TYPE_CODE = X_DATA_TYPE_CODE,
307 TAX_FUNCTION_CODE = X_TAX_FUNCTION_CODE,
308 RECORD_TYPE_CODE = X_RECORD_TYPE_CODE,
309 TAX_REGIME_DET_FLAG = NVL(X_TAX_REGIME_DET_FLAG, 'N'),
310 TAX_SUMMARIZATION_FLAG = NVL(X_TAX_SUMMARIZATION_FLAG, 'N'),
311 TAX_RULES_FLAG = NVL(X_TAX_RULES_FLAG, 'N'),
312 TAXABLE_BASIS_FLAG = NVL(X_TAXABLE_BASIS_FLAG, 'N'),
313 TAX_CALCULATION_FLAG = NVL(X_TAX_CALCULATION_FLAG, 'N'),
314 INTERNAL_FLAG = NVL(X_INTERNAL_FLAG, 'N'),
315 RECORD_ONLY_FLAG = NVL(X_RECORD_ONLY_FLAG, 'N'),
316 REQUEST_ID = X_REQUEST_ID,
317 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
318 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
319 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
320 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER
321 WHERE DETERMINING_FACTOR_ID = X_DETERMINING_FACTOR_ID;
322
323 IF (SQL%NOTFOUND) THEN
324 RAISE NO_DATA_FOUND;
325 END IF;
326
327 UPDATE ZX_DET_FACTORS_TL
328 SET DETERMINING_FACTOR_NAME = X_DETERMINING_FACTOR_NAME,
329 DETERMINING_FACTOR_DESC = X_DETERMINING_FACTOR_DESC,
330 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
331 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
332 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
333 SOURCE_LANG = userenv('LANG')
334 WHERE DETERMINING_FACTOR_ID = X_DETERMINING_FACTOR_ID
335 AND userenv('LANG') in (LANGUAGE, SOURCE_LANG);
336
337 IF (sql%notfound) THEN
338 RAISE NO_DATA_FOUND;
339 END IF;
340
341 IF (g_level_procedure >= g_current_runtime_level ) THEN
342 FND_LOG.STRING(g_level_procedure,
343 'ZX.PLSQL.ZX_DETERMINING_FACTORS_PKG.UPDATE_ROW.END',
344 'ZX_DETERMINING_FACTORS_PKG.UPDATE_ROW (-)');
345 END IF;
346
347 END UPDATE_ROW;
348
349 PROCEDURE DELETE_ROW
350 (X_DETERMINING_FACTOR_ID NUMBER) IS
351
352 BEGIN
353 IF (g_level_procedure >= g_current_runtime_level ) THEN
354 FND_LOG.STRING(g_level_procedure,
355 'ZX.PLSQL.ZX_DETERMINING_FACTORS_PKG.DELETE_ROW.BEGIN',
356 'ZX_DETERMINING_FACTORS_PKG.DELETE_ROW (+)');
357 END IF;
358
359 DELETE FROM ZX_DET_FACTORS_TL
360 WHERE DETERMINING_FACTOR_ID = X_DETERMINING_FACTOR_ID;
361
362 IF (sql%notfound) THEN
363 RAISE NO_DATA_FOUND;
364 END IF;
365
366 DELETE FROM ZX_DETERMINING_FACTORS_B
367 WHERE DETERMINING_FACTOR_ID = X_DETERMINING_FACTOR_ID;
368
369 IF (sql%notfound) THEN
370 RAISE NO_DATA_FOUND;
371 END IF;
372
373 IF (g_level_procedure >= g_current_runtime_level ) THEN
374 FND_LOG.STRING(g_level_procedure,
375 'ZX.PLSQL.ZX_DETERMINING_FACTORS_PKG.DELETE_ROW.END',
376 'ZX_DETERMINING_FACTORS_PKG.DELETE_ROW (-)');
377 END IF;
378
379 END DELETE_ROW;
380
381 PROCEDURE ADD_LANGUAGE IS
382
383 BEGIN
384 IF (g_level_procedure >= g_current_runtime_level ) THEN
385 FND_LOG.STRING(g_level_procedure,
386 'ZX.PLSQL.ZX_DETERMINING_FACTORS_PKG.ADD_LANGUAGE.BEGIN',
387 'ZX_DETERMINING_FACTORS_PKG.ADD_LANGUAGE (+)');
388 END IF;
389
390 DELETE FROM ZX_DET_FACTORS_TL T
391 WHERE NOT EXISTS (SELECT NULL
392 FROM ZX_DETERMINING_FACTORS_B B
393 WHERE B.DETERMINING_FACTOR_ID = T.DETERMINING_FACTOR_ID);
394
395 UPDATE ZX_DET_FACTORS_TL T
396 SET (DETERMINING_FACTOR_NAME,
397 DETERMINING_FACTOR_DESC) = (SELECT B.DETERMINING_FACTOR_NAME,
398 B.DETERMINING_FACTOR_DESC
399 FROM ZX_DET_FACTORS_TL B
400 WHERE B.DETERMINING_FACTOR_ID = T.DETERMINING_FACTOR_ID
401 AND B.LANGUAGE = T.SOURCE_LANG)
402 WHERE (T.DETERMINING_FACTOR_ID,
403 T.LANGUAGE) IN (SELECT SUBT.DETERMINING_FACTOR_ID,
404 SUBT.LANGUAGE
405 FROM ZX_DET_FACTORS_TL SUBB,
406 ZX_DET_FACTORS_TL SUBT
407 WHERE SUBB.DETERMINING_FACTOR_ID = SUBT.DETERMINING_FACTOR_ID
408 AND SUBB.LANGUAGE = SUBT.SOURCE_LANG
412 SUBT.DETERMINING_FACTOR_DESC IS NOT NULL) OR
409 AND (SUBB.DETERMINING_FACTOR_NAME <> SUBT.DETERMINING_FACTOR_NAME OR
410 SUBB.DETERMINING_FACTOR_DESC <> SUBT.DETERMINING_FACTOR_DESC OR
411 (SUBB.DETERMINING_FACTOR_DESC IS NULL AND
413 (SUBB.DETERMINING_FACTOR_DESC IS NOT NULL AND
414 SUBT.DETERMINING_FACTOR_DESC IS NULL)));
415
416 INSERT INTO ZX_DET_FACTORS_TL (DETERMINING_FACTOR_NAME,
417 DETERMINING_FACTOR_DESC,
418 CREATION_DATE,
419 CREATED_BY,
420 LAST_UPDATE_DATE,
421 LAST_UPDATED_BY,
422 LAST_UPDATE_LOGIN,
423 DETERMINING_FACTOR_ID,
424 LANGUAGE,
425 SOURCE_LANG)
426 SELECT /*+ ORDERED */
427 B.DETERMINING_FACTOR_NAME,
428 B.DETERMINING_FACTOR_DESC,
429 B.CREATION_DATE,
430 B.CREATED_BY,
431 B.LAST_UPDATE_DATE,
432 B.LAST_UPDATED_BY,
433 B.LAST_UPDATE_LOGIN,
434 B.DETERMINING_FACTOR_ID,
435 L.LANGUAGE_CODE,
436 B.SOURCE_LANG
437 FROM ZX_DET_FACTORS_TL B,
438 FND_LANGUAGES L
439 WHERE L.INSTALLED_FLAG IN ('I', 'B')
440 AND B.LANGUAGE = USERENV('LANG')
441 AND NOT EXISTS (SELECT NULL
442 FROM ZX_DET_FACTORS_TL T
443 WHERE T.DETERMINING_FACTOR_ID = B.DETERMINING_FACTOR_ID
444 AND T.LANGUAGE = L.LANGUAGE_CODE);
445
446 IF (g_level_procedure >= g_current_runtime_level ) THEN
447 FND_LOG.STRING(g_level_procedure,
448 'ZX.PLSQL.ZX_DETERMINING_FACTORS_PKG.ADD_LANGUAGE.END',
449 'ZX_DETERMINING_FACTORS_PKG.ADD_LANGUAGE (-)');
450 END IF;
451
452 END ADD_LANGUAGE;
453
454 PROCEDURE INSERT_GEOGRAPHY_ROW
455 (X_DETERMINING_FACTOR_CLASS_COD VARCHAR2,
456 X_DETERMINING_FACTOR_CODE VARCHAR2,
457 X_RECORD_TYPE_CODE VARCHAR2) IS
458 L_DETERMINING_FACTOR_ID NUMBER;
459 L_DET_FACTOR_NAME VARCHAR2(150);
460 X_ROWID ROWID;
461 CURSOR C IS
462 SELECT ROWID
463 FROM ZX_DETERMINING_FACTORS_B
464 WHERE DETERMINING_FACTOR_CLASS_CODE = X_DETERMINING_FACTOR_CLASS_COD
465 AND DETERMINING_FACTOR_CODE = X_DETERMINING_FACTOR_CODE;
466 BEGIN
467 IF (g_level_procedure >= g_current_runtime_level ) THEN
468 FND_LOG.STRING(g_level_procedure,
469 'ZX.PLSQL.ZX_DETERMINING_FACTORS_PKG.INSERT_GEOGRAPHY_ROW.BEGIN',
470 'ZX_DETERMINING_FACTORS_PKG.INSERT_GEOGRAPHY_ROW (+)');
471 END IF;
472
473 OPEN C;
474 FETCH C INTO X_ROWID;
475 IF (C%NOTFOUND) THEN
476 BEGIN
477 SELECT Zx_Determining_Factors_B_S.nextval INTO L_DETERMINING_FACTOR_ID FROM DUAL;
478 /*Get the DETERMINING_FACTOR_NAME from HZ_GEOGRAPHIES for DETERMINING_FACTOR_CODE*/
479 SELECT GEOGRAPHY_TYPE_NAME INTO L_DET_FACTOR_NAME FROM HZ_GEOGRAPHY_TYPES_VL
480 WHERE GEOGRAPHY_TYPE = X_DETERMINING_FACTOR_CODE
481 AND GEOGRAPHY_USE= (DECODE(X_DETERMINING_FACTOR_CLASS_COD, 'GEOGRAPHY', 'MASTER_REF', 'TAX'))
482 AND ROWNUM = 1;
483 EXCEPTION
484 WHEN NO_DATA_FOUND THEN
485 RETURN;
486 END;
487 INSERT_ROW(
488 X_ROWID,
489 L_DETERMINING_FACTOR_ID,
490 X_DETERMINING_FACTOR_CODE,
491 X_DETERMINING_FACTOR_CLASS_COD,
492 null,
493 null,
494 'NUMERIC',
495 null,
496 X_RECORD_TYPE_CODE,
497 'N',
498 'N',
499 'Y',
500 'N',
501 'N',
502 'Y',
503 'N',
504 FND_GLOBAL.CONC_LOGIN_ID,
505 L_DET_FACTOR_NAME,
506 null,
507 SYSDATE,
508 FND_GLOBAL.USER_ID,
509 SYSDATE,
510 FND_GLOBAL.USER_ID,
511 FND_GLOBAL.CONC_LOGIN_ID,
512 1);
513 END IF;
514 CLOSE C;
515 IF (g_level_procedure >= g_current_runtime_level ) THEN
516 FND_LOG.STRING(g_level_procedure,
517 'ZX.PLSQL.ZX_DETERMINING_FACTORS_PKG.INSERT_GEOGRAPHY_ROW.END',
518 'ZX_DETERMINING_FACTORS_PKG.INSERT_GEOGRAPHY_ROW (-)');
519 END IF;
520
521 END INSERT_GEOGRAPHY_ROW;
522
523 END ZX_DETERMINING_FACTORS_PKG;