128:
129: IF lower(p_db_username) <> 'apps' THEN
130: select * INTO l_iem_server_rec from IEM_DB_SERVERS where DB_SERVER_ID = p_db_server_id;
131:
132: l_v_id := DBMS_SQL.OPEN_CURSOR;
133:
134: IF (p_db_username = 'oo') THEN
135:
136: select CONCAT(l_iem_server_rec.service_name, '@appsto_oo') into l_glname from DUAL;
170: ')))''';
171: END IF;
172:
173: if (l_statement1 <> 'none') then
174: DBMS_SQL.PARSE(l_v_id, l_statement1, DBMS_SQL.native);
175: l_num := DBMS_SQL.EXECUTE(l_v_id);
176: end if;
177:
178: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
171: END IF;
172:
173: if (l_statement1 <> 'none') then
174: DBMS_SQL.PARSE(l_v_id, l_statement1, DBMS_SQL.native);
175: l_num := DBMS_SQL.EXECUTE(l_v_id);
176: end if;
177:
178: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
179: l_num := DBMS_SQL.EXECUTE(l_v_id);
174: DBMS_SQL.PARSE(l_v_id, l_statement1, DBMS_SQL.native);
175: l_num := DBMS_SQL.EXECUTE(l_v_id);
176: end if;
177:
178: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
179: l_num := DBMS_SQL.EXECUTE(l_v_id);
180: DBMS_SQL.CLOSE_CURSOR(l_v_id);
181:
182: -- check if db link created successfully oherwise drop the link
175: l_num := DBMS_SQL.EXECUTE(l_v_id);
176: end if;
177:
178: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
179: l_num := DBMS_SQL.EXECUTE(l_v_id);
180: DBMS_SQL.CLOSE_CURSOR(l_v_id);
181:
182: -- check if db link created successfully oherwise drop the link
183: -- l_v_id := DBMS_SQL.OPEN_CURSOR;
176: end if;
177:
178: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
179: l_num := DBMS_SQL.EXECUTE(l_v_id);
180: DBMS_SQL.CLOSE_CURSOR(l_v_id);
181:
182: -- check if db link created successfully oherwise drop the link
183: -- l_v_id := DBMS_SQL.OPEN_CURSOR;
184: l_statement := 'SELECT global_name FROM global_name@'||l_glname;
179: l_num := DBMS_SQL.EXECUTE(l_v_id);
180: DBMS_SQL.CLOSE_CURSOR(l_v_id);
181:
182: -- check if db link created successfully oherwise drop the link
183: -- l_v_id := DBMS_SQL.OPEN_CURSOR;
184: l_statement := 'SELECT global_name FROM global_name@'||l_glname;
185: OPEN l_link_cur for l_statement;
186: LOOP
187: FETCH l_link_cur INTO l_global_name;
247:
248: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
249:
250: if l_count <> 0 then
251: l_v_id := DBMS_SQL.OPEN_CURSOR;
252: l_statement := 'DROP DATABASE LINK '||l_glname;
253: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
254: l_num := DBMS_SQL.EXECUTE(l_v_id);
255: DBMS_SQL.CLOSE_CURSOR(l_v_id);
249:
250: if l_count <> 0 then
251: l_v_id := DBMS_SQL.OPEN_CURSOR;
252: l_statement := 'DROP DATABASE LINK '||l_glname;
253: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
254: l_num := DBMS_SQL.EXECUTE(l_v_id);
255: DBMS_SQL.CLOSE_CURSOR(l_v_id);
256: end if;
257: -- ROLLBACK TO CREATE_LINK_PVT;
250: if l_count <> 0 then
251: l_v_id := DBMS_SQL.OPEN_CURSOR;
252: l_statement := 'DROP DATABASE LINK '||l_glname;
253: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
254: l_num := DBMS_SQL.EXECUTE(l_v_id);
255: DBMS_SQL.CLOSE_CURSOR(l_v_id);
256: end if;
257: -- ROLLBACK TO CREATE_LINK_PVT;
258: FND_MESSAGE.SET_NAME('IEM','IEM_SSS_GLNAME_INVALID');
251: l_v_id := DBMS_SQL.OPEN_CURSOR;
252: l_statement := 'DROP DATABASE LINK '||l_glname;
253: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
254: l_num := DBMS_SQL.EXECUTE(l_v_id);
255: DBMS_SQL.CLOSE_CURSOR(l_v_id);
256: end if;
257: -- ROLLBACK TO CREATE_LINK_PVT;
258: FND_MESSAGE.SET_NAME('IEM','IEM_SSS_GLNAME_INVALID');
259: FND_MSG_PUB.Add;
264:
265: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
266:
267: if l_count <> 0 then
268: l_v_id := DBMS_SQL.OPEN_CURSOR;
269: l_statement := 'DROP DATABASE LINK '||l_glname;
270: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
271: l_num := DBMS_SQL.EXECUTE(l_v_id);
272: DBMS_SQL.CLOSE_CURSOR(l_v_id);
266:
267: if l_count <> 0 then
268: l_v_id := DBMS_SQL.OPEN_CURSOR;
269: l_statement := 'DROP DATABASE LINK '||l_glname;
270: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
271: l_num := DBMS_SQL.EXECUTE(l_v_id);
272: DBMS_SQL.CLOSE_CURSOR(l_v_id);
273: end if;
274:
267: if l_count <> 0 then
268: l_v_id := DBMS_SQL.OPEN_CURSOR;
269: l_statement := 'DROP DATABASE LINK '||l_glname;
270: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
271: l_num := DBMS_SQL.EXECUTE(l_v_id);
272: DBMS_SQL.CLOSE_CURSOR(l_v_id);
273: end if;
274:
275: -- ROLLBACK TO CREATE_LINK_PVT;
268: l_v_id := DBMS_SQL.OPEN_CURSOR;
269: l_statement := 'DROP DATABASE LINK '||l_glname;
270: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
271: l_num := DBMS_SQL.EXECUTE(l_v_id);
272: DBMS_SQL.CLOSE_CURSOR(l_v_id);
273: end if;
274:
275: -- ROLLBACK TO CREATE_LINK_PVT;
276: FND_MESSAGE.SET_NAME('IEM','IEM_SSS_GLNAME_INVALID');
280: WHEN db_name_invalid THEN
281: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
282:
283: if l_count <> 0 then
284: l_v_id := DBMS_SQL.OPEN_CURSOR;
285: l_statement := 'DROP DATABASE LINK '||l_glname;
286: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
287: l_num := DBMS_SQL.EXECUTE(l_v_id);
288: DBMS_SQL.CLOSE_CURSOR(l_v_id);
282:
283: if l_count <> 0 then
284: l_v_id := DBMS_SQL.OPEN_CURSOR;
285: l_statement := 'DROP DATABASE LINK '||l_glname;
286: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
287: l_num := DBMS_SQL.EXECUTE(l_v_id);
288: DBMS_SQL.CLOSE_CURSOR(l_v_id);
289: end if;
290:
283: if l_count <> 0 then
284: l_v_id := DBMS_SQL.OPEN_CURSOR;
285: l_statement := 'DROP DATABASE LINK '||l_glname;
286: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
287: l_num := DBMS_SQL.EXECUTE(l_v_id);
288: DBMS_SQL.CLOSE_CURSOR(l_v_id);
289: end if;
290:
291: -- ROLLBACK TO CREATE_LINK_PVT;
284: l_v_id := DBMS_SQL.OPEN_CURSOR;
285: l_statement := 'DROP DATABASE LINK '||l_glname;
286: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
287: l_num := DBMS_SQL.EXECUTE(l_v_id);
288: DBMS_SQL.CLOSE_CURSOR(l_v_id);
289: end if;
290:
291: -- ROLLBACK TO CREATE_LINK_PVT;
292: FND_MESSAGE.SET_NAME('IEM','IEM_SSS_PSWD_GLNAME_INVALID');
296: WHEN db_name_invalid_spc THEN
297: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
298:
299: if l_count <> 0 then
300: l_v_id := DBMS_SQL.OPEN_CURSOR;
301: l_statement := 'DROP DATABASE LINK '||l_glname;
302: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
303: l_num := DBMS_SQL.EXECUTE(l_v_id);
304: DBMS_SQL.CLOSE_CURSOR(l_v_id);
298:
299: if l_count <> 0 then
300: l_v_id := DBMS_SQL.OPEN_CURSOR;
301: l_statement := 'DROP DATABASE LINK '||l_glname;
302: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
303: l_num := DBMS_SQL.EXECUTE(l_v_id);
304: DBMS_SQL.CLOSE_CURSOR(l_v_id);
305: end if;
306:
299: if l_count <> 0 then
300: l_v_id := DBMS_SQL.OPEN_CURSOR;
301: l_statement := 'DROP DATABASE LINK '||l_glname;
302: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
303: l_num := DBMS_SQL.EXECUTE(l_v_id);
304: DBMS_SQL.CLOSE_CURSOR(l_v_id);
305: end if;
306:
307: -- ROLLBACK TO CREATE_LINK_PVT;
300: l_v_id := DBMS_SQL.OPEN_CURSOR;
301: l_statement := 'DROP DATABASE LINK '||l_glname;
302: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
303: l_num := DBMS_SQL.EXECUTE(l_v_id);
304: DBMS_SQL.CLOSE_CURSOR(l_v_id);
305: end if;
306:
307: -- ROLLBACK TO CREATE_LINK_PVT;
308: FND_MESSAGE.SET_NAME('IEM','IEM_SSS_GLNAME_INVALID');
314:
315: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
316:
317: if l_count <> 0 then
318: l_v_id := DBMS_SQL.OPEN_CURSOR;
319: l_statement := 'DROP DATABASE LINK '||l_glname;
320: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
321: l_num := DBMS_SQL.EXECUTE(l_v_id);
322: DBMS_SQL.CLOSE_CURSOR(l_v_id);
316:
317: if l_count <> 0 then
318: l_v_id := DBMS_SQL.OPEN_CURSOR;
319: l_statement := 'DROP DATABASE LINK '||l_glname;
320: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
321: l_num := DBMS_SQL.EXECUTE(l_v_id);
322: DBMS_SQL.CLOSE_CURSOR(l_v_id);
323: end if;
324:
317: if l_count <> 0 then
318: l_v_id := DBMS_SQL.OPEN_CURSOR;
319: l_statement := 'DROP DATABASE LINK '||l_glname;
320: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
321: l_num := DBMS_SQL.EXECUTE(l_v_id);
322: DBMS_SQL.CLOSE_CURSOR(l_v_id);
323: end if;
324:
325: -- ROLLBACK TO CREATE_LINK_PVT;
318: l_v_id := DBMS_SQL.OPEN_CURSOR;
319: l_statement := 'DROP DATABASE LINK '||l_glname;
320: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
321: l_num := DBMS_SQL.EXECUTE(l_v_id);
322: DBMS_SQL.CLOSE_CURSOR(l_v_id);
323: end if;
324:
325: -- ROLLBACK TO CREATE_LINK_PVT;
326: FND_MESSAGE.SET_NAME('IEM','IEM_SSS_GLNAME_INVALID');
330: WHEN login_denied THEN
331: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
332:
333: if l_count <> 0 then
334: l_v_id := DBMS_SQL.OPEN_CURSOR;
335: l_statement := 'DROP DATABASE LINK '||l_glname;
336: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
337: l_num := DBMS_SQL.EXECUTE(l_v_id);
338: DBMS_SQL.CLOSE_CURSOR(l_v_id);
332:
333: if l_count <> 0 then
334: l_v_id := DBMS_SQL.OPEN_CURSOR;
335: l_statement := 'DROP DATABASE LINK '||l_glname;
336: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
337: l_num := DBMS_SQL.EXECUTE(l_v_id);
338: DBMS_SQL.CLOSE_CURSOR(l_v_id);
339: end if;
340:
333: if l_count <> 0 then
334: l_v_id := DBMS_SQL.OPEN_CURSOR;
335: l_statement := 'DROP DATABASE LINK '||l_glname;
336: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
337: l_num := DBMS_SQL.EXECUTE(l_v_id);
338: DBMS_SQL.CLOSE_CURSOR(l_v_id);
339: end if;
340:
341: -- ROLLBACK TO CREATE_LINK_PVT;
334: l_v_id := DBMS_SQL.OPEN_CURSOR;
335: l_statement := 'DROP DATABASE LINK '||l_glname;
336: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
337: l_num := DBMS_SQL.EXECUTE(l_v_id);
338: DBMS_SQL.CLOSE_CURSOR(l_v_id);
339: end if;
340:
341: -- ROLLBACK TO CREATE_LINK_PVT;
342: FND_MESSAGE.SET_NAME('IEM','IEM_DBLINK_LOGIN_DENIED');
347: WHEN password_invalid THEN
348: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
349:
350: if l_count <> 0 then
351: l_v_id := DBMS_SQL.OPEN_CURSOR;
352: l_statement := 'DROP DATABASE LINK '||l_glname;
353: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
354: l_num := DBMS_SQL.EXECUTE(l_v_id);
355: DBMS_SQL.CLOSE_CURSOR(l_v_id);
349:
350: if l_count <> 0 then
351: l_v_id := DBMS_SQL.OPEN_CURSOR;
352: l_statement := 'DROP DATABASE LINK '||l_glname;
353: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
354: l_num := DBMS_SQL.EXECUTE(l_v_id);
355: DBMS_SQL.CLOSE_CURSOR(l_v_id);
356: end if;
357:
350: if l_count <> 0 then
351: l_v_id := DBMS_SQL.OPEN_CURSOR;
352: l_statement := 'DROP DATABASE LINK '||l_glname;
353: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
354: l_num := DBMS_SQL.EXECUTE(l_v_id);
355: DBMS_SQL.CLOSE_CURSOR(l_v_id);
356: end if;
357:
358: -- ROLLBACK TO CREATE_LINK_PVT;
351: l_v_id := DBMS_SQL.OPEN_CURSOR;
352: l_statement := 'DROP DATABASE LINK '||l_glname;
353: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
354: l_num := DBMS_SQL.EXECUTE(l_v_id);
355: DBMS_SQL.CLOSE_CURSOR(l_v_id);
356: end if;
357:
358: -- ROLLBACK TO CREATE_LINK_PVT;
359: FND_MESSAGE.SET_NAME('IEM','IEM_DBLINK_LOGIN_DENIED');
364: WHEN user_invalid THEN
365: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
366:
367: if l_count <> 0 then
368: l_v_id := DBMS_SQL.OPEN_CURSOR;
369: l_statement := 'DROP DATABASE LINK '||l_glname;
370: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
371: l_num := DBMS_SQL.EXECUTE(l_v_id);
372: DBMS_SQL.CLOSE_CURSOR(l_v_id);
366:
367: if l_count <> 0 then
368: l_v_id := DBMS_SQL.OPEN_CURSOR;
369: l_statement := 'DROP DATABASE LINK '||l_glname;
370: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
371: l_num := DBMS_SQL.EXECUTE(l_v_id);
372: DBMS_SQL.CLOSE_CURSOR(l_v_id);
373: end if;
374:
367: if l_count <> 0 then
368: l_v_id := DBMS_SQL.OPEN_CURSOR;
369: l_statement := 'DROP DATABASE LINK '||l_glname;
370: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
371: l_num := DBMS_SQL.EXECUTE(l_v_id);
372: DBMS_SQL.CLOSE_CURSOR(l_v_id);
373: end if;
374:
375: -- ROLLBACK TO CREATE_LINK_PVT;
368: l_v_id := DBMS_SQL.OPEN_CURSOR;
369: l_statement := 'DROP DATABASE LINK '||l_glname;
370: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
371: l_num := DBMS_SQL.EXECUTE(l_v_id);
372: DBMS_SQL.CLOSE_CURSOR(l_v_id);
373: end if;
374:
375: -- ROLLBACK TO CREATE_LINK_PVT;
376: FND_MESSAGE.SET_NAME('IEM','IEM_DBLINK_LOGIN_DENIED');
399: WHEN protocol_invalid THEN
400: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
401:
402: if l_count <> 0 then
403: l_v_id := DBMS_SQL.OPEN_CURSOR;
404: l_statement := 'DROP DATABASE LINK '||l_glname;
405: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
406: l_num := DBMS_SQL.EXECUTE(l_v_id);
407: DBMS_SQL.CLOSE_CURSOR(l_v_id);
401:
402: if l_count <> 0 then
403: l_v_id := DBMS_SQL.OPEN_CURSOR;
404: l_statement := 'DROP DATABASE LINK '||l_glname;
405: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
406: l_num := DBMS_SQL.EXECUTE(l_v_id);
407: DBMS_SQL.CLOSE_CURSOR(l_v_id);
408: end if;
409:
402: if l_count <> 0 then
403: l_v_id := DBMS_SQL.OPEN_CURSOR;
404: l_statement := 'DROP DATABASE LINK '||l_glname;
405: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
406: l_num := DBMS_SQL.EXECUTE(l_v_id);
407: DBMS_SQL.CLOSE_CURSOR(l_v_id);
408: end if;
409:
410: -- ROLLBACK TO CREATE_LINK_PVT;
403: l_v_id := DBMS_SQL.OPEN_CURSOR;
404: l_statement := 'DROP DATABASE LINK '||l_glname;
405: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
406: l_num := DBMS_SQL.EXECUTE(l_v_id);
407: DBMS_SQL.CLOSE_CURSOR(l_v_id);
408: end if;
409:
410: -- ROLLBACK TO CREATE_LINK_PVT;
411: FND_MESSAGE.SET_NAME('IEM','IEM_SSS_PROTOCOL_NOT_VALID');
415: WHEN sid_invalid THEN
416: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
417:
418: if l_count <> 0 then
419: l_v_id := DBMS_SQL.OPEN_CURSOR;
420: l_statement := 'DROP DATABASE LINK '||l_glname;
421: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
422: l_num := DBMS_SQL.EXECUTE(l_v_id);
423: DBMS_SQL.CLOSE_CURSOR(l_v_id);
417:
418: if l_count <> 0 then
419: l_v_id := DBMS_SQL.OPEN_CURSOR;
420: l_statement := 'DROP DATABASE LINK '||l_glname;
421: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
422: l_num := DBMS_SQL.EXECUTE(l_v_id);
423: DBMS_SQL.CLOSE_CURSOR(l_v_id);
424: end if;
425:
418: if l_count <> 0 then
419: l_v_id := DBMS_SQL.OPEN_CURSOR;
420: l_statement := 'DROP DATABASE LINK '||l_glname;
421: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
422: l_num := DBMS_SQL.EXECUTE(l_v_id);
423: DBMS_SQL.CLOSE_CURSOR(l_v_id);
424: end if;
425:
426: -- ROLLBACK TO CREATE_LINK_PVT;
419: l_v_id := DBMS_SQL.OPEN_CURSOR;
420: l_statement := 'DROP DATABASE LINK '||l_glname;
421: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
422: l_num := DBMS_SQL.EXECUTE(l_v_id);
423: DBMS_SQL.CLOSE_CURSOR(l_v_id);
424: end if;
425:
426: -- ROLLBACK TO CREATE_LINK_PVT;
427: FND_MESSAGE.SET_NAME('IEM','IEM_SSS_SID_NOT_VALID');
431: WHEN tns_no_listener THEN
432: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
433:
434: if l_count <> 0 then
435: l_v_id := DBMS_SQL.OPEN_CURSOR;
436: l_statement := 'DROP DATABASE LINK '||l_glname;
437: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
438: l_num := DBMS_SQL.EXECUTE(l_v_id);
439: DBMS_SQL.CLOSE_CURSOR(l_v_id);
433:
434: if l_count <> 0 then
435: l_v_id := DBMS_SQL.OPEN_CURSOR;
436: l_statement := 'DROP DATABASE LINK '||l_glname;
437: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
438: l_num := DBMS_SQL.EXECUTE(l_v_id);
439: DBMS_SQL.CLOSE_CURSOR(l_v_id);
440: end if;
441:
434: if l_count <> 0 then
435: l_v_id := DBMS_SQL.OPEN_CURSOR;
436: l_statement := 'DROP DATABASE LINK '||l_glname;
437: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
438: l_num := DBMS_SQL.EXECUTE(l_v_id);
439: DBMS_SQL.CLOSE_CURSOR(l_v_id);
440: end if;
441:
442: -- ROLLBACK TO CREATE_LINK_PVT;
435: l_v_id := DBMS_SQL.OPEN_CURSOR;
436: l_statement := 'DROP DATABASE LINK '||l_glname;
437: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
438: l_num := DBMS_SQL.EXECUTE(l_v_id);
439: DBMS_SQL.CLOSE_CURSOR(l_v_id);
440: end if;
441:
442: -- ROLLBACK TO CREATE_LINK_PVT;
443: FND_MESSAGE.SET_NAME('IEM','IEM_SSS_TNS_NO_LISTENER');
447: WHEN host_invalid THEN
448: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
449:
450: if l_count <> 0 then
451: l_v_id := DBMS_SQL.OPEN_CURSOR;
452: l_statement := 'DROP DATABASE LINK '||l_glname;
453: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
454: l_num := DBMS_SQL.EXECUTE(l_v_id);
455: DBMS_SQL.CLOSE_CURSOR(l_v_id);
449:
450: if l_count <> 0 then
451: l_v_id := DBMS_SQL.OPEN_CURSOR;
452: l_statement := 'DROP DATABASE LINK '||l_glname;
453: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
454: l_num := DBMS_SQL.EXECUTE(l_v_id);
455: DBMS_SQL.CLOSE_CURSOR(l_v_id);
456: end if;
457:
450: if l_count <> 0 then
451: l_v_id := DBMS_SQL.OPEN_CURSOR;
452: l_statement := 'DROP DATABASE LINK '||l_glname;
453: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
454: l_num := DBMS_SQL.EXECUTE(l_v_id);
455: DBMS_SQL.CLOSE_CURSOR(l_v_id);
456: end if;
457:
458: -- ROLLBACK TO CREATE_LINK_PVT;
451: l_v_id := DBMS_SQL.OPEN_CURSOR;
452: l_statement := 'DROP DATABASE LINK '||l_glname;
453: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
454: l_num := DBMS_SQL.EXECUTE(l_v_id);
455: DBMS_SQL.CLOSE_CURSOR(l_v_id);
456: end if;
457:
458: -- ROLLBACK TO CREATE_LINK_PVT;
459: FND_MESSAGE.SET_NAME('IEM','IEM_SSS_HOST_INVALID');
464: WHEN host_invalid1 THEN
465: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
466:
467: if l_count <> 0 then
468: l_v_id := DBMS_SQL.OPEN_CURSOR;
469: l_statement := 'DROP DATABASE LINK '||l_glname;
470: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
471: l_num := DBMS_SQL.EXECUTE(l_v_id);
472: DBMS_SQL.CLOSE_CURSOR(l_v_id);
466:
467: if l_count <> 0 then
468: l_v_id := DBMS_SQL.OPEN_CURSOR;
469: l_statement := 'DROP DATABASE LINK '||l_glname;
470: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
471: l_num := DBMS_SQL.EXECUTE(l_v_id);
472: DBMS_SQL.CLOSE_CURSOR(l_v_id);
473: end if;
474:
467: if l_count <> 0 then
468: l_v_id := DBMS_SQL.OPEN_CURSOR;
469: l_statement := 'DROP DATABASE LINK '||l_glname;
470: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
471: l_num := DBMS_SQL.EXECUTE(l_v_id);
472: DBMS_SQL.CLOSE_CURSOR(l_v_id);
473: end if;
474:
475: -- ROLLBACK TO CREATE_LINK_PVT;
468: l_v_id := DBMS_SQL.OPEN_CURSOR;
469: l_statement := 'DROP DATABASE LINK '||l_glname;
470: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
471: l_num := DBMS_SQL.EXECUTE(l_v_id);
472: DBMS_SQL.CLOSE_CURSOR(l_v_id);
473: end if;
474:
475: -- ROLLBACK TO CREATE_LINK_PVT;
476: FND_MESSAGE.SET_NAME('IEM','IEM_SSS_HOST_INVALID');
481: WHEN db_conn_desc_invalid THEN
482: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
483:
484: if l_count <> 0 then
485: l_v_id := DBMS_SQL.OPEN_CURSOR;
486: l_statement := 'DROP DATABASE LINK '||l_glname;
487: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
488: l_num := DBMS_SQL.EXECUTE(l_v_id);
489: DBMS_SQL.CLOSE_CURSOR(l_v_id);
483:
484: if l_count <> 0 then
485: l_v_id := DBMS_SQL.OPEN_CURSOR;
486: l_statement := 'DROP DATABASE LINK '||l_glname;
487: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
488: l_num := DBMS_SQL.EXECUTE(l_v_id);
489: DBMS_SQL.CLOSE_CURSOR(l_v_id);
490: end if;
491:
484: if l_count <> 0 then
485: l_v_id := DBMS_SQL.OPEN_CURSOR;
486: l_statement := 'DROP DATABASE LINK '||l_glname;
487: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
488: l_num := DBMS_SQL.EXECUTE(l_v_id);
489: DBMS_SQL.CLOSE_CURSOR(l_v_id);
490: end if;
491:
492: -- ROLLBACK TO CREATE_LINK_PVT;
485: l_v_id := DBMS_SQL.OPEN_CURSOR;
486: l_statement := 'DROP DATABASE LINK '||l_glname;
487: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
488: l_num := DBMS_SQL.EXECUTE(l_v_id);
489: DBMS_SQL.CLOSE_CURSOR(l_v_id);
490: end if;
491:
492: -- ROLLBACK TO CREATE_LINK_PVT;
493: FND_MESSAGE.SET_NAME('IEM','IEM_SSS_DBCONN_DESC_INVALID');
498: WHEN FND_API.G_EXC_ERROR THEN
499: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
500:
501: if l_count <> 0 then
502: l_v_id := DBMS_SQL.OPEN_CURSOR;
503: l_statement := 'DROP DATABASE LINK '||l_glname;
504: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
505: l_num := DBMS_SQL.EXECUTE(l_v_id);
506: DBMS_SQL.CLOSE_CURSOR(l_v_id);
500:
501: if l_count <> 0 then
502: l_v_id := DBMS_SQL.OPEN_CURSOR;
503: l_statement := 'DROP DATABASE LINK '||l_glname;
504: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
505: l_num := DBMS_SQL.EXECUTE(l_v_id);
506: DBMS_SQL.CLOSE_CURSOR(l_v_id);
507: end if;
508:
501: if l_count <> 0 then
502: l_v_id := DBMS_SQL.OPEN_CURSOR;
503: l_statement := 'DROP DATABASE LINK '||l_glname;
504: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
505: l_num := DBMS_SQL.EXECUTE(l_v_id);
506: DBMS_SQL.CLOSE_CURSOR(l_v_id);
507: end if;
508:
509: ROLLBACK TO CREATE_LINK_PVT;
502: l_v_id := DBMS_SQL.OPEN_CURSOR;
503: l_statement := 'DROP DATABASE LINK '||l_glname;
504: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
505: l_num := DBMS_SQL.EXECUTE(l_v_id);
506: DBMS_SQL.CLOSE_CURSOR(l_v_id);
507: end if;
508:
509: ROLLBACK TO CREATE_LINK_PVT;
510: x_return_status := FND_API.G_RET_STS_ERROR ;
515: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
516: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
517:
518: if l_count <> 0 then
519: l_v_id := DBMS_SQL.OPEN_CURSOR;
520: l_statement := 'DROP DATABASE LINK '||l_glname;
521: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
522: l_num := DBMS_SQL.EXECUTE(l_v_id);
523: DBMS_SQL.CLOSE_CURSOR(l_v_id);
517:
518: if l_count <> 0 then
519: l_v_id := DBMS_SQL.OPEN_CURSOR;
520: l_statement := 'DROP DATABASE LINK '||l_glname;
521: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
522: l_num := DBMS_SQL.EXECUTE(l_v_id);
523: DBMS_SQL.CLOSE_CURSOR(l_v_id);
524: end if;
525:
518: if l_count <> 0 then
519: l_v_id := DBMS_SQL.OPEN_CURSOR;
520: l_statement := 'DROP DATABASE LINK '||l_glname;
521: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
522: l_num := DBMS_SQL.EXECUTE(l_v_id);
523: DBMS_SQL.CLOSE_CURSOR(l_v_id);
524: end if;
525:
526: ROLLBACK TO CREATE_LINK_PVT;
519: l_v_id := DBMS_SQL.OPEN_CURSOR;
520: l_statement := 'DROP DATABASE LINK '||l_glname;
521: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
522: l_num := DBMS_SQL.EXECUTE(l_v_id);
523: DBMS_SQL.CLOSE_CURSOR(l_v_id);
524: end if;
525:
526: ROLLBACK TO CREATE_LINK_PVT;
527: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
536:
537: select count(*) into l_count from all_db_links where upper(owner)=upper(l_schema_owner) and UPPER(db_link) = UPPER(l_glname);
538:
539: if l_count <> 0 then
540: l_v_id := DBMS_SQL.OPEN_CURSOR;
541: l_statement := 'DROP DATABASE LINK '||l_glname;
542: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
543: l_num := DBMS_SQL.EXECUTE(l_v_id);
544: DBMS_SQL.CLOSE_CURSOR(l_v_id);
538:
539: if l_count <> 0 then
540: l_v_id := DBMS_SQL.OPEN_CURSOR;
541: l_statement := 'DROP DATABASE LINK '||l_glname;
542: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
543: l_num := DBMS_SQL.EXECUTE(l_v_id);
544: DBMS_SQL.CLOSE_CURSOR(l_v_id);
545: end if;
546:
539: if l_count <> 0 then
540: l_v_id := DBMS_SQL.OPEN_CURSOR;
541: l_statement := 'DROP DATABASE LINK '||l_glname;
542: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
543: l_num := DBMS_SQL.EXECUTE(l_v_id);
544: DBMS_SQL.CLOSE_CURSOR(l_v_id);
545: end if;
546:
547: -- end if;
540: l_v_id := DBMS_SQL.OPEN_CURSOR;
541: l_statement := 'DROP DATABASE LINK '||l_glname;
542: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
543: l_num := DBMS_SQL.EXECUTE(l_v_id);
544: DBMS_SQL.CLOSE_CURSOR(l_v_id);
545: end if;
546:
547: -- end if;
548: -- ROLLBACK TO CREATE_LINK_PVT;
634: -- select db_link into l_dblink from iem_db_connections where db_connection_id = p_db_connection_id;
635:
636: IF (l_iem_dbconn_rec.is_admin <> 'O') then
637:
638: l_v_id := DBMS_SQL.OPEN_CURSOR;
639:
640: l_statement := 'DROP DATABASE LINK '||l_iem_dbconn_rec.db_link;
641:
642: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
638: l_v_id := DBMS_SQL.OPEN_CURSOR;
639:
640: l_statement := 'DROP DATABASE LINK '||l_iem_dbconn_rec.db_link;
641:
642: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
643:
644: l_num := DBMS_SQL.EXECUTE(l_v_id);
645:
646: DBMS_SQL.CLOSE_CURSOR(l_v_id);
640: l_statement := 'DROP DATABASE LINK '||l_iem_dbconn_rec.db_link;
641:
642: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
643:
644: l_num := DBMS_SQL.EXECUTE(l_v_id);
645:
646: DBMS_SQL.CLOSE_CURSOR(l_v_id);
647:
648: END IF;
642: DBMS_SQL.PARSE(l_v_id, l_statement, DBMS_SQL.native);
643:
644: l_num := DBMS_SQL.EXECUTE(l_v_id);
645:
646: DBMS_SQL.CLOSE_CURSOR(l_v_id);
647:
648: END IF;
649: -- Standard Start of API savepoint
650: SAVEPOINT delete_link_pvt;