Пропустить навигацию.
Главная
Разработчикам Oracle Applications

Инструкция по созданию пользовательских приложений в Oracle Applications. Часть 2.

Перевод инструкции по интеграции пользовательских приложений с Oracle Applications.

Продолжение. Начало см. в статье "Инструкция по созданию пользовательских приложений в Oracle Applications. Часть 1."

  1. Постройте ваши пользовательские формы, меню и библиотеки как пользователь APPLMGR. Используйте шаблон формы TEMPLATE, расположенный в папке $AU_TOP/forms/RU как отправную точку для вашей разаработки пользовательской формы. Следуйте шагам разработки форм (которые включают стандарты разработки), они описаны в Oracle Application Developers Guide. После требуемой модификации формы, переместите сгенерированную форму в соответствующую папку, зарегистрируйте форму с помощью Oracle Application Object Library и затем добавьте ее в меню.
    Следующий пример подразумевает, что вы делаете разработку для forms server. Если форма была создана на клиенте Windows обратитесь к статье: 73880.1

    a. Сделайте копию формы TEMPLATE и затем переименуйте ее как пользователь APPLMGR.

    Например:

    $ cd $AU_TOP/forms/US
    $ cp TEMPLATE.frm test.frm

    b. В построителе форм присоедините любые дополнительные библиотеки к вашей форме. Форма TEMPLATE уже имеет прикрепленные библиотеки APPCORE, APPDAYPK, FNDSQF, GLOBE и CUSTOM. Вы можете модифицировать только библиотеку Oracle Applications CUSTOM. Все библиотеки должны присутствовать в папке $AU_TOP/resource, убедитесь что параметр FORM45_PATH включает пути $AU_TOP/resource, так чтобы ваша форма могла найти библиотеки, $AU_TOP/forms/US - для поиска форм, $AU_TOP/plsql и $ORACLE_HOME/forms45.

    c. Модифицируйте форму как требуют стандарты разработки. Вы можете устанавливать свойства контейнера и объектов виджетов, создавать window
    layout, кодировать обработчики таблиц, обработчики элементов, обработчики событий и логику, поведение запросов, кодировать сообщения, добавлять логику для гибких полей и кодировать другую необходимую логику.

    Дополнительные сведения находятся в "Oracle Applications Developers Guide Release 11" стр 1-16.

    d. Сгенерируйте форму на сервере форм как пользователь APPLMGR. Убедитесь, что параметр окружения $FORMS45_PATH установлен и текущая директория - $AU_TOP/forms/ru.

    f45gen userid=apps/appspwd module=<form name>.fmb
    output_file=<schema_top>/forms/<language>/<form name>.fmx
    module_type=form batch=no compile_all=special

    Например:

    $ f45gen userid=apps/apps module=TEMP.fmb
    output_file=/appl/v1100000/XXCUS/forms/US/TEMP.fmx
    module_type=form batch=no compile_all=special

    где form name=TEMP,schema_top=/appl/v1100000/XXCUS и language=US

    e. Протестируйте саму форму. Создайте либо статический html файл, который вызывает вашу форму напрямую (вместо обычной формы авторизации) либо динамический файл html и картридж.

    f. Зарегистрируйте вашу форму. Войдите в Applications с полномочиями "Разработчик приложений" и откройте окно: Приложение --> Форма.

    Например:

    Регистрация формы в Oracle Applications

    Дополнительные сведения находятся в "Oracle Applications Developers Guide Release 11" стр. 11-20.

    g. Зарегистрируйте функцию формы. Если необходимо, зарегистрируйте подфункции для каждой функциональности, которая вам требуется. Войдите в Applications с полномочиями "Разработчик приложений" и откройте окно:
    Приложение --> Функция.
    Кликните на закладке "Описание".

    Например:

    Регистрация функции формы в Oracle Applications

    Теперь кликните на закладке "Форма".

    Регистрация функции формы в Oracle Applications

    Регистрация функции формы в Oracle Applications Внимание: Поле Приложение будет недоступно для ввода. Оно автоматически заполнится после того, как вы введите наименование формы в поле Form.

    Дополнительные сведения находятся в "Oracle Applications Developers Guide Release 11" стр. 11-22

    h. Добавьте ваши пользовательские функции (формы и подфункции) в существующее меню или создайте новое. Меню будет привязано к полномочию. Войдите в Applications с полномочием "Разработчик Приложений" и откройте окно:
    Приложение --> Меню.

    Например:

    Добавляем функцию в меню Oracle Applications

    Дополнительные сведения находятся в "Oracle Applications Developers Guide Release 11" стр. 11-26.

    i. Создайте свою группу запросов, которая будет содержать ваши пользовательские и/или стандартные запросы для вашего полномочия. Войдите в Oracle Applications с полномочиями "Системный администратор" и откройте окно: Защита --> Полномочия --> Запрос.

    Например:

    Создаем группу запросов

    Дополнительные сведения находятся в "Oracle Applications Release 11 System Administrator's Guide" стр. 6-46.

    j) Создайте пользовательские полномочия для вашей схемы. Войдите в Oracle Applications с полномочиями "Системный администратор" и откройте окно:
    Защита --> Полномочия --> Определить. Проверьте, что полномочия назначены пользователю.

    Например:

    Создаем полномочия Oracle Applications

    Дополнительные сведения находятся в "Oracle Applications Release 11 System Administrator's Guide" стр. 2-9.

    k. Протестируйте форму в Applications.

  2. Создайте свой словарь сообщений.

    a. Убедитесь, что у вас есть папка для сообщений (mesg) в корне вашего приложения.

    b. Определите ваши сообщения следуя стандартам сообщений. Войдите с полномочием "Разработчик приложений" и откройте окно: Приложение --> Сообщения.

    Например:

    Создаем словарь сообщений

    c. Создайте файлы сообщений. Из операционной системы запустите генератор словаря сообщений (Message Dictionary Generator program) (FNDMDGEN) как пользователь APPLMGR.

    FNDMDGEN apps/appspword 0 Y <Language> <Application Short Name> DB_TO_RUNTIME
    Например:

    $ FNDMDGEN apps/apps 0 Y US XXCUS DB_TO_RUNTIME

    где Language=US и Application Short Name=XXCUS

    Программа FNDMDGEN сгенерирует файл сообщений с названием <Language>.msb. Поместите его в папку mesg корневой директории вашего приложения.

    d. Если необходимо создать копию сгенерированного файла (размещенного на сервере) и переместите копию в соответствующую директорию сообщений приложения на клиентской системе.

    e. Напишите код, чтобы обеспечить установки сообщений. Вы будете использовать вызовы пакета FND_MESSAGE чтобы извлечь для отображения на экране сообщений.

    f. Напишите код для отображения сообщений. Вы будете либо отображать сообщения пользователю на стороне клиента, либо писать их в файл на сервере.
    Вы будете использовать вызовы пакета FND_MESSAGE для отображения сообщений.

    Дополнительные сведения находятся в "Oracle Applications Developers Guide Release 11" стр. 12-2.

  3. Установите параллельное выполнение программ для вашей пользовательской схемы.

    a. Напишите исполняемый файл параллельной программы и поместите ее в соответствующую директорию. Вы можете использовать различные методы, такие, как C, Pro*C, SQL*Plus, PL/SQL, Oracle Reports или язык операционной системы (скрипт).

    b. Определите исполняемую параллельную программу с помощью Oracle Application Object Library. Это связывает исполняемый файл и метод, используемый для его выполнения с определенной параллельной программой. Войдите в Oracle Applications с полномочиями "Системный администратор" и откройте окно: Параллельные --> Программа --> Исполняемый файл.

    Например:

    Регистрируем исполняемый файл Oracle Applications

    c. Зарегистрируйте параллелную программу с помощью Oracle Application Object Library
    со всеми параметрами программы и другими опциями. Войдите в Oracle Applications с полномочиями "Системный администратор"и откройте окно:
    Параллельные --> Программа --> Определить.

    Например:

    Регистрируем параллельную программу Oracle Applications

    d. Добавьте функциональность запроса для вашей параллельной программы. Программа может быть вызвана из формы запуска отчета, из триггера формы приложения или из программы Pro*C. Чтобы использовать форму запуска отчета, достаточно добавить окно отправки запроса в ваше пользовательское меню так, чтобы вы имели доступ к стандартному интерфейсу отправления запросов Standard Request Submission interface (SRS).

    Дополнительные сведения находятся в "Oracle Applications Developers Guide Release 11" стр. 15-2.


