HOST BASED CONCURRENT PROGRAM
Как создать concurrent основаный на sh скрипте:
- Создаем скрипт, расширение файла указываем .prog
- Скрипт должен находиться в директории $XX_TOP/bin
- Выставляем права на выполнение для файла скрипта
- Создаём ссылку fndcpesr: ln -s $FND_TOP/bin/fndcpesr $XX_TOP/bin/filename.
Название скрипта указываем без расширения - Регистрируем Concurrent Program Executable
- Регистрируем Concurrent Program
- Добавляем в полномочия
- Возможно, надо будет перегрузить concurrent manager:
$ADMIN_SCRIPTS_HOME/adcmctl.sh stop apps/apps
$ADMIN_SCRIPTS_HOME/adcmctl.sh start apps/apps
Первые 4 параметра передаваемые в скрипт, служебные:
#!/bin/sh p_orauser_pwd=${1} p_user_id=${2} p_user_name=${3} p_request_id=${4} echo "p_orauser_pwd=${p_orauser_pwd}" echo "p_user_id=${p_user_id}" echo "p_user_name=${p_user_name}" echo "p_request_id=${p_request_id}" ...
Ссылка на metalink: How To Setup A Custom Concurrent Host Program [ID 147455.1]
Объединенный скрипт создания пользователя
Объединенный скрипт создания пользователя включает в себя
- Создание пользователя
- Заполнение профилей
- Добавление полномочий
Читать дальше про “Объединенный скрипт создания пользователя” »
R12: таблицы HZ (Заказчики)
Рассмотрим назначение основных HZ таблиц и связи между ними.
HZ_PARTIES
Содержит основную информацию о сущностях (сторонах). Разные сущности могу иметь одинаковое имя.
Типы сущностей
- Person — лицо
- Organization — организация
- Group — группа
- Relationship — отношение
Поле | Описание |
PARTY_ID (PK) | ID сущности |
PARTY_NUMBER (PK) | Номер сущности |
PARTY_NAME | Имя сущности |
PARTY_TYPE | Тип сущности |
Oracle FNDLOAD
Generic Loader (ORACLE FNDLOAD) — используется для выгрузки application entity с БД в текстовый файл.
Данный файл можно изменять руками и переносить в любое место. Формирование данных в файле .ldt происходит согласно конфигурационному .lct файлу.
Поддерживаются два режима работы: download или upload.
Есть интересный GUI для работы с FNDLOAD — Migration LogiK
Нота на металинке Tips and Examples Using FNDLOAD (Doc ID 735338.1)
Возможности FNDLOAD:
- Concurrent Programs, Executables
- Request Groups, Request Sets
- Profile Options
- Key and Descriptive Flexfields
- Menus and Responsibilities
- Forms and Form Functions/Personalizations
- Attachments
- Messages
- Value Sets and Values
- Lookup Types
- User Responsibilities
- Printer Definitions
- FND Dictionary
- Help Configuration
- Document Sequences
- Alerts
- Concurrent Manager Schedules
- WEB ADI
- Approvals Management Engine
API добавления полномочия для пользователя
С помощью данного API можно добавить полномочие пользователю
begin -- Call the procedure fnd_user_pkg.addresp(username => :username, resp_app => :resp_app, resp_key => :resp_key, security_group => :security_group, -- в основном 'STANDARD' description => :description, -- любой коммент start_date => :start_date, end_date => :end_date); commit; dbms_output.put_line('Responsibility Added Successfully'); exception when others then dbms_output.put_line(' Responsibility is not added due to ' || substr(SQLERRM, 1, 100)); rollback; end;
И весьма полезный скрипт, c помощью которого можно быстро перетянуть полномочия с одного инстанса на другой.
Читать дальше про “API добавления полномочия для пользователя” »
Как посмотреть OPP service log
При выполнении concurrent request в Oracle E-business suite, который строится с использованием XML Publisher, можно столкнуться с тем что concurrent завершается со статусом Warning.
В логе будет следующая запись:
+————- 1) PUBLISH ————-+
Запуск заключительной обработки запроса 565518 в узле PART4: 03-НОЯ-2011 10:37:15.
Ошибка заключительной обработки запроса 565518: 03-НОЯ-2011 10:37:15. Сообщение об ошибке:
One or more post-processing actions failed. Consult the OPP service log for details.
+—————————————+
Эта запись говорит о том, что по каким-то причинам не смог прицепиться шаблон отчета.
Иерархия организаций
Запрос для вывода иерархии организаций.
Список существующих иерархий можно увидеть в таблице hr.per_organization_structures.
SELECT LPAD(' ', 10 * (LEVEL - 1)) || org.name hierarchy, org.organization_id FROM hr_all_organization_units org, per_org_structure_elements pose WHERE 1 = 1 AND org.organization_id = pose.organization_id_child AND pose.org_structure_version_id = &p_structure_version_id -- START WITH org.organization_id = CONNECT BY PRIOR pose.organization_id_child = pose.organization_id_parent ORDER SIBLINGS BY org.location_id, pose.organization_id_child;
Информация о сотруднике
Запрос выводит информацию о сотруднике, основная таблица fnd_user.
SELECT u.user_id as user_id , u.user_name as user_name , pap.full_name as emp_name , pap.employee_number as emp_number , pj.name as job_name -- FROM fnd_user u , per_all_people_f pap , per_assignments_f paf , per_jobs pj WHERE 1=1 --and u.user_id = fnd_global.user_id and u.employee_id = pap.person_id(+) and sysdate between pap.effective_start_date(+) and pap.effective_end_date(+) -- per_assignments_f and paf.person_id (+) = pap.person_id and sysdate between paf.effective_start_date(+) and paf.effective_end_date(+) and paf.primary_flag(+) = 'Y' -- per_jobs and pj.job_id(+) = paf.job_id;
Замена N-ного символа в строке
Для замены N-ного символа в строке, можно обойтись и без SUBSTR — использовать REGEXP_REPLACE.
select regexp_replace('208010100000','.','X', 5, 1) as res from dual union all select regexp_replace('208010100000','.','X', 2, 1) as res from dual; RES ------------ 2080X0100000 2X8010100000
SVN Keywords
В TortoiseSVN есть удобная возможность использовать ключевые слова.
Например, указав в тексте $Id$, можно получить следующую строку:
«$Id: start_test.sh 1217 2011-10-27 13:26:02Z Ivanov $»
При желании, мы можем использовать данную возможность в объектах БД для отслеживания авторства и версионности. Все ключевые слова являются регистрозависимыми, вставляются в код следующим образом: $keyword$.
Date — описывает дату последнего изменения файла в репозитории
Revision – отображает ревизию последнего изменения файла в репозитории
Author – отображает автора последних изменений в репозитории
HeadURL – отображает URL на последнюю версию файла в репозитории
Id – предоставляет комбинированную информацию из предыдущих ключевых слов
Для активации keywords, заходим в конфигурационный файл:
— в разделе[miscellany] раскомментируем enable-auto-props = yes
— в разделе [auto-props] добавляем строку
*.* = svn:keywords=LastChangedDate LastChangedRevision LastChangedBy HeadURL Id Date Revision Author
После этого, все новые файлы будут учитывать ключевые слова при commit. Если же хотим добавить keywords для уже существующих файлов, то добавляем их через свойства TortoiseSVN для каждого файла.
Последние комментарии