338:
339: -- Check to see if we are running in the PATCH edition
340: -- If so we must not allow any transactions to take place
341: if ad_zd.get_edition_type(sys_context('userenv', 'current_edition_name')) = 'PATCH' then
342: fnd_message.set_name('FND', 'CONC-TM-Transactions disabled');
343: raise error;
344: end if;
345:
346: initialize_globals;
349: debug_info('fnd_transaction.synchronous', 'Starting transaction', NULL);
350: end if;
351:
352: if (timeout <= 0 or timeout is null) then
353: fnd_message.set_name('FND', 'CONC-TM-Invalid timeout');
354: debug_info('fnd_transaction.synchronous', 'Invalid timeout parameter', to_char(timeout));
355: raise error;
356: end if;
357:
355: raise error;
356: end if;
357:
358: if (application is null) then
359: fnd_message.set_name('FND', 'CONC-TM-Application null');
360: debug_info('fnd_transaction.synchronous', 'NULL application parameter', NULL);
361: raise error;
362: end if;
363:
361: raise error;
362: end if;
363:
364: if (program is null) then
365: fnd_message.set_name('FND', 'CONC-TM-Program null');
366: debug_info('fnd_transaction.synchronous', 'NULL program parameter', NULL);
367: raise error;
368: end if;
369:
573: when error then
574: return E_OTHER;
575:
576: when OTHERS then
577: fnd_message.set_name ('FND', 'SQL-Generic error');
578: fnd_message.set_token ('ERRNO', sqlcode, FALSE);
579: fnd_message.set_token ('REASON', sqlerrm, FALSE);
580: fnd_message.set_token ('ROUTINE', 'FND_TRANSACTION.SYNCHRONOUS', FALSE);
581: debug_info('fnd_transaction.synchronous', 'Caught exception', sqlerrm);
574: return E_OTHER;
575:
576: when OTHERS then
577: fnd_message.set_name ('FND', 'SQL-Generic error');
578: fnd_message.set_token ('ERRNO', sqlcode, FALSE);
579: fnd_message.set_token ('REASON', sqlerrm, FALSE);
580: fnd_message.set_token ('ROUTINE', 'FND_TRANSACTION.SYNCHRONOUS', FALSE);
581: debug_info('fnd_transaction.synchronous', 'Caught exception', sqlerrm);
582: return E_OTHER;
575:
576: when OTHERS then
577: fnd_message.set_name ('FND', 'SQL-Generic error');
578: fnd_message.set_token ('ERRNO', sqlcode, FALSE);
579: fnd_message.set_token ('REASON', sqlerrm, FALSE);
580: fnd_message.set_token ('ROUTINE', 'FND_TRANSACTION.SYNCHRONOUS', FALSE);
581: debug_info('fnd_transaction.synchronous', 'Caught exception', sqlerrm);
582: return E_OTHER;
583:
576: when OTHERS then
577: fnd_message.set_name ('FND', 'SQL-Generic error');
578: fnd_message.set_token ('ERRNO', sqlcode, FALSE);
579: fnd_message.set_token ('REASON', sqlerrm, FALSE);
580: fnd_message.set_token ('ROUTINE', 'FND_TRANSACTION.SYNCHRONOUS', FALSE);
581: debug_info('fnd_transaction.synchronous', 'Caught exception', sqlerrm);
582: return E_OTHER;
583:
584: end synchronous;
644: return E_SUCCESS;
645:
646: exception
647: when others then
648: fnd_message.set_name ('FND', 'SQL-Generic error');
649: fnd_message.set_token ('ERRNO', sqlcode, FALSE);
650: fnd_message.set_token ('REASON', sqlerrm, FALSE);
651: fnd_message.set_token ('ROUTINE', 'FND_TRANSACTION.GET_VALUES', FALSE);
652: return E_OTHER;
645:
646: exception
647: when others then
648: fnd_message.set_name ('FND', 'SQL-Generic error');
649: fnd_message.set_token ('ERRNO', sqlcode, FALSE);
650: fnd_message.set_token ('REASON', sqlerrm, FALSE);
651: fnd_message.set_token ('ROUTINE', 'FND_TRANSACTION.GET_VALUES', FALSE);
652: return E_OTHER;
653: end get_values;
646: exception
647: when others then
648: fnd_message.set_name ('FND', 'SQL-Generic error');
649: fnd_message.set_token ('ERRNO', sqlcode, FALSE);
650: fnd_message.set_token ('REASON', sqlerrm, FALSE);
651: fnd_message.set_token ('ROUTINE', 'FND_TRANSACTION.GET_VALUES', FALSE);
652: return E_OTHER;
653: end get_values;
654:
647: when others then
648: fnd_message.set_name ('FND', 'SQL-Generic error');
649: fnd_message.set_token ('ERRNO', sqlcode, FALSE);
650: fnd_message.set_token ('REASON', sqlerrm, FALSE);
651: fnd_message.set_token ('ROUTINE', 'FND_TRANSACTION.GET_VALUES', FALSE);
652: return E_OTHER;
653: end get_values;
654:
655: