DBA Data[Home] [Help]

PACKAGE BODY: APPS.AMS_LIST_SRC_TYPES_NEW_PKG

Source


1 package body AMS_LIST_SRC_TYPES_NEW_PKG as
2 /* $Header: amstlstb.pls 120.3 2005/09/12 05:40:21 rmbhanda noship $ */
3 procedure INSERT_ROW (
4   X_ROWID in out nocopy VARCHAR2,
5   X_LIST_SOURCE_TYPE_ID in NUMBER,
6   X_REMOTE_FLAG in VARCHAR2,
7   X_DATABASE_LINK in VARCHAR2,
8   X_SEEDED_FLAG in VARCHAR2,
9   X_VIEW_APPLICATION_ID in NUMBER,
10   X_JAVA_CLASS_NAME in VARCHAR2,
11   X_ARC_ACT_SRC_USED_BY in VARCHAR2,
12   X_SOURCE_CATEGORY in VARCHAR2,
13   X_IMPORT_TYPE in VARCHAR2,
14   X_OBJECT_VERSION_NUMBER in NUMBER,
15   X_LIST_SOURCE_TYPE in VARCHAR2,
16   X_SOURCE_TYPE_CODE in VARCHAR2,
17   X_SOURCE_OBJECT_NAME in VARCHAR2,
18   X_MASTER_SOURCE_TYPE_FLAG in VARCHAR2,
19   X_SOURCE_OBJECT_PK_FIELD in VARCHAR2,
20   X_ENABLED_FLAG in VARCHAR2,
21   X_SECURITY_GROUP_ID in NUMBER,
22   X_LIST_SOURCE_NAME in VARCHAR2,
23   X_DESCRIPTION in VARCHAR2,
24   X_CREATION_DATE in DATE,
25   X_CREATED_BY in NUMBER,
26   X_LAST_UPDATE_DATE in DATE,
27   X_LAST_UPDATED_BY in NUMBER,
28   X_LAST_UPDATE_LOGIN in NUMBER,
29   X_BASED_ON_TCA_FLAG in VARCHAR2
30 ) is
31   cursor C is select ROWID from AMS_LIST_SRC_TYPES
32     where LIST_SOURCE_TYPE_ID = X_LIST_SOURCE_TYPE_ID
33     ;
34 begin
35   insert into AMS_LIST_SRC_TYPES (
36     REMOTE_FLAG,
37     DATABASE_LINK,
38     SEEDED_FLAG,
39     VIEW_APPLICATION_ID,
40     JAVA_CLASS_NAME,
41     ARC_ACT_SRC_USED_BY,
42     SOURCE_CATEGORY,
43     IMPORT_TYPE,
44     LIST_SOURCE_TYPE_ID,
45     OBJECT_VERSION_NUMBER,
46     LIST_SOURCE_TYPE,
47     SOURCE_TYPE_CODE,
48     SOURCE_OBJECT_NAME,
49     MASTER_SOURCE_TYPE_FLAG,
50     SOURCE_OBJECT_PK_FIELD,
51     ENABLED_FLAG,
52     SECURITY_GROUP_ID,
53     CREATION_DATE,
54     CREATED_BY,
55     LAST_UPDATE_DATE,
56     LAST_UPDATED_BY,
57     LAST_UPDATE_LOGIN,
58     BASED_ON_TCA_FLAG
59   ) values (
60     X_REMOTE_FLAG,
61     X_DATABASE_LINK,
62     X_SEEDED_FLAG,
63     X_VIEW_APPLICATION_ID,
64     X_JAVA_CLASS_NAME,
65     X_ARC_ACT_SRC_USED_BY,
66     X_SOURCE_CATEGORY,
67     X_IMPORT_TYPE,
68     X_LIST_SOURCE_TYPE_ID,
69     X_OBJECT_VERSION_NUMBER,
70     X_LIST_SOURCE_TYPE,
71     X_SOURCE_TYPE_CODE,
72     X_SOURCE_OBJECT_NAME,
73     X_MASTER_SOURCE_TYPE_FLAG,
74     X_SOURCE_OBJECT_PK_FIELD,
75     X_ENABLED_FLAG,
76     X_SECURITY_GROUP_ID,
77     X_CREATION_DATE,
78     X_CREATED_BY,
79     X_LAST_UPDATE_DATE,
80     X_LAST_UPDATED_BY,
81     X_LAST_UPDATE_LOGIN,
82     X_BASED_ON_TCA_FLAG
83   );
84 
85   insert into AMS_LIST_SRC_TYPES_TL (
86     LIST_SOURCE_TYPE_ID,
87     LAST_UPDATE_DATE,
88     LAST_UPDATE_BY,
89     CREATION_DATE,
90     CREATED_BY,
91     LAST_UPDATE_LOGIN,
92     LIST_SOURCE_NAME,
93     DESCRIPTION,
94     SECURITY_GROUP_ID,
95     LANGUAGE,
96     SOURCE_LANG
97   ) select
98     X_LIST_SOURCE_TYPE_ID,
99     X_LAST_UPDATE_DATE,
100     X_LAST_UPDATED_BY,
101     X_CREATION_DATE,
102     X_CREATED_BY,
103     X_LAST_UPDATE_LOGIN,
104     X_LIST_SOURCE_NAME,
105     X_DESCRIPTION,
106     X_SECURITY_GROUP_ID,
107     L.LANGUAGE_CODE,
108     userenv('LANG')
109   from FND_LANGUAGES L
110   where L.INSTALLED_FLAG in ('I', 'B')
111   and not exists
112     (select NULL
113     from AMS_LIST_SRC_TYPES_TL T
114     where T.LIST_SOURCE_TYPE_ID = X_LIST_SOURCE_TYPE_ID
115     and T.LANGUAGE = L.LANGUAGE_CODE);
116 
117   open c;
118   fetch c into X_ROWID;
119   if (c%notfound) then
120     close c;
121     raise no_data_found;
122   end if;
123   close c;
124 
125 end INSERT_ROW;
126 
127 procedure LOCK_ROW (
128   X_LIST_SOURCE_TYPE_ID in NUMBER,
129   X_REMOTE_FLAG in VARCHAR2,
130   X_DATABASE_LINK in VARCHAR2,
131   X_SEEDED_FLAG in VARCHAR2,
132   X_VIEW_APPLICATION_ID in NUMBER,
133   X_JAVA_CLASS_NAME in VARCHAR2,
134   X_ARC_ACT_SRC_USED_BY in VARCHAR2,
135   X_SOURCE_CATEGORY in VARCHAR2,
136   X_IMPORT_TYPE in VARCHAR2,
137   X_OBJECT_VERSION_NUMBER in NUMBER,
138   X_LIST_SOURCE_TYPE in VARCHAR2,
139   X_SOURCE_TYPE_CODE in VARCHAR2,
140   X_SOURCE_OBJECT_NAME in VARCHAR2,
141   X_MASTER_SOURCE_TYPE_FLAG in VARCHAR2,
142   X_SOURCE_OBJECT_PK_FIELD in VARCHAR2,
143   X_ENABLED_FLAG in VARCHAR2,
144   X_SECURITY_GROUP_ID in NUMBER,
145   X_LIST_SOURCE_NAME in VARCHAR2,
146   X_DESCRIPTION in VARCHAR2,
147   X_BASED_ON_TCA_FLAG in VARCHAR2  --rmbhanda bug#4604219
148 ) is
149   cursor c is select
150       REMOTE_FLAG,
151       DATABASE_LINK,
152       SEEDED_FLAG,
153       VIEW_APPLICATION_ID,
154       JAVA_CLASS_NAME,
155       ARC_ACT_SRC_USED_BY,
156       SOURCE_CATEGORY,
157       IMPORT_TYPE,
158       OBJECT_VERSION_NUMBER,
159       LIST_SOURCE_TYPE,
160       SOURCE_TYPE_CODE,
161       SOURCE_OBJECT_NAME,
162       MASTER_SOURCE_TYPE_FLAG,
163       SOURCE_OBJECT_PK_FIELD,
164       ENABLED_FLAG,
165       SECURITY_GROUP_ID,
166       BASED_ON_TCA_FLAG  --rmbhanda bug#4604219
167     from AMS_LIST_SRC_TYPES
168     where LIST_SOURCE_TYPE_ID = X_LIST_SOURCE_TYPE_ID
169     for update of LIST_SOURCE_TYPE_ID nowait;
170   recinfo c%rowtype;
171 
172   cursor c1 is select
173       LIST_SOURCE_NAME,
174       DESCRIPTION,
175       decode(LANGUAGE, userenv('LANG'), 'Y', 'N') BASELANG
176     from AMS_LIST_SRC_TYPES_TL
177     where LIST_SOURCE_TYPE_ID = X_LIST_SOURCE_TYPE_ID
178     and userenv('LANG') in (LANGUAGE, SOURCE_LANG)
179     for update of LIST_SOURCE_TYPE_ID nowait;
180 begin
181   open c;
182   fetch c into recinfo;
183   if (c%notfound) then
184     close c;
185     fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
186     app_exception.raise_exception;
187   end if;
188   close c;
189   if (    ((recinfo.REMOTE_FLAG = X_REMOTE_FLAG)
190            OR ((recinfo.REMOTE_FLAG is null) AND (X_REMOTE_FLAG is null)))
191       AND ((recinfo.DATABASE_LINK = X_DATABASE_LINK)
192            OR ((recinfo.DATABASE_LINK is null) AND (X_DATABASE_LINK is null)))
193       AND ((recinfo.SEEDED_FLAG = X_SEEDED_FLAG)
194            OR ((recinfo.SEEDED_FLAG is null) AND (X_SEEDED_FLAG is null)))
195       AND ((recinfo.VIEW_APPLICATION_ID = X_VIEW_APPLICATION_ID)
196            OR ((recinfo.VIEW_APPLICATION_ID is null) AND (X_VIEW_APPLICATION_ID is null)))
197       AND ((recinfo.JAVA_CLASS_NAME = X_JAVA_CLASS_NAME)
198            OR ((recinfo.JAVA_CLASS_NAME is null) AND (X_JAVA_CLASS_NAME is null)))
199       AND ((recinfo.ARC_ACT_SRC_USED_BY = X_ARC_ACT_SRC_USED_BY)
200            OR ((recinfo.ARC_ACT_SRC_USED_BY is null) AND (X_ARC_ACT_SRC_USED_BY is null)))
201       AND ((recinfo.SOURCE_CATEGORY = X_SOURCE_CATEGORY)
202            OR ((recinfo.SOURCE_CATEGORY is null) AND (X_SOURCE_CATEGORY is null)))
203       AND ((recinfo.IMPORT_TYPE = X_IMPORT_TYPE)
204            OR ((recinfo.IMPORT_TYPE is null) AND (X_IMPORT_TYPE is null)))
205       AND ((recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
206            OR ((recinfo.OBJECT_VERSION_NUMBER is null) AND (X_OBJECT_VERSION_NUMBER is null)))
207       AND (recinfo.LIST_SOURCE_TYPE = X_LIST_SOURCE_TYPE)
208       AND (recinfo.SOURCE_TYPE_CODE = X_SOURCE_TYPE_CODE)
209       AND (recinfo.SOURCE_OBJECT_NAME = X_SOURCE_OBJECT_NAME)
210       AND (recinfo.MASTER_SOURCE_TYPE_FLAG = X_MASTER_SOURCE_TYPE_FLAG)
211       AND ((recinfo.SOURCE_OBJECT_PK_FIELD = X_SOURCE_OBJECT_PK_FIELD)
212            OR ((recinfo.SOURCE_OBJECT_PK_FIELD is null) AND (X_SOURCE_OBJECT_PK_FIELD is null)))
213       AND (recinfo.ENABLED_FLAG = X_ENABLED_FLAG)
214       AND ((recinfo.SECURITY_GROUP_ID = X_SECURITY_GROUP_ID)
215            OR ((recinfo.SECURITY_GROUP_ID is null) AND (X_SECURITY_GROUP_ID is null)))
216      --rmbhanda bug#4604219 start
217       AND ((recinfo.BASED_ON_TCA_FLAG = X_BASED_ON_TCA_FLAG)
218            OR ((recinfo.BASED_ON_TCA_FLAG is null) AND (X_BASED_ON_TCA_FLAG is null)))
219      --rmbhanda bug#4604219 end
220   ) then
221     null;
222   else
223     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
224     app_exception.raise_exception;
225   end if;
226 
227   for tlinfo in c1 loop
228     if (tlinfo.BASELANG = 'Y') then
229       if (    (tlinfo.LIST_SOURCE_NAME = X_LIST_SOURCE_NAME)
230           AND ((tlinfo.DESCRIPTION = X_DESCRIPTION)
231                OR ((tlinfo.DESCRIPTION is null) AND (X_DESCRIPTION is null)))
232       ) then
233         null;
234       else
235         fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
236         app_exception.raise_exception;
237       end if;
238     end if;
239   end loop;
240   return;
241 end LOCK_ROW;
242 
243 procedure UPDATE_ROW (
244   X_LIST_SOURCE_TYPE_ID in NUMBER,
245   X_REMOTE_FLAG in VARCHAR2,
246   X_DATABASE_LINK in VARCHAR2,
247   X_SEEDED_FLAG in VARCHAR2,
248   X_VIEW_APPLICATION_ID in NUMBER,
249   X_JAVA_CLASS_NAME in VARCHAR2,
250   X_ARC_ACT_SRC_USED_BY in VARCHAR2,
251   X_SOURCE_CATEGORY in VARCHAR2,
252   X_IMPORT_TYPE in VARCHAR2,
253   X_OBJECT_VERSION_NUMBER in NUMBER,
254   X_LIST_SOURCE_TYPE in VARCHAR2,
255   X_SOURCE_TYPE_CODE in VARCHAR2,
256   X_SOURCE_OBJECT_NAME in VARCHAR2,
257   X_MASTER_SOURCE_TYPE_FLAG in VARCHAR2,
258   X_SOURCE_OBJECT_PK_FIELD in VARCHAR2,
259   X_ENABLED_FLAG in VARCHAR2,
260   X_SECURITY_GROUP_ID in NUMBER,
261   X_LIST_SOURCE_NAME in VARCHAR2,
262   X_DESCRIPTION in VARCHAR2,
263   X_LAST_UPDATE_DATE in DATE,
264   X_LAST_UPDATED_BY in NUMBER,
265   X_LAST_UPDATE_LOGIN in NUMBER,
266   X_BASED_ON_TCA_FLAG in VARCHAR2
267 ) is
268 begin
269   update AMS_LIST_SRC_TYPES set
270     REMOTE_FLAG = X_REMOTE_FLAG,
271     DATABASE_LINK = X_DATABASE_LINK,
272     SEEDED_FLAG = X_SEEDED_FLAG,
273     VIEW_APPLICATION_ID = X_VIEW_APPLICATION_ID,
274     JAVA_CLASS_NAME = X_JAVA_CLASS_NAME,
275     ARC_ACT_SRC_USED_BY = X_ARC_ACT_SRC_USED_BY,
276     SOURCE_CATEGORY = X_SOURCE_CATEGORY,
277     IMPORT_TYPE = X_IMPORT_TYPE,
278     OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
279     LIST_SOURCE_TYPE = X_LIST_SOURCE_TYPE,
280     SOURCE_TYPE_CODE = X_SOURCE_TYPE_CODE,
281     SOURCE_OBJECT_NAME = X_SOURCE_OBJECT_NAME,
282     MASTER_SOURCE_TYPE_FLAG = X_MASTER_SOURCE_TYPE_FLAG,
283     SOURCE_OBJECT_PK_FIELD = X_SOURCE_OBJECT_PK_FIELD,
284     ENABLED_FLAG = X_ENABLED_FLAG,
285     SECURITY_GROUP_ID = X_SECURITY_GROUP_ID,
286     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
287     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
288     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
289     BASED_ON_TCA_FLAG = X_BASED_ON_TCA_FLAG
290   where LIST_SOURCE_TYPE_ID = X_LIST_SOURCE_TYPE_ID;
291 
292   if (sql%notfound) then
293     raise no_data_found;
294   end if;
295 
296   update AMS_LIST_SRC_TYPES_TL set
297     LIST_SOURCE_NAME = X_LIST_SOURCE_NAME,
298     DESCRIPTION = X_DESCRIPTION,
299     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
300     LAST_UPDATE_BY = X_LAST_UPDATED_BY,
301     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
302     SOURCE_LANG = userenv('LANG')
303   where LIST_SOURCE_TYPE_ID = X_LIST_SOURCE_TYPE_ID
304   and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
305 
306   if (sql%notfound) then
307     raise no_data_found;
308   end if;
309 end UPDATE_ROW;
310 
311 procedure DELETE_ROW (
312   X_LIST_SOURCE_TYPE_ID in NUMBER
313 ) is
314 begin
315   delete from AMS_LIST_SRC_TYPES_TL
316   where LIST_SOURCE_TYPE_ID = X_LIST_SOURCE_TYPE_ID;
317 
318   if (sql%notfound) then
319     raise no_data_found;
320   end if;
321 
322   delete from AMS_LIST_SRC_TYPES
323   where LIST_SOURCE_TYPE_ID = X_LIST_SOURCE_TYPE_ID;
324 
325   if (sql%notfound) then
326     raise no_data_found;
327   end if;
328 end DELETE_ROW;
329 
330 procedure ADD_LANGUAGE
331 is
332 begin
333   delete from AMS_LIST_SRC_TYPES_TL T
334   where not exists
335     (select NULL
336     from AMS_LIST_SRC_TYPES B
337     where B.LIST_SOURCE_TYPE_ID = T.LIST_SOURCE_TYPE_ID
338     );
339 
340   update AMS_LIST_SRC_TYPES_TL T set (
341       LIST_SOURCE_NAME,
342       DESCRIPTION
343     ) = (select
344       B.LIST_SOURCE_NAME,
345       B.DESCRIPTION
346     from AMS_LIST_SRC_TYPES_TL B
347     where B.LIST_SOURCE_TYPE_ID = T.LIST_SOURCE_TYPE_ID
348     and B.LANGUAGE = T.SOURCE_LANG)
349   where (
350       T.LIST_SOURCE_TYPE_ID,
351       T.LANGUAGE
352   ) in (select
353       SUBT.LIST_SOURCE_TYPE_ID,
354       SUBT.LANGUAGE
355     from AMS_LIST_SRC_TYPES_TL SUBB, AMS_LIST_SRC_TYPES_TL SUBT
356     where SUBB.LIST_SOURCE_TYPE_ID = SUBT.LIST_SOURCE_TYPE_ID
357     and SUBB.LANGUAGE = SUBT.SOURCE_LANG
358     and (SUBB.LIST_SOURCE_NAME <> SUBT.LIST_SOURCE_NAME
359       or SUBB.DESCRIPTION <> SUBT.DESCRIPTION
360       or (SUBB.DESCRIPTION is null and SUBT.DESCRIPTION is not null)
361       or (SUBB.DESCRIPTION is not null and SUBT.DESCRIPTION is null)
362   ));
363 
364   insert into AMS_LIST_SRC_TYPES_TL (
365     LIST_SOURCE_TYPE_ID,
366     LAST_UPDATE_DATE,
367     LAST_UPDATE_BY,
368     CREATION_DATE,
369     CREATED_BY,
370     LAST_UPDATE_LOGIN,
371     LIST_SOURCE_NAME,
372     DESCRIPTION,
373     SECURITY_GROUP_ID,
374     LANGUAGE,
375     SOURCE_LANG
376   ) select /*+ ORDERED */
377     B.LIST_SOURCE_TYPE_ID,
378     B.LAST_UPDATE_DATE,
379     B.LAST_UPDATE_BY,
380     B.CREATION_DATE,
381     B.CREATED_BY,
382     B.LAST_UPDATE_LOGIN,
383     B.LIST_SOURCE_NAME,
384     B.DESCRIPTION,
385     B.SECURITY_GROUP_ID,
386     L.LANGUAGE_CODE,
387     B.SOURCE_LANG
388   from AMS_LIST_SRC_TYPES_TL B, FND_LANGUAGES L
389   where L.INSTALLED_FLAG in ('I', 'B')
390   and B.LANGUAGE = userenv('LANG')
391   and not exists
392     (select NULL
393     from AMS_LIST_SRC_TYPES_TL T
394     where T.LIST_SOURCE_TYPE_ID = B.LIST_SOURCE_TYPE_ID
395     and T.LANGUAGE = L.LANGUAGE_CODE);
396 end ADD_LANGUAGE;
397 
398 /* added by arunatar on 2nd April 2004, to find out whether the data source has some associations or not */
399 FUNCTION get_ams_ds_disable_delete(p_list_source_type_id in VARCHAR2)
400    RETURN VARCHAR2
401 IS
402    l_disable_delete VARCHAR2(1):='N';
403 
404   -- CURSOR SEEDED_CUR(c_list_source_type_id IN NUMBER) IS
405   --          SELECT 'Y' FROM AMS_LIST_SRC_TYPES_VL
406   --           WHERE p_list_source_type_id < 10000;
407 
408    CURSOR LIST_CUR(c_list_source_type_id IN NUMBER) IS
409             SELECT 'Y' FROM AMS_LIST_HEADERS_ALL
410              WHERE LIST_SOURCE_TYPE = (SELECT SOURCE_TYPE_CODE
411               FROM AMS_LIST_SRC_TYPES
412              WHERE LIST_SOURCE_TYPE_ID = c_list_source_type_id);
413 
414    CURSOR TARGET_CUR(c_list_source_type_id IN NUMBER) IS
415             SELECT 'Y' FROM DUAL
416              WHERE EXISTS (
417                SELECT 1 FROM AMS_DM_TARGETS_VL
418                 WHERE DATA_SOURCE_ID = c_list_source_type_id
419                UNION
420                SELECT 1 FROM AMS_DM_TARGET_SOURCES
421                 WHERE DATA_SOURCE_ID = c_list_source_type_id );
422 
423    CURSOR QRY_TEMPL_CUR(c_list_source_type_id IN NUMBER) IS
424             SELECT 'Y' FROM AMS_QUERY_TEMPLATE_ALL
425              WHERE LIST_SRC_TYPE = ( SELECT SOURCE_TYPE_CODE
426                                        FROM AMS_LIST_SRC_TYPES
427                                       WHERE LIST_SOURCE_TYPE_ID = c_list_source_type_id);
428 
429    CURSOR DEDUP_CUR(c_list_source_type_id IN NUMBER) IS
430             SELECT 'Y' FROM AMS_LIST_RULES_ALL
431              WHERE LIST_SOURCE_TYPE = (SELECT SOURCE_TYPE_CODE
432                                          FROM AMS_LIST_SRC_TYPES
433                                         WHERE LIST_SOURCE_TYPE_ID = c_list_source_type_id);
434 
435    CURSOR ASSOCS_CUR(c_list_source_type_id IN NUMBER) IS
436             SELECT DISTINCT 'Y' FROM AMS_LIST_SRC_TYPE_ASSOCS
437              WHERE MASTER_SOURCE_TYPE_ID = c_list_source_type_id;
438 
439 BEGIN
440 
441 
442    IF p_list_source_type_id < 10000 then
443    	l_disable_delete := 'Y';
444    else
445    	l_disable_delete := 'N';
446    end if;
447 
448    --OPEN SEEDED_CUR(p_list_source_type_id);
449    --FETCH SEEDED_CUR INTO l_disable_delete;
450 
451    --IF SEEDED_CUR%NOTFOUND THEN
452 
453    IF (l_disable_delete = 'N') THEN
454       OPEN LIST_CUR(p_list_source_type_id);
455       FETCH LIST_CUR INTO l_disable_delete;
456 
457       IF LIST_CUR%NOTFOUND THEN
458          OPEN TARGET_CUR(p_list_source_type_id);
459          FETCH TARGET_CUR INTO l_disable_delete;
460 
461          IF TARGET_CUR%NOTFOUND THEN
462             OPEN QRY_TEMPL_CUR(p_list_source_type_id);
463             FETCH QRY_TEMPL_CUR INTO l_disable_delete;
464 
465             IF QRY_TEMPL_CUR%NOTFOUND THEN
466                OPEN DEDUP_CUR(p_list_source_type_id);
467                FETCH DEDUP_CUR INTO l_disable_delete;
468 
469                IF DEDUP_CUR%NOTFOUND THEN
470                   OPEN ASSOCS_CUR(p_list_source_type_id);
471                   FETCH ASSOCS_CUR INTO l_disable_delete;
472 
473                   IF ASSOCS_CUR%NOTFOUND THEN
474                      l_disable_delete := 'N';
475                   END IF;
476                   CLOSE ASSOCS_CUR;
477 
478                END IF;
479                CLOSE DEDUP_CUR;
480 
481             END IF;
482             CLOSE QRY_TEMPL_CUR;
483 
484          END IF;
485          CLOSE TARGET_CUR;
486 
487       END IF;
488       CLOSE LIST_CUR;
489    END IF;
490    --CLOSE SEEDED_CUR;
491 
492    RETURN l_disable_delete;
493 EXCEPTION
494    WHEN NO_DATA_FOUND THEN
495       RETURN 'N';
496    WHEN TOO_MANY_ROWS THEN
497       RETURN 'Y';
498    WHEN OTHERS THEN
499       RETURN 'N';
500 END get_ams_ds_disable_delete;
501 
502 end AMS_LIST_SRC_TYPES_NEW_PKG;