Опубликован: 25.09.2009 | Уровень: специалист | Доступ: свободно
Дополнительный материал 1:

Справочник встроенных подпрограмм и функций ORACLE FORMS DEVELOPER

< Лекция 14 || Дополнительный материал 1: 12345678

INSERT_RECORD - вставка текущей записи в БД во время Post и Commit Transactions процесса.

Примечание: процедура актуальна только в ON-INSERT триггере.

ISSUE_ROLLBACK - при вызове из On-Rollback триггера инициирует процесс Form Buildera - откат до последней точки сохранения ( savepoint ).

Параметры:

  • savepoint name - имя точки сохранения ( savepoint ), до которой будет совершен откат. В случае, когда имя не указано, будет совершен полный откат.

ISSUE_SAVEPOINT - при вызове из On-Savepoint триггера инициирует процесс Form Buildera - установки точки сохранения (savepoint). Параметры: savepoint_name - имя точки сохранения.

ITEM_ENABLED - возвращает TRUE, если элемент меню активный, и FALSE, если неактивный.

Параметры:

  • mnunam - имя меню. Тип данных - Varchar2.
  • Itmnam - имя элемента. Тип данных - Varchar2.

LAST_RECORD - переходит на последнюю запись в списке блоков записей. Если в блоке открыт запрос, Forms вызывает оставшиеся выбранные записи в список блоков записей.

LIST_VALUES (NO_RESTRICT | RESTRICT) - выводит список значений для текущего поля. Список значений остается на экране до тех пор, пока оператор не нажмет [Exit/Cancel] или не выберет значение в поле. По умолчанию LIST_VALUES применяет параметр NO_RESTRICT, который заставляет Forms не использовать свойство автоматического поиска и завершения. Если вы установите параметр RESTRICT, Forms использует это свойство. Когда применяется автоматический поиск и завершение, список значений рассматривает текущее значение поля как значение поиска. Это значит, что если оператор нажмет [ List ] в поле, которое имеет список значений, Forms проверяет, содержит ли поле значение. Если поле содержит некоторое значение, Forms автоматически использует это значение так, как если бы оператор ввел это значение в поле поиска списка значений и нажал [ List ] для сужения списка. Если значение поля суживает список до одного значения, Forms не выдает та кой список, а автоматически считывает правильное значение в поле.

LOCK_RECORD - пытается заблокировать строку в БД, которая соответствует текущей записи.

LOGON_SCREEN - отображает стандартное окно подсоединения к БД Oracle Form Builder.

LOGOUT - отсоединиться от БД.

MESSAGE ('message') - выводит указанный текст в строке сообщений. Вы можете выводить сообщение длиной до 78 символов. Если нужно вывести знак апострофа в сообщении, вводите его дважды в этой строке.

MESSAGE_CODE - возвращает код сообщения, которое Form Builder сгенерировал в текущей Runform сессии.

MESSAGE_TEXT - возвращает текст сообщения, которое Form Builder сгенерировал в текущей Runform сессии.

MESSAGE_TYPE - возвращает тип сообщения, которое Form Builder сгенерировал в текущей Runform сессии.

NAME_IN (argument_reference), где argument_reference может быть любым видом ссылки на аргумент (включая другую косвенную ссылку), которая выражает имя поля или переменную, чье значение является строкой символов, удовлетворяющей требованиям аргумента.

NEW_FORM ( 'form' ) - завершает работу с текущей формой и входит в указанную форму. Вызывающая форма завершается как форма-родитель. Если вызывающая форма сама вызывалась из формы более высокого уровня, Forms сохраняет вызов более высокого уровня активным и трактует его как вызов новой формы. Forms освобождает память (типа курсоров БД), которая была занята завершенной формой. Forms запускает новую форму с теми же опциями SQL*Forms(Run Form), что и форма-родитель. Если форма-родитель сама была вызываемой, Forms запускает новую форму с теми же параметрами (например, HIDE и NO_REPLACE ), что и у формы-родителя.

NEXT_BLOCK - перейти к следующему блоку.

NEXT_FORM - перейти к следующей форме.

NEXT_ITEM - перейти к следующему элементу.

