путь к локальной OA_MEDIA
В течение процесса завершения можем просматривать список открытых задач. FNDSM - корневой конвейер канкаррент-процессинга, FNDLIBR - дочерние. путь к lct-файлам%JDEVHOME%/myhtml/OA_MEDIA
рестарт канкаррент-процессинга$FND_TOP/patch/115/import
Даем команду "Ложись!". Начинается завершение всех заданий на всех конвейерах.
export ADMIN_SCRIPT_HOME=$INST_TOP/admin/scripts cd $ADMIN_SCRIPT_HOME ./adcmctl.sh stop [login]/[password]
ps -ef | grep aDEV | grep -i fnd aDEV 16714 1 0 11:11 ? 00:00:00 FNDSM aDEV 18658 16714 0 11:29 ? 00:00:00 FNDLIBR aDEV 18659 16714 0 11:29 ? 00:00:00 FNDLIBR aDEV 18660 16714 0 11:29 ? 00:00:00 FNDLIBR aDEV 18661 16714 0 11:29 ? 00:00:00 FNDLIBR aDEV 18662 16714 0 11:29 ? 00:00:00 FNDLIBR aDEV 18663 16714 0 11:29 ? 00:00:00 FNDLIBRПериодически проверяем количество незакрытых заданий
ps -ef | grep aDEV | grep -i fnd | wc -l 5Как только все задания будут закрыты, даем команду "Вставай!"
cd $ORACLE_HOME/admin/scripts ./adcmctl.sh start [login]/[password]
логирование через пакет FND_TRANSACTION
логирование в канкарентеfnd_transaction.debug_info(function_name => 'MY_PACKAGE', action_name => 'MY_PROC', message_text => 'affected: ' || sql%rowcount );Запрос для получения записей:
select time, action, message from FND_CONCURRENT_DEBUG_INFO where function = 'MY_PACKAGE' order by time desc
Если канкарент построен на вызове процедуры PL/SQL, то в журнал будет записываться, всё, что обернуто так:путь к DBC-файлу
fnd_file.put_line(fnd_file.log, 'My stunning message');
/oracle/[ROOT_DIR]/[SERVER_NAME]/inst/apps/[INSTANCE_NAME]/appl/fnd/12.0.0/secure
select app.application_short_name,
v.APPLICATION_TABLE_NAME,
v1.APPLICATION_COLUMN_NAME,
v1.form_left_prompt
from FND_DESCRIPTIVE_FLEXS_VL v,
FND_DESCR_FLEX_COL_USAGE_TL v1,
FND_APPLICATION app
where v1.DESCRIPTIVE_FLEXFIELD_NAME = v.DESCRIPTIVE_FLEXFIELD_NAME
and app.application_id = v.APPLICATION_ID
and v1.language = 'RU'
order by app.application_short_name,
v.APPLICATION_TABLE_NAME,
v1.APPLICATION_COLUMN_NAME
удаление пунктов меню
declare
l_compile FND_JOBS_PKG.SUBMIT_MENU_COMPILE%TYPE;
begin
for ent in ( select me.menu_id, me.entry_sequence
from fnd_menus_vl project_tab
, fnd_menu_entries_vl me
where project_tab.menu_id = me.menu_id
and project_tab.menu_name = 'XXMY_MENU1'
and upper(me.prompt) like '%TMP_ITEM%'
and me.function_id is not null) loop
fnd_menu_entries_pkg.delete_row(x_menu_id => ent.menu_id,
x_entry_sequence => ent.entry_sequence);
end loop;
l_compile := fnd_menu_entries_pkg.submit_compile;
dbms_output.put_line('compile menu status = '||l_compile);
commit;
end;
закрытие права (grant) вчерашней датой declare -- Local variables here l_api_version number := 1.0; l_name varchar2(50) := 'XX_SOME_RIGHT'; l_end_date date := trunc(sysdate - 1); l_out varchar2(1024); l_grant_row FND_GRANTS%ROWTYPE; begin select * into l_grant_row from FND_GRANTS where name = l_name; FND_GRANTS_PKG.update_grant(p_api_version => l_api_version, p_end_date => l_end_date, p_grant_guid => l_grant_row.grant_guid, p_start_date => l_grant_row.start_date, p_name => l_grant_row.name, p_description => l_grant_row.description, x_success => l_out); dbms_output.put_line(l_out); commit; end;