Пример вызова параллельной программы для импорта журналов
-- ----------------------------------------------------- -- Импорт журналов -- ----------------------------------------------------- PROCEDURE import_journals(x_return_status OUT VARCHAR2 ,x_mess OUT VARCHAR2 ) IS l_flag_exist NUMBER; l_request_id NUMBER; BEGIN x_return_status := 'E'; write_log('START IMPORT_JOURNALS'); -- проверка, что есть вставленные строки SELECT COUNT(1) INTO l_flag_exist FROM gl_interface t WHERE group_id = fnd_global.conc_request_id; IF (l_flag_exist != 0) THEN write_log('Запуск программы "Программа - импорт журналов"'); l_request_id := apps.fnd_request.submit_request( 'SQLGL' ,'GLLEZLSRS' ,NULL ,SYSDATE ,FALSE ,fnd_profile.value('GL_ACCESS_SET_ID') --Data Access Set ID ,G_JE_SOURCE_NAME --Source ,G_LEDGER_ID --Ledger ,fnd_global.conc_request_id --Group ID ,'N' --Post Errors to Suspense ,'N' --Create Summary Journals ,'W' --Import Descriptive Flexfields ); COMMIT; IF l_request_id = 0 THEN x_mess := 'При отправке запроса произошла ошибка. Номер запроса:' || l_request_id; write_log(x_mess); RETURN; END IF; -- описание функции http://apps-oracle.ru/fnd_request_exec/#WAIT_CONCURRENT if NOT (wait_concur(l_request_id,x_mess)) then write_log(x_mess); RETURN; end if; END IF; write_log('END IMPORT_JOURNALS' || chr(10)); x_return_status := 'S'; END;
Последние комментарии