NEXT_KEY - передает управление на вводимое поле первичного ключа со следующим последовательным номером, большим номера текущего поля. Если такого поля нет, NEXT_KEY передает управление на вводимое поле первичного ключа с минимальным последовательным номером. Если нет поля первичного ключа в текущем блоке, возникает ошибка. Если модулем проверки является поле, NEXT_KEY тестирует все поля с последовательными номерами, большими, чем у текущего поля, или меньшими, чем у заданного поля.

NEXT_MENU_ITEM - перейти к следующему элементу меню.

NEXT_RECORD - перейти к следующей записи.

NEXT_SET - вызывает другую группу записей из БД и передает управление на первую вызванную запись. NEXT_SET успешно выполняется только тогда, когда запрос открыт на текущем блоке.

PASTE_REGION - вставляет данные из буфера. Действует только для элементов текста и картинок.

PAUSE - приостанавливает работу до тех пор, пока оператор не нажмет любую функциональную клавишу. pause может выводить предупреждающее сообщение.

PLAY_SOUND - проигрывает звук в указанном элементе звука.

POPULATE_GROUP - извлекает запрос, ассоциированный с указанной группой записей, и возвращает числовой индикатор выполнения запроса. При успешном запросе POPULATE_GROUP возвращает "0" . В случае невыполнения запроса генерируется ошибка. Ячейки, возвращенные как результат запроса, заменяют существующие, если таковые есть.

Параметры:

  • recordgroup_id - уникальный идентификатор, который Forms Builder связывает с группой записи при создании. Функция поиска идентификатора - FIND_RECORD_GROUP. Тип данных идентификатора - RECORDGROUP группы записей. Или берется имя группы записей, тогда тип данных - VARCHAR2.
  • group_name - определяет имя группы записей. Тип данных - Varchar2.

POPULATE_GROUP_FROM_TREE - формирует группу из данных иерархического дерева.

Параметры:

  • group_name - определяет имя группы.
  • group_id - определяет идентификатор, связанный с группой.
  • item_name - специфицирует имя объекта, данное ему на этапе проектирования. Тип данных - VARCHAR2.
  • Item_id - уникальный идентификатор, который Forms Builder связывает с элементом при создании. Функция поиска идентификатора - FIND_ITEM.
  • Node - определяет существующий узел. Если определен, то используется для заполнения группы, включая указанный узел.

POPULATE_GROUP_WITH_QUERY - формирует группу из указанного запроса.

Параметры:

  • recordgroup_id - уникальный идентификатор, который Forms Builder связывает с группой записи при создании. Функция поиска идентификатора - FIND_RECORD_GROUP. Тип данных идентификатора - RECORDGROUP группы записей. Или берется имя группы записей, тогда тип данных - VARCHAR2.
  • group_name - определяет имя группы записей. Тип данных - Varchar2.
  • query - в качестве этого параметра вы указываете запрос, который будет формировать вашу группу. Любые результирующие столбцы, возвращенные этим запросом, получают такой же тип, как и в таблице БД. Тип данных запроса - VARCHAR2.

POPULATE_LIST - очищает список от текущих элементов и заполняет его данными из группы записей. Такая группа должна быть создана в режиме выполнения формы (Runtime) и содержать не менее двух столбцов ( VARCHAR2 ) следующей структуры:

Column 1(столбец 1): Column 2(столбец 2):
the list label (метка листа) the list value (значение элемента)

POPULATE_TREE - заполняет иерархическое дерево данными из группы записей либо иерархического запроса, удаляя при этом существующие данные, если таковые есть.

Параметры:

  • item_name - специфицирует имя объекта, данное ему на этапе проектирования. Тип данных - VARCHAR2.
  • Item_id - уникальный идентификатор, который Forms Builder связывает с элементом при создании. Функция поиска идентификатора - FIND_ITEM.

POST - записывает данные из формы в БД, но не выполняет операции commit в БД. Forms вначале проверяет форму. Если существуют изменения, которые нужно записать в БД, то для каждого блока в форме Forms записывает удаления, вставки и корректировки в БД. Любые данные, которые вы записываете в БД, сохраняются в ней по следующей процедуре COMMIT_FORM, которая выполняется во время текущей сессии Forms (Run Form). Иначе эти данные отвергаются по следующей процедуре CLEAR_FORM.

  • PREVIOUS_BLOCK - вернуться к предыдущему блоку.
  • PREVIOUS_FIELD - вернуться к предыдущей записи.
  • PREVIOUS_RECORD - переходит на запись с максимальным последовательным номером, меньшим, чем номер текущей записи.
  • PREVIOUS_FORM - вернуться к предыдущей форме.
  • PREVIOUS_ITEM - вернуться к предыдущему элементу.
  • PREVIOUS_MENU - возвращает в предыдущее меню.
  • PREVIOUS_MENU_ITEM - возвращает к предыдущему элементу меню.
  • PRINT - записывает одну или все страницы формы в файл или выводит на печать. Forms запрашивает у оператора пометку страниц для записи, имя файла, куда записывать, и нужно ли посылать файл на системный принтер.