Warning: INSERT command denied to user 'appsdev_base'@'82.197.131.12' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '<em>INSERT command denied to user &amp;#039;appsdev_base&amp;#039;@&amp;#039;82.197.131.12&amp;#039; for table &amp;#039;accesslog&amp;#039;\nquery: INSERT INTO accesslog (title, path, url, hostname, uid, sid, timer, timestamp) values(&amp;#039;Инструкция по созданию пользовательских приложений в Oracle Applications. Часть 2.&amp;#039;, &amp;#039;node/49&amp;#039;, &amp;#039;&amp;#039;, &amp;#039;38.103.63.56&amp;#039;, 0, &amp;#039;6d5e4ecab4276294a400b1a86840f62f&amp;#039;, 429, 1231299698)</em> в файле <em>/home/www/appsdev.com.ua/includes/database.mysql.inc</em> в строке <em>172</em>.', 2, &# in /home/www/appsdev.com.ua/includes/database.mysql.inc on line 172

Warning: INSERT command denied to user 'appsdev_base'@'82.197.131.12' for table 'watchdog' query: INSERT INTO watchdog (uid, type, message, severity, link, location, referer, hostname, timestamp) VALUES (0, 'php', '<em>INSERT command denied to user &amp;#039;appsdev_base&amp;#039;@&amp;#039;82.197.131.12&amp;#039; for table &amp;#039;sessions&amp;#039;\nquery: INSERT INTO sessions (sid, uid, cache, hostname, session, timestamp) VALUES (&amp;#039;6d5e4ecab4276294a400b1a86840f62f&amp;#039;, 0, 0, &amp;#039;38.103.63.56&amp;#039;, &amp;#039;messages|a:1:{s:5:\\&amp;quot;error\\&amp;quot;;a:1:{i:0;s:563:\\&amp;quot;user warning: INSERT command denied to user &amp;amp;#039;appsdev_base&amp;amp;#039;@&amp;amp;#039;82.197.131.12&amp;amp;#039; for table &amp;amp;#039;accesslog&amp;amp;#039;\\nquery: INSERT INTO accesslog (title, path, url, hostname, uid, sid, timer, timestamp) values(&amp;amp; in /home/www/appsdev.com.ua/includes/database.mysql.inc on line 172