PTR_TO_VAR - First, creates an OLE variant of type VT_PTR that contains the supplied address. Then, passes that variant and type through the function VARPTR_TO_VAR.

QUERY_PARAMETER - отображает диалог Query Parameter (параметр запроса). Этот диалог показывает текущие значения определенных параметров. Конечный пользователь может устанавливать значение параметра, указанного в списке. Query Parameter (параметр запроса) - диалог модальный, и управление после подтверждения или отмены диалога не передается обратно в вызывающий триггер или процедуру.

Параметры:

  • parameter_string - определяет строку параметров для элементов меню. Синтаксис для указанной строки параметров объявляется с амперсандом : " &param_name ". Параметры, использующиеся в PL/ SQL, объявляются как связные переменные (bind variables) : " :param.name ".

READ_IMAGE_FILE - читает картинку из файла указанного типа и отображает в Form Builder в элементе картинка ( image item ).

Параметры:

  • file_name - имя существующего файла. Имя файла должно содержать полный путь к нему.
  • file_type - существующий файл картинки типа: BMP, CALS, GIF, JFIF, JPG, PICT, RAS, TIFF или TPIC.
  • item_name - специфицирует имя объекта, данное ему на этапе проектирования. Тип данных - VARCHAR2.
  • Item_id - уникальный идентификатор, который Forms Builder связывает с элементом при создании. Функция поиска идентификатора - FIND_ITEM.

READ_SOUND_FILE - проигрывает звуковой объект из указанного файла в указанном элементе звука.

Параметры:

  • file_name - указание полного имени и пути к проигрываемому файлу.
  • file_type - тип звукового файла: AU, AIFF, AIFF-C и WAVE.
  • item_name - специфицирует имя объекта, данное ему на этапе проектирования. Тип данных - VARCHAR2.
  • Item_id - уникальный идентификатор, который Forms Builder связывает с элементом при создании. Функция поиска идентификатора - FIND_ITEM.

RECALCULATE - отмечает значение в указанном вычисляемом элементе для пересчета.

Параметры:

  • item_name - специфицирует имя объекта, данное ему на этапе проектирования. Тип данных - VARCHAR2.
  • Item_id - уникальный идентификатор, который Forms Builder связывает с элементом при создании. Функция поиска идентификатора - FIND_ITEM.

REDISPLAY - перерисовывает экран. Это уничтожает все посторонние системные сообщения.

RELEASE_OBJ (obj OLEOBJ, kill_persistence_boolean := NULL) - закрывает соединение с OLE-объектом.

REPLACE_CONTENT_VIEW - программно замещает текущий вид отображения окна.

Параметры:

  • window_id - уникальный идентификатор, который Forms Builder связывает с окном при создании. Функция поиска идентификатора - FIND_WINDOW.
  • window_name - имя окна, заданное на этапе проектирования. view_id - уникальный идентификатор, который Forms Builder связывает с вид-картинкой ( Canvas ) при создании.
  • view_name - имя вид-картинки ( Canvas ), присвоенное ей при создании. Тип данных - VARCHAR2.

REPLACE_MENU ( 'menu_application' [ , menu_type [ , 'starting_menu' [ , 'group_name' ] ] ) - заменяет текущее меню на указанное меню. Эта процедура выводит новое меню на экран, но не делает это новое меню активным. REPLACE_MENU также позволяет вам изменить порядок вывода меню и группу защиты, которую использует при определении, какие опции меню выводить. Т. к. REPLACE_MENU не делает новое меню активным, Forms не разрешает меню закрывать любую часть активной страницы. Поэтому все меню или его часть не появляются на экране, если этот экран занимает активная страница.

Параметры:

  • menu_application - определяет приложение SQL*Menu, которое заменит текущее приложение меню. Этот параметр заменяет приложение, определенное в характеристике формы Default Menu Application. menu_type { BAR |FULL_SCREEN |PULL_DOWN} - определяет тип вывода меню. Этот параметр заменяет тип меню по умолчанию ( PULL_DOWN ). Если вы не укажете тип меню, Forms будет использовать тип PULL_DOWN.
  • starting_menu_name - определяет меню в приложении меню, которое Forms будет использовать как начальное меню. Этот параметр заменяет меню, указанное в характеристике формы Starting Menu Name. Если вы не укажете начальное меню, будет использоваться меню с тем же именем, что и приложение меню.
  • group_name - определяет группу защиты, которое Menu будет использовать. Этот параметр заменяет характеристику формы Menu Security Group. Если вы не укажете имя группы, то меню использует текущее имя пользователя для определения группы.

REPORT_OBJECT_STATUS - проверяет статус объекта отчета, запущенного из формы функцией RUN_REPORT_OBJECT.

Параметры:

  • report_id - значение типа Varchar2, возвращаемое функцией RUN_ REPORT_OBJECT. Это значение уникально идентифицирует текущий запущенный отчет локально либо в report server (сервер отчетов).

RESET_GROUP_SELECTION - снимает выделение, если таковое есть, в указанной группе.

Параметры:

  • recordgroup_id - уникальный идентификатор, который Forms Builder связывает с группой записи при создании. Функция поиска идентификатора - FIND_RECORD_GROUP. Тип данных идентификатора - RECORDGROUP группы записей. Или берется имя группы записей, тогда тип данных - VARCHAR2.
  • group_name - определяет имя группы записей. Тип данных - Varchar2.

RESIZE_WINDOW - изменяет размеры (ширину и высоту) указанного окна.

Параметры:

  • window_id - уникальный идентификатор, который Forms Builder связывает с окном при создании. Функция поиска идентификатора - FIND_WINDOW.
  • window_name - имя окна, заданное на этапе проектирования. Width - определяет ширину окна. Height - определяет высоту окна.

RETRIEVE_LIST - процедура создания так называемого "снимка" элемента списка с самого себя.

Параметры:

  • ITEM_NAME - этот параметр принимает имя списка, из которого мы собираемся извлекать содержимое.
  • RECGRP_ID - этот параметр принимает имя группы записей, в которую мы будем извлекать содержимое.
    Примечание: в этом случае условие извлечения содержимого элемента списка в группу записей такое же, как и при заполнении списка из Группы записей, то есть необходимо существование двух символьных столбцов для заполнения данных списка и их значений.

RUN_PRODUCT

Run_Product(REPORTS, '/opt/MFORM/himanaliz/PH', SYNCHRONOUS, RUNTIME, FILESYSTEM, pl_id, NULL) ;

Параметры:

  • REPORTS - имя запускаемого продукта, это может быть и Graphics.
  • '/opt/MFORM/himanaliz/PH' - путь к вашему отчету.
  • SYNCHRONOUS ( ASYNCHRONOUS ) - режим запуска, запустить Reports синхронно или асинхронно.
  • RUNTIME - режим запуска.
  • FILESYSTEM - место размещения.
  • pl_id - список параметров, если их нет, можно написать null.
  • NULL ( Display ) - режим отображения.

RUN_REPORT_OBJECT - запускает объект-отчет.

< Лекция 14 || Дополнительный материал 1: 12345678
Константин Лукин
Константин Лукин

ошибка: FRM47337  Tree node label can not be null

при выполнении скрипта

DECLARE
 Itree ITEM;
 top_node Ftree.Node;
 new_node Ftree.Node;
 i_value VARCHAR2(30);
BEGIN
 Itree := Find_Item('tree_block.tree_item ');
 new_node := Ftree.Add_Tree_Node(Itree, Ftree.ROOT_NODE,
   Ftree.PARENT_OFFSET, Ftree.LAST_CHILD,
   Ftree.EXPANDED_NODE, i_value, NULL, i_value);
END;

Юлия Малыгина
Юлия Малыгина
приведена функция скрытия URL отчета и ее применение, но применения так и нет
Жанбек Сарсенов
Жанбек Сарсенов
Россия, Москва, Московский Государственный Университет имени Ломоносова М.В., 2002