|
Глава 22
О г р а н и ч е н и я ц е л о с т н о с т и
В этой главе рассматриваются ограничения целостности, принятые в SQL*Forms.
Представлены следующие темы:
- ограничения целостности для объекта
- ограничения целостности для курсора
- ограничения целостности для 16-битовой среды
Замечания: Ограничения целостности для памяти индивидуальны для
каждой машины и не рассматриваются в данном руководстве. Чтобы получить
информацию по ограничениям целостности для памяти, обратитесь к
инсталляции ORACLE и руководству пользователя.
Ограничения целостности для объекта
В данной главе представлены ограничения целостности,
применяемые для объектов SQL*Forms и любых других
элементов, относящихся к этим объектам.
Элемент Ограничени целостности/Замечания
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
ссылок на 255 ссылок
поле базы Это ограничение целостности относятся к
данных ссылкам числовых связей или определенных
в форме переменных на поля в операторе SQL.
полей 255 полей
в блоке Это ограничение целостности относятся
только к SQL*Forms (Проект) или SQL*Forms (Преобразования).
контроль 8190 проверок
границ Это ограничение относится к числу полей
в форме в форме, для которых определяется допустимый
контроль поля.
ширина 255 символов
поля Это ограничение относится к длине любого поля, кроме полей
с типом данных LONG. Длина полей LONG должна быть не
более 65,536 символов.
блоков 255 блоков
в форме Это ограничение целостности относятся только к SQL*Forms
(Проект) или SQL*Forms (Преобразования).
триггеров 4095 триггеров
в форме
шагов 8190 шагов триггера
триггера
в форме
страниц 8190 страниц
-- 224 --
ширина 255 символов
страниц
ширина 255 символов
глобальной
переменной
число 10922 строк
строк в форме
Ограничения целостности курсора
Курсор базы данных - это память, присваимая ORACLE RDBMS SQL команде. Он
используется в SQL командах, которые являются неявными по отношению к
передаче информации и запросу данных и по отношению к SQL командам, которые
являются явными в триггерах. SQL*Forms контролирует присвоение курсора
для всех неявных и явных SQL команд в триггерах V2.
В следующей таблице представлены ограничения целостности для курсоров базы
данных.
Элемент Ограничения целостности/Замечания
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
открытые Величину параметра OPEN_CURSORS вы можете
курсоры найти в файле INT.ORA
(максимум)
открытые - 5 в ORACLE
курсоры - 4 в блоке (1 для SELECT, 2 для UPDATE,
(минимум) 1 для INSERT и 1 для DELETE). Это ограничение использует-
ся при обычных условиях, но можно изменить номер курсоров,
изменив форму Set Options с помощью переключателей
командной строки.
- 1 или 0 в шаге триггера (1 для любого оператора SQL).
Это ограничение используется при обычных условиях,
но можно изменить номер курсоров, изменив форму Set
Options с помощью переключателей командной строки.
Аналоги: Характеристика шага триггера New Cursor Area
o-переключатель, SQL*Forms (Текущая форма совместные курсоры
для неявной текущей опции SQL совместные курсоры для триггера
текущей опции SQL t-переключатель,и SQL*Forms (Текущая форма
Ограничения целостности в 16-битовой среде
В 16-битовой среде 65,535 байтов - это предельное числом строк данных, что
является наибольшим количеством памяти, которое может быть выделено. В
них входит следующее:
- имя поля
- имя и шаг триггера
- вспомогательные сообщения
- сообщения об ошибках триггера
- имя блока
- названия таблицы базы данных и названия столбцов для блоков и полей
- величины, используемые по умолчанию
- постоянный текст
-- 225 --
Ч а с т ь 5 К О М П О Н Е Н Т Ы И П Р О Д У К Т Ы
Глава 23 К о м п о н е н т ы
В этой главе рассматриваются компоненты, составляющие SQL*Forms. Это
следующие компоненты:
- SQL*Forms (Преобразования)
- SQL*Forms (Проектирование)
- SQL*Forms (Генерирование)
- SQL*Forms (Текущая форма)
В качестве дизайнера, вы чаще всего используете SQL*Forms
(Проектирование), из которой вы получаете доступ к другим компонентам.
Однако, иногда бывает удобнее запускать другие компоненты прямо из
командной строки.
В этой главе также представлены признак автоматического входа ORACLE.
признак дистанционного входа и командные переключатели SQL*Forms.
Аналоги: Форматы памяти форм
Автоматический вход
Признак автоматического входа позволяет вам входить в продукты ORACLE
без явного задания имени пользователя и пароля. Когда вы входите таким
образом, ORACLE использует OPS$ ID, чтобы связать ваше имя пользователя в
ORACLE с вашей операционной системой User ID.
Вы можете использовать признак автоматического входа со всеми SQL*Forms
компонентами. Обратитесь к ORACLE Database Administrator's Guide за
информацией об использовании этого признака.
Дистанционный вход
С помощью SQL*Net вы можете специфицировать дистанционную базу
данных, входя в любую компоненту SQL*Forms. Когда вы используете признак
дистанционного входа, удаленная база данных "прозрачна" для вас -
SQL*Forms ведет себя сходным образом, когда обращается к узлу через
периферию или обращается к базе данных вашей локальной машины.
Чтобы определить удаленную базу данных из командной строки, поставьте
после пароля имя драйвера и имя узла, используя следующий синтаксис:
: node_name
где:
driver_name Указывает на драйвер, к которому вы хотите обратиться в
удаленной базе данных. Установка принятия значений по
умолчанию зависит от конкретной системы.
node_name Указывает на удаленный узел сети содержащий целевую базу
данных. Вы войдете в базу данных по умолчанию в данном узле.
Например, вы можете определить следующую команду для выполнения формы
ORDER_ENTRY в базе данных по умолчанию в узле LONDON:
RUNFORM ORDER_ENTRY SCOTT/TIGER@D:LONDON
-- 226 --
Если вы хотите определить удаленную базу данных из входного экрана
SQL*Forms, то необходимо поставить имя драйвера и имя узла после вашего
имени пользователя. (например, SCOTT@D:LONDON).
За информацией по SQL*Net обратитесь к SQL*Net User's Guide.
Замечание: Чтобы выполнить дистанционный вход, вам необходимо незабывать
об удаленном компьютерном узле, где находится целевая база данных.
SQL*Forms (Проектирование)
SQL*Forms (Преобразования) создает INP файл из формы в формате базы данных
или создает форму в формате базы данных из INP файла. После преобразований
оба экземпляра формы существуют (несмотря на то, что вы специфицировали
d-переключатель, уничтожающий форму в базе данных).
Используйте SQL*Forms (Преобразования) следующим образом:
- Создайте форму в формате базы данных из INP файла, который был
генерирован с с помощью другой версии SQL*Forms.
- Создайте INP файл из формы в формате базы данных.
- Создайте INP файл в версии формата 3.0 из INP файла в версиях формата
2.0 или 2.3.
Аналоги: Форматы памяти форм
INP в Вы можете создать форму в формате базы данных из INP
преобра- файла двумя способами:
зовании
базы данных - Из командной строки, используя команду CONVERT,
определяя i-переключатель, имя INP файла и имя формы. Например,
чтобы создать форму SAMPLE2 из файла SAMPLE1.INP, введите
следующую команду:
CONVERT - 1 SAMPLE 1 SAMPLE 2 [username/password]
- Из SQL*Forms (Проект), выберите опцию Load из меню Action и
определите INP файл, который вы хотите преобразовать в
диалоговом блоке Load Form. затем сохраните форму в базе данных
посредством опции Save в меню Action.
База данных Вы можете создать INP файл из формы в формате базы
в преобра- данных двумя способами:
зовании INP
- Из командной строки, используя команду CONVERT, определяя имя INP
файла и имя формы. Например, чтобы создать файл SAMPLE3.INP из формы
SAMPLE2, введите следующую команду:
CONVERT SAMPLE3 SAMPLE2 [username/password]
- Из SQL*Forms (Проект), выберите опцию Generate из меню Action и определите
форму, которую вы хотите преобразовать в диалоговом блоке Generate Form.
Помните, что зта процедура также создает FRM файл, который является
первичным.
-- 227 --
INP в INP Вы можете создать INP файл в версии формата 3.0 из INP
преобра- файла версии формата 2.0 или 2.3. Из командной строки,
зованиях используя команду CONVERT, определяя v-переключатель и имя INP
файла. Например, чтобы создать новую версию 3.0 INP файла из вер-
сии 2.3 INP файла, называемого OLD.INP, введите следующую команду:
CONVERT - v23 OLD [username/password]
Команды Команда CONVERT вызывает SQL*Forms (Преобразования) из
преобра- командной строки. Чтобы использовать эту команду,
зований введите в системном вопросе следующий оператор:
CONVERT [option option...] inp_filename formname
[username/password]
где:
option Определяет любой переключатель командной строки, который
вы хотите активизировать для данного сеанса
SQL*Forms (Преобразования).
Для SQL*Forms (Преобразования) необходимо использовать
следующие переключатели командной строки: -c, -d,
-i, -s и -v-переключатели.
inp_filename Определяет имя для INP файла, который вы хотите создать
или преобразовать без суффикса .INP.
formname Определяет имя формы, которую вы хотите преобразовать или
создать.
username/ Определяет выше имя пользователя в ORACLE
password и пароль.
Если вы не определили ваше имя пользователя и пароль в системном
вопросе, SQL*Forms использует для автоматического входа OPS$ ID. Если
SQL*Forms не может найти OPS$ ID, то возникает сообщение об ошибке.
Вы можете вводить CONVERT ? в вопрос операционной системы, чтобы
получить помощь.
Аналоги: Переключатели командной строки, SQL*Forms (Преобразования)
SQL*Forms (Проектирование)
SQL*Forms (Проектирование) создает или модифицирует форму в базе данных.
SQL*Forms (Проектирование) является основной компонентой
SQL*Forms, которая может вызывать остальные три компоненты SQL*Forms.
Аналоги: Форматы памяти форм
Команда Команда SQLFORMS вызывает SQL*Forms (Проектирование) из
SQLFORMS командной строки. Чтобы использовать эту команду,
введите следующий оператор в системный вопрос:
SQLFORMS [option option...] [formname] [username/ password]
-- 228 --
где:
option Определяет любой переключатель командной строки, который вы
хотите активизировать для данного сеанса SQL*Forms
(Преобразования).
Для SQL*Forms (Преобразования) необходимо использовать
следующие переключатели командной строки: -c, -e, -i, -l,
r-, s- и -w-переключатели.
formname Определяет имя формы, которую вы хотите преобразовать или
создать.
username/ Определяет выше имя пользователя в ORACLE
password и пароль.
Если вы не определили ваше имя пользователя и пароль в системном
вопросе, SQL*Forms использует для автоматического входа OPS$ ID.
Если SQL*Forms не может найти OPS$ ID, то возникает сообщение об ошибке.
Вы можете вводить CONVERT ? в вопрос операционной системы, чтобы получить
помощь.
Аналоги: Переключатели командной строки, SQL*Forms (Преобразования)
SQL*Forms (Генерирование)
SQL*Forms (Генерирование) создает FRM файл. Она также может создавать или
модифицировать INP файл, в зависимости от того, существует ли он
уже и от определяемой вами опции командной строки:
Вы можете создавать FRM файл двумя способами:
- Из командной строки, используя команду GENERATE, определяя имя
INP файла, который вы хотите преобразовать (для создания еще рано,
поскольку он еще не существует). Например, чтобы создать FRM файл из
файла SAMPLE.INP, необходимо ввести следующую команду:
GENERATE SAMPLE1 [username/password]
- Из SQL*Forms (Проектирование), выбрав опцию GENERATE из меню Action и
определив фINP файл в диалоговом блоке Generate Form. Этот INP файл
может быть файлом, из которого вы хотите провести генерирование или
файл, который вы хотите создать, если он еще не существует.
Аналоги: Форматы памяти форм
Команда Команда GENERATE вызывает SQL*Forms (Генерирование) из
генериро- командной строки. Чтобы использовать эту команду,
вания необходимо ввести следующий оператор в системный вопрос:
GENERATE [option option...] inp_filename [username/ password]
где:
option Определяет любой переключатель командной строки, который вы
хотите активизировать для данного сеанса SQL*Forms
-- 229 --
(Преобразования). Для SQL*Forms (Проектирование) необходимо
использовать следующие переключатели командной строки:
-b, -n, -o, -s и -t-переключатели.
inp_filename Определяет имя для INP файла, который вы хотите создать или
преобразовать без cуффикса .INP.
username/ Определяет ваше имя пользователя в ORACLE
password и пароль. Помните, что вы должны определить имя
пользователя и пароль в командной строке.
Вы можете вводить CONVERT ? в вопрос операционной системы, чтобы
получить помощь.
Аналоги: Переключатели командной строки, SQL*Forms (Генерирование)
SQL*Forms (Текущая форма)
SQL*Forms (Текущая форма) считывает FRM файл и выполняет
форму. Эта компонента применяется для проверки формы и
операторов, используемых для выполнения прикладных
программ.
Вы можете выполнять форму двумя способами:
- Из командной строки, используя команду RUNFORM, определяя имя
формы, которую вы хотите выполнить. Например, чтобы выполнить форму
SAMPLE.4 необходимо ввести следующую команду:
RUNFORM SAMPLE4 [username/password]
- Из SQL*Forms (Проектирование), выбрав опцию EXECUTE из меню Action и
определив имя формы, которую вы хотите выполнить в диалоговом блоке
Execute Form.
Аналоги: Форматы памяти форм
Команда Команда RUNFORM вызывает SQL*Forms (Текущая форма)
RUNFORM из командной строки. Чтобы использовать эту команду,
вания необходимо ввести следующий оператор в системный вопрос:
RUNFORM [option option...] inp_filename [username/ password]
где:
option Определяет любой переключатель командной строки, который вы
хотите активизировать для данного сеанса SQL*Forms
(Преобразования).
Необходимо использовать следующие переключатели
командной строки: -a,-b, -c, -d, -e, -i, -l, -m, -n, -o,
-q, -r, -s, -t, и -w-переключатели.
formname Определяет имя для формы, которую вы хотите выполнить.
username/ Определяет выше имя пользователя в ORACLE
password и пароль.
-- 230 --
Если вы не определили ваше имя пользователя и пароль в системном вопросе,
SQL*Forms использует для автоматического входа OPS$ ID. Если SQL*Forms не
может найти OPS$ ID, то вам предлагается ввести имя пользователя и пароль.
Вы можете вводить RUNFORM ? в вопрос операционной системы, чтобы
получить помощь.
Аналоги: Переключатели командной строки, SQL*Forms (Генерирование)
Командные переключатели строк
Переключатели командных строк - это опции, которые используются для
выполнения SQL*Forms сеанса из командной строки. Во всех переключателях
используется следующий синтаксис:
-switch_designator argument
где:
-switch_designator Определяет, какой переключатель необходимо
использовать. Учтите, что каждый переключатель имеет
уникальное назначение.
argument Определяет требуемый аргумент для конкретного
переключателя. Не все переклюяатели имеют аргументы.
Комбини- Большинство переключателей могут быть использованы
рованные в комбинации с другими переключателями. Некоторые
переклю- комбинации недопустимы и могут вызвать ошибку.
чатели
командной Чтобы использовать несколько переключателей одновременно,
строки необходимо определить их в любом порядке. Если вы хотите
использовать одновременно несколько переключателей, не требую-
щих определения аргументов, вы можете синтаксически комбиниро-
вать переключатели, используя знак "-" перед комбинацией и не
оставлять пробелов между обозначениями переключателей.
Например, комбинация -t и и -o-переключателей должна выглядеть
следующим образом: -to.
Переключатели для SQL*Forms (Преобразование)
Ниже представлен список переключателей командной строки для SQL*Forms
(Преобразование) и краткое описание назначения каждого переключателя.
Более полное описание вы можете найти на последующих страницах.
Переключатель Описание
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
-с Переводит графические признаки.
-d Удаляет форму из базы данных.
-i Преобразует INP файл.
-s Подавляет заголовок программы.
-v Создает новый INP файл в формате версии 3.0.
Аналоги: команда CONVERT
-c переклю- Переключатель -c переводит графические признаки,
чатель для определенные в INP файле (создает приоритет для версии
SQL*Forms 2.3 в версии SQL*Forms) в символы в FRM файле, которые
-- 231 --
(Преобра- могут быть отображены целевым устройством.
зования)
В версии 3.0 SQL*Forms вы могли бы употребить -с
переключатель конъюнктивно только с -v переключателем во время
преобразований INP файла.
Синтаксис: -c crt
где crt - это имя файла определения CRT, который вы
собираетесь использовать в данном сеансе SQL*Forms.
Замечание: Oracle*Terminal перемещает CRT утилиту
в версии 3.0 SQL*Forms.
-d переклю- Переключатель -d удаляет определенную вами форму из
чатель для базы данных. Когда вы используете -d переключатель,
SQL*Forms SQL*Forms игнорирует все остальные переключатели.
(Преобра-
зования) Синтаксис: -d
-i переклю- Переключатель -i определяет, что SQL*Forms
чатель для (Преобразования) преобразует INP файл в формат базы
SQL*Forms данных. Если вы не используете -i переключатель, то
(Преобра- SQL*Forms (Преобразование) по умолчанию преобразует
зования) форму в INP файл в формате базы данных.
Синтаксис: -i
-s переклю- Переключатель -s подавляет заголовок программы
чатель для и сообщения Reading... и Writing...
SQL*Forms
(Преобра- Синтаксис: -s
зования)
-v переклю- Переключатель -v создает INP файл в формате версии 3.0
чатель для из INP файла старого формата.
SQL*Forms
(Преобра- Синтаксис: -v {version_number} inp_file_name
зования)
где:
version_number Определяет номер версии INP файла, который вы
хотите преобразовать. Если вы преобразовываете INP
файл, созданный с помощью SQL*Forms версии 2.3,
то вам необходимо определить 23 для
version_number. Если вы преобразовываете INP файл,
созданный по предыдущей (относительно версии 2.3)
версии, определите 20.
Замечание: Между -v и номером версии нет пробелов
(например, -v23).
inp_file_name Определяет имя INP файла, который вы хотите
преобразовать в формате версии 3.0.
Замечание: Используйте -s переключатель конъюнктивно с -v
переключателем, когда вы преобразуете INP файл, созданный до версии
2.3 и содержащий графические признаки.
-- 232 --
Аналоги: Формат INP файла
Переключатели для SQL*Forms (Проектирование)
Ниже представлен список переключателей командной строки для SQL*Forms
(Преобразование) и краткое описание назначения каждого переключателя.
Переключатель Описание
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
-с Определяет названную карту.
-e Создает ключевой файл сценария.
-i Поглощает выходные данные на терминале.
-l Ограничивает буфер возврата.
-n Обход входного экрана (т.е. нет входа).
-r Cчитывает ключевой сценарий файла.
-s Подавляет статус строки.
-w Поглощает выходные данные только в файле.
Аналоги: Команда SQLFORMS
-c перклю- Переключатель -c определяет отображение (иначе, чем оно
чатель для определено по умолчанию) для текущего устройства и
SQL*Forms продукта.
(Проекти-
рование) Синтаксис: -с mapping
где mapping - это имя отображения, которое вы хотите
использовать для данного сеанса SQL*Forms.
Вы или DBA должны определить отображение с Oracle*Terminal.
Аналоги: Oracle*Terminal
-e переклю- Переключатель -e поглощает в файле нажатие клавиш,
чатель для задействованных в сеансе SQL*Forms (Проектирование).
SQL*Forms
(Проекти- Ключевой файл сценария включает в себя нажатие клавиш,
рование) задействованных в управлении внутри интерфейса
проектирования, вызывает функции и выполняет любую форму,
задействованную в SQL*Forms (Проектирование)
Синтаксис: -e filename
где: filename - это выходной файл или ключевой сценарий файла.
Аналоги: Ввод средств нажатия клавиш.
-i переклю- Переключатель -i захватывает выходной терминал для
чатель для данного сеанса SQL*Forms. Этот переключатель также
SQL*Forms определяет, что SQL*Forms отображает выходной терминал
(Проекти- на экран.
рование)
Синтаксис: -e filename
где: filename - это выходной файл или ключевой сценарий файла.
-- 233 --
Аналоги: Редактирование средств нажатия клавиш
-l переклю- Переключатель -l ограничивает буфер возврата до хранения
чатель для только одной операции (самой последней). По умолчанию
SQL*Forms этот буфер не имеет ограничений. -l перключатель
(Проекти- особенно удобен для систем, которые имеют строго
рование) лимитированную память.
Если вы хотите использовать этот признак, переместите
Limit Indo Buffer в проективную опцию 1.
Синтаксис: -l
Аналоги: Limit Undo Bufer
-n переклю- В версиях SQL*Forms, предшествующих версии 3.0,
чатель для -n переключатель обходит входной экран SQL*Forms
SQL*Forms (Проектирование). Это свойство позволяет вам
(Проекти- связываться с SQL*Forms (Проектирование), не входя
рование) в базу данных. Когда вы вызываете SQL*Forms таким образом, то
вы:
- можете модифицировать, создавать и генерировать формы
- выполнить форму во время сеанса, если вы имеете доступную базу
данных
- не можете сохранять изменения в базе данных
- не можете использовать любые функции базы данных, такие
как создание блоков по умолчанию или список доступных форм
Если вы определили комбинацию имя пользователя/пароль, то
SQL*Forms игнорирует ее.
Переключатель -n не действует в версии 3.0 SQL*Forms.
Он функционирует только в случае совместимости снизу вверх.
Синтаксис: -n
-r переклю- Переключатель -r позволяет вам считывать ключевой файл
чатель для сценария, как входные данные SQL*Forms (Проектирование).
SQL*Forms Ключевой файл сценария начинает, выполняет и завершает
(Проекти- сеанс SQL*Forms (Проектирование).
рование)
SQL*Forms выполняет все действия на экране терминала, несмотря
на то, что вы подавляете вывод данных на экран с помощью
-w переключателя.
Синтаксис: -r filename
где filename - это входной файл или ключевой файл сценария.
Аналоги: Редактирование средств нажатия клавиш
-s переклю- Переключатель -s подавляет статус строки.
чатель для
SQL*Forms Синтаксис: -s
(Проектрование)
-- 234 --
-w переклю- Переключатель -w захватывает выходной терминал для
чатель для данного сеанса SQL*Forms. Этот переключатель также
SQL*Forms определяет, что SQL*Forms отображает выходной терминал
(Проекти- на экран.
рование)
Синтаксис: -r filename1 -w filename2
где:
filename1 Это вводный файл или ключевой файл сценария.
filename2 Это выходной файл или дисплейный файл регистрации.
Аналоги: Редактирование средств нажатия клавиш 29-1
Переключатели для SQL*Forms (Генерирование)
Ниже представлен список переключателей командной строки для SQL*Forms
(Преобразование) и краткое описание назначения каждого переключателя.
Переключатель Описание
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
-b Подавляет заголовок и сообщения.
-n Обходит имя пользователя и пароль (т.е. без входа).
-o Подавляет создание нового INP файла. Этот переключатель
является устаревшим для версии 3.0 SQL*Forms.
-s Подавляет диалоговые вопросы. Этот переключатель
является устаревшим для версии 3.0 SQL*Forms.
-t Подавляет заголовок и сообщения.
Аналоги: Команда GENERATE
-b переклю- В версии 3.0 SQL*Forms -b переключатель подавляет
чатель для заголовок и сообщения SQL*Forms (Генерирование).
SQL*Forms
(Генериро- В версии SQL*Forms, предшествующей версии 3.0, -b
вание) переключатель вызывает "пакетный режим" для сеанса SQL*Forms
(Генерирование). В пакетном режиме SQL*Forms (Преобразования)
не выдает никаких предложений и предупреждений, если
наталкивается на ошибку. В других режимах SQL*Forms
(Генерирование) выдает сообщения об ошибках и останавливает
выполнение операций. В версии 3.0 данная функциональная
зависимость является устаревшей.
Синтаксис: -b
-n переклю- Переключатель -n делает необязательным определение имени
чатель для пользователя и пароля. Это свойство позволяет вам
SQL*Forms связываться c SQL*Forms (Генерирование), не входя в базу
(Генериро- данных. Когда вы вызываете SQL*Forms таким образом, вы
вание) можете генерировать любую форму, созданную с помощью версии
SQL*Forms, предшествующей версии 3.0. Вы можете также
генерировать любую форму, созданную с помощью версии 3.0
SQL*Forms, не содержащей ни одного из следующих пунктов:
-- 235 --
- V триггеры, содержащие операторов SQL
- ccылки на объект последовательной нумерации
- блоки, поля, триггеры и процедуры форма-уровень,
на которые имеются ссылки
- блоки со веключенными характеристиками Column Set
Если вы определили комбинацию имя пользователя/пароль, то
SQL*Forms игнорирует ее.
Синтаксис: -n
-o переклю- В версиях SQL*Forms, предшествующих версии 3.0,
чатель для переключатель -o не позволяет SQL*Forms создавать новый
SQL*Forms INP файл для формы, когда она создает FRM файл.
(Генериро-
вание) Переключатель -o не действует в версии 3.0 SQL*Forms. Он
функционирует только в случае совместимости снизу вверх.
Синтаксис: -o
-s переклю- В версиях SQL*Forms, предшествующих версии 3.0,
чатель для переключатель -s подавляет диалоговые вопросы из нового
SQL*Forms INP файла, записывая только ответы. Это не влияет на
(Генериро- функциональность INP файла. Однако, это существенно
вание) уменьшает размер файла, что может быть полезным, если вы
транспортируете файл в другую операционную систему.
Переключатель -s не действует в версии 3.0 SQL*Forms. Он
функционирует только в случае совместимости снизу вверх.
Синтаксис: -s
-t переклю- В версии 3.0 SQL*Forms -t переключатель подавляет
чатель для заголовок и сообщения SQL*Forms (Генерирование).
SQL*Forms В версиях SQL*Forms, предшествующих версии 3.0,
(Генериро- переключатель -t не позволяет SQL*Forms отобразить на
вание) экране диалог, с помощью которого INP файл был создан. В
версии 3.0 данная функциональная зависимость является устаревшей.
Синтаксис: -t
Переключатели для SQL*Forms (Текущая форма)
Ниже представлен список переключателей командной строки для
SQL*Forms (Преобразование) и краткое описание назначения
каждого переключателя.
Переключатель Описание
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
-a Подавляет выполнение массива.
-b Устанавливает номер записи в буфере.
-c Определяет карту имен.
-d Активизирует режим отладки.
-e Создает ключевой файл сценария.
-- 236 --
-i Захватывает выходной терминал.
-l Блокирует автоматический вход.
-m Отображает меню блока на вход.
-o Объединяет курсоры для SQL триггера V2.
-q Активизирует скрытый (quiet) режим.
-r Cчитывает ключевой файл сценария как вводный.
-s Отображает установку номера курсора и
разблокировывает средства трассировки.
-t Объединяет курсоры для неявнй SQL.
-w Захватывает выходной терминал только в файле.
Аналоги: Команда RUNFORM
-a переклю- Переключатель -a подавляет выполнение массива во время
чатель для cеанса SQL*Forms (Текущая форма). Когда вы подавляете
SQL*Forms выполнение массива, SQL*Forms выбирает одну запись
(Текущая в ответ на запрос.
форма)
Подавление выполнения массива обычно приводит к тому, что
первая выбранная запись отображается быстрее, чем если вы
выберите номер записи вместе с выполнением массива. Однако
общее время, затрачиваемое на выборку и отображение записей
при выполнении массива - будет меньше.
Если вы запускаете форму из SQL*Forms (Текущая форма) хотите
использовать это свойство, активизируйте выполнение
опции Disable Array Processing.
Синтаксис: -a
Аналоги: выполнение опции Disable Array Processing 26-3
-b переклю- Переключатель -b устанавливает максимальное количество
чатель для буферированных записей в памяти: число отображенных
SQL*Forms рядов плюс некоторая константа (для каждого блока). Эта
(Текущая константа равна в конечном итоге равна 3, но может
фрма) зависеть от используемой вами операционной системы. Если блок
выбирает большее число записей по запросу, то SQL*Forms
буферирует эти дополнительные записи во временном (рабочем)
файле диска.
Если вы запускаете форму из SQL*Forms (Проектирование) вы
хотите использовать это свойство, активизируйте выполнение
опции Buffer Record.
Синтаксис: -b
Аналоги: Выполнение опции Buffer Record 26-2
Характеристика блока Buffered Records 11-15
-с переклю- Переключатель -c определяет отображение отличным от
чатель для отбражения по умолчанию для текущего устройства и
SQL*Forms продукта образом.
(Текущая
форма) Синтаксис: -с mapping
где
mapping - это имя отображения, которое вы хотите использо-
вать для данного сеанса SQL*Forms.
-- 237 --
Замечание: Вы или DBA должны определить отображение
с помощью Oracle*Terminal.
Аналоги: Oracle*Terminal
-d переклю- Переключатель -d активизирует режим отладки для сеанса
чатель для SQL*Forms (Текущая форма). В режиме отладки отображаются
SQL*Forms текущие сообщения о выполнении триггера и о других
(Текущая состояниях текущей формы во время выполнения операции.
форма) Режим отладки активизирует выполнение прерывания, если хотя бы в
одном из триггеров присутствует процедура BREAK.
Если вы запускаете форму из SQL*Forms (Проектирование) и вы
хотите использовать это свойство, то вы должны активизировать
выполнение опции Debug Mode.
Cинтаксис: -d
Аналоги: Cредства отладки
Выполнение опции Debug Mode
-e переклю- Переключатель -e захватывает в ключевом файле сценария
чатель для нажатие клавиш, работающих во время сеанса SQL*Forms
SQL*Forms (Текущая форма). Ключевой файл сценария включает в себя
(Текущая нажатие клавиш, задействованных в управлении внутри
форма) формы, активизируя функции и выполняя транзакции.
Синтаксис: -e filename
где filename - это или выходной файл или ключевой файл сценария.
Аналоги: Редактирование средств нажатия клавиш
-i переклю- Переключатель -i захватывает выходной терминал для
чатель для данного сеанса SQL*Forms. Этот переключатель также
SQL*Forms определяет, что SQL*Forms отображает выходной терминал
(Текущая на экран.
форма)
Синтаксис: -e filename
где: filename - это выходной файл или ключевой сценарий файла.
Аналоги: Редактирование средств нажатия клавиш
-l переклю- Переключатель -l блокирует автоматический вход ORACLE
чатель для и убыстряет отображение на входной экран. Когда вы
SQL*Forms пользуетесь переключателем -l, вам не нужно определять
(Текущая имя пользователя и пароль.
форма)
Используйте -l переключатель, когда:
- вы хотите войти в SQL*Forms c именем, отличным от имени,
установленного OPS$ ID
и
- вы не хотите определять пароль в командной строке
Синтаксис: -l
-- 238 --
Аналоги: Автоматический вход
-m переклю- Переключатель -m заставляет SQL*Forms выдать меню блока
чатель для на экран (после экранного входа), вместо того, чтобы
SQL*Forms выдать страницу формы. Используйте это свойство для
(Текущая комплексных прикладных программ, имеющих несколько
форма) стартовых точек.
Если вы запускаете форму с SQL*Forms (Проектирование) и
хотите использовать это свойство, активизируйте выполнение
опции Display Block Menu.
Аналоги: Выполнение опции Display Block Menu 26-3
Block Menu 11-13
-o переклю- По умолчанию SQL*Forms устанавливает отдельный курсор
чатель для базы данных для каждого оператора SQL, который форма
SQL*Forms выплняет в V2 триггере. Такое функционирование
(Текущая улучшает процессирование, поскольку операторы в каждом
форма) курсоре должны быть проанализированы только при первом
выполнении сеанса SQL*Forms (Текущая форма), а не при
каждом.
Когда вы определяете -o переключатель, SQL*Forms устанавливает один
курсор для всех SQL операторов в триггере V2. Эти операторы либо
совместно используют, либо многократно используют такой курсор, что
сохраняет память, но замедляет процессирование, т.к. SQL операторы должны
анализироваться при каждом выполнении.
Вы можете еще лучше приспособить для вас такое функционирование
с помощью характеристики шага триггера New Cursor Area. Если шаг
триггера, содержащий оператор SQL, имеет включенную характеристику,
то SQL*Forms присваивает оператору отдельный курсор, что приводит к
тому, что -o переключатель отвергается в данном операторе.
Если вы запускаете форму с SQL*Forms (Проектирование) и хотите использовать
это свойство, включите выполнение опции Share Cursor for Trigger SQL.
Замечание:Переключатель -o не оказывает влияния на операторы в триггерах V3.
Синтаксис: -o
Аналоги: Курсор, база данных 22-3
Характеристика шага триггера New Cursor Area
Share Cursors для выполнения опции Trigger SQL
-t переключатель для SQL*Forms (Текущая форма)
-q переклю- Переключатель -q активизирует медленный режим для сеанса
чатель для SQL*Forms (Текущая форма). В медленном режиме cообщения
SQL*Forms не выдают звуковых сигналов. Однако, вы можете получать
(Текущая звуковые сигналы из триггера при пакетной процедуре
форма) BELL.
Если вы запускаете форму с SQL*Forms (Проектирование)
и хотите использовать это свойство, активизируйте
выполнение опции Quiet Mode.
-- 239 --
Синтаксис: -q
Аналоги: Выполнение опции Quiet Mode 26-3
-r переклю- Переключатель -r позволяет вам считывать ключевой файл
чатель для сценария, как входные данные SQL*Forms (Проектирование).
SQL*Forms Ключевой файл сценария начинает, выполняет и завершает
(Проекти- сеанс SQL*Forms (Проектирование).
рование)
SQL*Forms выполняет все действия на экране терминала, несмотря
на то, что вы подавляете вывод данных на экран с помощью
-w переключателя.
Синтаксис: -r filename
где filename - это входной файл или ключевой файл сценария.
Аналоги: Редактирование средств нажатия клавиш 29-1
-s переклю- Переключатель -s отображает сообщение в конце сеанса
чатель для SQL*Forms (Текущая форма), устанавливающее максимальное
SQL*Forms количество одновременно открытых курсоров, которые были
(Текущая использованы во время сеанса. SQL*Forms пишет эти
форма) сообщения на экране терминала, а не в строке сообщений.
Переключатель -s также выдает следующую команду в базу данных:
ALTER SESSION SET SQL_TRACE TRUE
Эта команда разблокировывает средства трассировки для текущего
сеанса SQL*Forms (Текущая форма). Если вам нужна дополнитель-
ная информация об этих средствах, обратитесь к ORACLE RDBNS
Performance Tuning Guide.
Синтаксис: -s
Аналоги: Выполнение опции Statistics.
-t переклю- По умолчанию SQL*Forms устанавливает отдельный курсор
чатель для базы данных для каждого оператора SQL, который форма
SQL*Forms выплняет неявно, как передачу или запрос данных. Такое
(Текущая функционирование улучшает процессирование, поскольку
форма) операторы в каждом курсоре должны быть проанализированы
только при первом выполнении сеанса SQL*Forms (Текущая
форма), а не при каждом выполнении.
Когда вы определяете -t переключатель, SQL*Forms только
устанавливает отдельный курсор для каждого запроса
оператора SELECT. Эти операторы либо совместно используют, либо
многократно используют такой курсор, что сохраняет память, но
замедляет процессирование, т.к. операторы INSERT, UPDATE,
DELETE и SELECT FOR UPDATE должны анализироваться при каждом
выполнении.
Если вы запускаете форму с SQL*Forms (Проектирование) и
хотите использовать это свойство, включите выполнение Share
Cursor для выполнения неявной опции SQL.
-- 240 --
Замечание: Переключатель -t не оказывает никакого влияния,
если вы заменяете стандартное процессирование SQL*Forms на
On-Insert, On-Update, On-Delete триггеры, поскольку эти триггеры
заменяют неявную выдачу операторов INSERT, UPDATE и DELETE.
Синтаксис: -t
Аналоги: Курсор, база данных 22-3
Share Cursors для выполнения опции Trigger SQL
-o переключатель для SQL*Forms (Текущая форма)
-w переклю- Переключатель -w захватывает выходной терминал для
чатель для данного сеанса SQL*Forms. Этот переключатель также
SQL*Forms определяет, что SQL*Forms отображает выходной терминал
(Проекти- на экран.
рование)
Синтаксис: -r filename1 -w filename2
где:
filename1 Это вводный файл или ключевой файл сценария.
filename2 Это выходной файл или дисплейный файл pегистрации.
Аналоги: Редактирование средств нажатия клавиш 29-1
Глава 24 З а п о м и н а н и е ф о р м
В данной главе представлена информация о том, как SQL*Forms запоминает
форму. В нее включены следующие темы:
- форматы памяти форм
- мобильность между системами
- базовые таблицы SQL*Forms (Проектирование)
- формат INP файла
Форматы памяти форм
SQL*Forms запоминает формы в трех форматах:
- формат базы данных
- FRM формат
- INP формат
Вы можете преобразовывать форму из одного формата в другой с помощью
различных компонентов SQL*Forms.
Аналоги: Компоненты
Формат базы данных
Форма в формате базы данных состоит из определения формы, помещенного в
память в виде различных таблицы в базе данных ORACLE. Этот формат
является базовым форматом памяти для форм. SQL*Forms создает
представление формы базы данных , когда вы выполняете любое из
следующих действий:
- сохраняете определение формы из SQL*Forms (Проектирование)
посредством опции Save в меню Action.
- преобразуете INP файл из командной строки посредством команды CONVERT
с -i переключателем командной строки
-- 241 --
SQL*Forms использует представление формы в формате базы данных, когда вы
открываете форму, пользуясь командой CONVERT с -d переключателем командной
строки.
Замечание: Версия SQL*Forms, предшествующая версии 1.0, не запоминает
форму в базе данных, а использует INP формат в качестве базового.
Аналоги: Команда CONVERT 23-4
-d переключатель, SQL*Forms (Преобразование)
-i переключатель, SQL*Forms (Преобразование)
FRM формат
Форма в FRM формате состоит из определения формы, помещенного в
память в виде двоичного файла. SQL*Forms создает FRM файл для формы, когда
вы генерируете форму из SQL*Forms (Проектирование) посредством опции
Generate в меню Action или из командной строки, используя команду GENERATE.
SQL*Forms использует FRM файл, когда оператор выполняет форму.
Замечание: Формат FRM файла не является переносимым между системами.
Аналоги: Команда GENERATE 23-6
Базовые таблицы SQL*Forms (Проектирование)
В этом разделе представлены таблицы базы данных, использованные в
версии 3.0 SQL*Forms (Проектирование), сохраняющие данные о создаваемой и
модифицируемой вами форме. Эти таблицы находятся во владении имени
пользователя SYSTEM.
- FORM_APP
- FORM_BLK
- FORM_COMMENT
- FORM_FLD
- FORM_MAP
- FORM_PAGE
- FORM_PROCEDURE
- FORM_SQLTXT
- FORM_TRG
- FORM_TRIGGER
- FORM_USER
Информация для вас дана в описаниях таблиц. Вы можете записывать
сообщения, основанные на этой информации или изменить содержание таблиц с
помощью SQL*Forms. Не проводите никаких операций с этими таблицами
посредством SQL*Plus.
Замечание: Корпорация Oracle сохраняет за собой право изменять названия
или структуру этих таблиц в любое время без предупреждения.
Таблица Таблица FORM_APP содержит информацию по идентификации
FORM_APP формы. В следующей таблице представлена информация о
столбцах таблицы.
Столбец Описание Ноль Тип
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
APPOWNER владелец формы NOT NULL CHAR(30)
-- 242 --
APPNAMER имя формы NOT NULL CHAR(30)
APPTITLE заголовок формы CHAR(80)
APPVAUNIT проверочное CHAR(6)
устройство
APPMOUSE предел управления CHAR(6)
мышью
APPMNUAPL прикладная программа CHAR(30)
меню по умолчанию
APPMNUNAM старт имени меню CHAR(30)
APPMNUGRP меню защиты имени CHAR(30)
группы
Таблица Таблица FORM_BLK содержит информацию по идентификации
FORM_BLK и характеристике блока. В следующей таблице представлена
информация о столбцах таблицы.
Столбец Описание Ноль Тип
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
BLKAPOWNER владелец формы NOT NULL CHAR(30)
BLKAPNAME имя формы NOT NULL CHAR(30)
BLKNAME имя блока NOT NULL CHAR(30)
BLKDESC описание блока CHAR(60)
BLKHD если описание CHAR(1)
появляется в меню блока
BLKSEQ последовательный NAMBER
номер блока
BLKUNQKEY если уникальные CHAR(1)
ключи необходимы для блока
BLKCTRL если блок имеет CHAR(1)
базовую таблицу
BLKCOLSEC если необходимы CHAR(1)
ограничения целостности базы данных
BLKTOWNER владелец таблицы CHAR(30)
BLKTNAME имя таблицы CHAR(30)
BLKNOREC число отображаемых NUMBER
строк
BLKNOBUF количество буферизуемых NUMBER
записей
BLKBLIN базовая строка NUMBER
BLKLNRC число строк в записи NUMBER
BLKRSIZ размер массива для блока NAMBER
BLKOBYSQL указатель таблицы NUMBER
FORM_SQLTXT
(SQLTNO столбец) для
запоминания по умолчанию
WHERE/ORDER BY фраза для блока
Таблица Таблица FORM_COMMENT содержит комментарий текста.
Столбец Описание Ноль Тип
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
CMTAPOWNER владелец формы NOT NULL CHAR(30)
СMTAPNAME имя формы NOT NULL CHAR(30)
-- 243 --
CMTPROC имя процедуры CHAR(30)
CMTBLK блок CHAR(30)
СMTFLD поле CHAR(30)
СMTTRGTYP триггер CHAR(30)
CMTTRGSEQ шаг триггера NUMBER
СMTLINE номер строки NUMBER
СMTTEXT комментарий текста CHAR(80)
Таблица Таблица FORM_FLD содержит информацию по идентификации
FORM_FLD и характеристике поля. В следующей таблице представлена
информация о столбцах таблицы.
Столбец Описание Ноль Тип
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
FLDAPOWNER владелец формы NOT NULL CHAR(30)
FLDAPNAME имя формы NOT NULL CHAR(30)
FLDBLK блок, являющийся NOT NULL CHAR(30)
владельцем поля
FLDNAME имя поля NOT NULL CHAR(30)
FLDSEQ номер NUMBER
последовательности
FLDTYPE тип данных CHAR(8)
FLDLEN длина поля NUMBER
FLDDLEN длинка отображения NUMBER
FLDQLEN длина запроса NUMBER
FLDBTAB если поле является CHAR(1)
полем базовой таблицы
FLDKEY если поле является СHAR(1)
полем первичного ключа
FLDCKBLK блок, с которого копируют CHAR(30)
значение поля
FLDCKFLD поле, с которого копируют CHAR(30)
значение поля
FLDDFLT величина по умолчанию CHAR(80)
FLDDISP если поле отображается CHAR(1)
FLDPAGE расположение страниц NUMBER
FLDLINE расположение строк NUMBER
FLDCOL расположение строк NUMBER
FLDPROMPT предложение CHAR(80)
FLDPRABOV если предложение над CHAR(1)
полем
FLDPRRPT если предложение за CHAR(1)
полем
FLDENTER если в поле можно войти CHAR(1)
FLDQUERY если поле можно запрашивать CHAR(1)
FLDUPDATE если поле можно изменять CHAR(1)
FLDUPDNUL если поле можно изменять CHAR(1)
при NULL
FLDMAND если поле обязательно CHAR(1)
FLDFIXED если поле имеет фиксированную CHAR(1)
длину
FLDSKIP если поле имеет автоматический CHAR(1)
пропуск
FLDHIDE если поле невидимо CHAR(1)
FLDAUTOHLP если поле имеет автоматическую CHAR(1)
подсказку
FLDUPPER если поле преобразует символы CHAR(1)
-- 244 --
в заглавные
FLDOVTIT заголовок для списка значений CHAR(60)
FLDLOVSQL указание на таблицу FORM_SQLTXT NUMBER
для запоминания списка значений
оператора SQL
FLDLOVX X координата для списка значений NUMBER
FLDLOVY Y координата для списка значений NUMBER
FLDLOW младшее значение CHAR(30)
FLDHI старшее значение CHAR(30)
FLDVALPATN проверочный образец CHAR(80)
FLDDISMASK маска дисплея CHAR(80)
FLDHELP текст подсказки CHAR(80)
FLDEDTX X координата для редактора NUMBER
файла
FLDEDTY Y координата для редактора NUMBER
файла
FLDEDITWRP переход слова для редактора CHAR(1)
файла
Таблица Таблица FORM_MAP содержит информацию о постоянном тексте
FORM_MAP и графике. В следующей таблице представлена информация
о столбцах таблицы.
Столбец Описание Ноль Тип
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
MAPAPOWNER владелец формы NOT NULL CHAR(30)
MAPAPNAME имя формы NOT NULL CHAR(30)
MAPPAGE страница NOT NULL NUMBER
MAPLINE строка NUMBER
MAPGRPH если значения могут CHAR(1)
быть интерпретированы как графические элементы
MAPTEXT постоянный текст CHAR(255)
Таблица Таблица FORM_PAGE содержит информацию о cтраницах и их
FORM_PAGE характеристике. В следующей таблице представлена
информация о столбцах таблицы.
Столбец Описание Ноль Тип
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
PAGEAPOWNER владелец формы NOT NULL CHAR(30)
PAGEAPNAME имя формы NOT NULL CHAR(30)
PAGNUM номер страницы NOT NULL NUMBER
PAGTITLE название страницы CHAR(255)
PAGXSIZ ширина страницы NUMBER
PAGYSIZ высота страницы NUMBER
PAGVWXS ширина представления NUMBER
PAGVWYS высота представления NUMBER
PAGVWPXO X координата положения NUMBER
на странице
PAGVWPYO Y координата положения NUMBER
на странице
PAGGROPUP если страница является CHAR(1)
верхней страницей
PAGBORDER если представление имеет CHAR(1)
границу
PAGDISLV если страница аннулируется CHAR(1)
-- 245 --
при входе
PAGVSCRL если представление имеет CHAR(1)
код вертикальной прокрутки
Таблица Таблица FORM_PROCEDURE содержит информацию о PL/SQL
FORM_PROCE- процедуре. В следующей таблице представлена информация
DURE о столбцах таблицы.
Столбец Описание Ноль Тип
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
PROCAPOWNER владелец формы NOT NULL CHAR(30)
PROCAPNAME имя формы NOT NULL CHAR(30)
PROCNAME имя процедуры NOT NULL CHAR(30)
PROCTEXT указатель таблицы NUMBER
FORM_SQLTXT
(SQLTNO столбец) для запоминания текста процедуры
Таблица Таблица FORM_REFERENCE содержит информацию обо всех
FORM_REFE- cсылках на объекты SQL*Forms. В следующей таблице
RENCE представлена информация о столбцах таблицы.
Столбец Описание Ноль Тип
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
REFAPOWNER владелец формы NOT NULL CHAR(30)
REFAPNAME имя формы NOT NULL CHAR(30)
REFBLK блок, который CHAR(30)
делает ссылки
REFFLD поле, которое CHAR(30)
делает ссылки
REFTGTYP триггер, который CHAR(30)
делает ссылки
REFPROC процедура, которую CHAR(30)
делает ссылки
REFFOWNER владелец объекта, NOT NULL CHAR(30)
на который имеются ссылки
REFFAPP владелец формы, NOT NULL CHAR(30)
содержащей объект, на который имеются ссылки
REFFBLK блок, на который CHAR(30)
имеются ссылки
REFFFLD поле, на которое CHAR(30)
имеются ссылки
REFFTGTYP триггер, на который CHAR(30)
имеются ссылки
REFFPROC процедура, на которую CHAR(30)
имеются ссылки
Таблица Таблица FORM_SQLTXT содержит текст всех операторов SQL
FORM_SQLTXT cодержащихся в ваших формах, включая фразы WHERE/ORDER
BY. В следующей таблице представлена информация о
столбцах таблицы.
Столбец Описание Ноль Тип
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
SQTAPOWNER владелец формы NOT NULL CHAR(30)
SQTAPNAME имя формы NOT NULL CHAR(30)
SQTNO идентификационный NOT NULL NUMBER
-- 246 --
номер для текста SQL
SQTLINE строка текста NOT NULL NUMBER
SQTTEXT SQL текст CHAR(80)
Таблица Таблица FORM_TRG содержит информацию о расположении и
FORM_TRG характеристиках шагов триггера. В следующей таблице
представлена информация о столбцах таблицы.
Столбец Описание Ноль Тип
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
TRGEAPOWNER владелец формы NOT NULL CHAR(30)
TRGEAPNAME имя формы NOT NULL CHAR(30)
TRGBLK блок, с которым CHAR(30)
ассоциирован триггер
TRGFLD поле, с которым CHAR(30)
ассоциирован триггер
TRGTYPE тип триггера NOT NULL CHAR(30)
TRGSEQ номер последовательности NUMBER
TRGLABEL метка шага триггера CHAR(30)
TRGSQL номер SQL текста, шаг NUMBER
связанный (как описано в таблице FORM_SQLTXT)
TRGCURS если шаг триггера имеет СHAR(1)
отдельный курсор
TRGMVE если триггер будет иметь CHAR(1)
аварийное завершение при невыполнении шага
TRGINV если код возврата шага CHAR(1)
триггера будет обратным
TRGROLL если триггер будет CHAR(1)
обеспечивать возврат при аварийном завершении
триггера
TRGLAB ????????? CHAR(30)
TRGFLAB метка сбоя СHAR(30)
TRGMSG строка сообщения о сбое CHAR(80)
Таблица Таблица FORM_TRIGGER содержит информацию о расположении
FORM_TRGGER и характеристиках шагов триггера. В следующей таблице
представлена информация о столбцах таблицы.
Столбец Описание Ноль Тип
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
TRIGEAPOWNER владелец формы NOT NULL CHAR(30)
TRIGEAPNAME имя формы NOT NULL CHAR(30)
TRIGBLK блок CHAR(30)
TRIGFLD поле CHAR(30)
TRIGTYPE тип триггера NOT NULL CHAR(30)
TRIGDESC описание CHAR(20)
TRIGHIDE если описание будет CHAR(1)
включено в экран Show Keys (толькодля ключевых
триггеров)
TRIGPLSQL если триггер является CHAR(1)
V3 триггером
-- 247 --
Таблица Таблица FORM_USER содержит информацию о привилегиях
FORM_USER пользователя. В следующей таблице представлена
информация о столбцах таблицы.
Столбец Описание Ноль Тип
ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД
USRAPOWNER владелец формы NOT NULL CHAR(30)
USRAPNAME имя формы NOT NULL CHAR(30)
USRUSER разрешение NOT NULL CHAR(30)
Формат INP файла
****************
Полное описание синтаксиса INP файла дано на следующих страницах. Этот
материал является эталонной информацией. Когда вы модифицируете форму,
редактируя INP файл, это может привести к серьезным повреждениям ваших
прикладных программ.
Замечание: Редактирование INP файлов не разрешено Oracle Corporation.
Cледующая схема функционирует на всех уровнях, от верхнего до
нижнего. Каждый термин, появляющийся в угловых скобках (например,
) определяется на нижнем уровне схемы.
copyright notice
SQL*Forms_VERSION = forms_version
где имеет следующий синтаксис:
DEFINE FORM
application-level_comments
NAME = form_name
TITLE = form_title
DEFAULT_MENY_APPLICATION = default_meny_application
ROOT_MENU = starting_menu_name
GROUP_NAME = menu_security_group_name
MOUSE_NAVIGATORY_LIMIT = mouse navigation_limit
VALIDATION_UNIT = {-1nothing-0 і FIELD і RECORD і
і BLOCK і FORM )
for each procedure in form
for each form-level trigger in form
for each block in form
ENDDEFINE FORM
где имеет следующий синтаксис:
і
где имеет следующий синтаксис:
-- 248 --
DEFINE PROCEDURE
procedure-level_comments
NAME = procedure_name
DEFINITION = procedure_text
ENDDEFINE PROCEDURE
где имеет следующий синтаксис:
DEFINE PROCEDURE
NAME = procedure_name
ENDDEFINE PROCEDURE
где имеет следующий синтаксис:
і
где non-referenced_trigger_definition> имеет следующий синтаксис:
DEFINE TRIGGER
trigger-level_comments
NAME = trigger_name
TRIGGER_TYPE = V2
SHOW_KEY = {ON і OFF}
DESCRIPTION = trigger_description
for each step in trigger
ENDDEFINE TRIGGER
где имеет следующий синтаксис:
DEFINE STEP
step-level_comments
LABEL = step_label
TEXT = step_text
SUCCESS_STEP = success_label
FAILURE_STEP = failure_label
FAIL_MESSAGE = failure_message
ABORT = {ON і OFF}
REVERSE = {ON і OFF}
NEW_CURSOR = {ON і OFF}
IGNORE = {ON і OFF}
ENDDEFINE
где имеет следующий синтаксис:
DEFINE TRIGGER
trigger-level_comments
NAME = trigger_name
TRIGGER_TYPE = V3
SHOW_KEY = {ON і OFF}
DESCRIPTION =trigger_description
TEXT = V3_style_trigger_text
ENDDEFINE TRIGGER
где имеет следующий синтаксис:
-- 249 --
DEFINE TRIGGER
NAME = trigger_name
ENDDEFINE TRIGGER
где имеет следующий синтаксис:
і
где имеет следующий синтаксис:
DEFINE BLOCK
block-level_comments
NAME = block_name
DESCRIPTION = block_description
TABLE = user.base_table
UNIQUE_KEY = {ON і OFF}
UPDATE_KEY = {ON і OFF}
IN_MENU = {ON і OFF}
ROWS_DISPLAYED = num_rows_displayed
ROWS_BUFFERED = num_rows_buffered
BASE_LINE = base_line
LINES_PER_ROW = num_lines_per_row
ARRAY_SIZE = array_size
COLUMN_SECURITY = {ON і OFF}
ORDERING = default_where_orderby_clause
for each block-level trigger in block
for each field in block
ENDDEFINE BLOCK
где имеет следующий синтаксис:
і
где имеет следующий
синтаксис:
DEFINE FIELD
field-level_comments
NAME = field_name
DATATYPE = data_type
LENGTH = field_length
DISPLAY_LENGTH = display_length
QUERY_LENGTH = quey_length
BASE_TABLE = {ON і OFF}
PRIMARY_KEY = {ON і OFF}
MANDATORY = {ON і OFF}
DISPLAYED = {ON і OFF}
PAGE = page_number
LINE = line_number
COLUMN = column_number
HELP = help_message
LOW_VALUE = field_range_low_value
HIGH_VALUE = field_range_high_value
-- 250 --
LOV_TEXT = list_of_values_select_statement і
[user}.table.column
LOV_TITLE = list_of_values_title
LOV_X = x coord_for_lov
LOV_Y = y coord_for_lov
INPUT_MASK = input_mask
OUTPUT_MASK = output_mask
EDIT_X = location_x_coordinate
EDIT_Y = location_y_coordinate
EDIT_WORD_WRAP = {ON і OFF}
DEFAULT = default_value
ENFORCE_KEY_FORM =
= source_block.field_of_primary key_copy
ECHO = {ON і OFF}
INPUT = {ON і OFF}
UPDATE = {ON і OFF}
UPDATE_NULL = {ON і OFF}
QUERY = {ON і OFF}
FIXED_LENGTH = {ON і OFF}
AUTOSKIP = {ON і OFF}
AUTOHELP = {ON і OFF}
UPPERCASE = {ON і OFF}
for each field-level trigger in field
ENDDEFINE FIELD
где имеет следующий синтаксис:
DEFINE PAGE
PAGE = page_number
POPUP = {ON і OFF}
BORDER = {ON і OFF}
HORIZONTAL_SCROLL_BAR = {ON і OFF}
VERTICAL_SCROLL_BAR = {ON і OFF}
DISSOLVE = {ON і OFF}
TITLE = page_title
PAGE_XS = page_x_size
PAGE_YS = page_y_size
PAGE_PXO = x_coord_of_view_on_page
PAGE_PYO = y_coord_of_view_on_page
PAGE_PXS = x_size_of_view_on_page
PAGE_PYS = y_size_of_view_on_page
PAGE_SXO = x_coord_of_view_on_page
PAGE_SYO = y_coord_of_view_on_page
MODE = TEXT
LINE = line_number_a
BOILER = <<<
constant text at line_number
constant text at line_number + 1
...
>>>
LINE = line_number_b
BOILER = <<<
...
>>>
...
ENDDEFINE PAGE
-- 251 --
Замечание: SQL*Forms принимает любые операторы
KEYWORD = VALUE в каждом из следующих форматов:
1. KEYWORD = VALUE
2. KEYWORD = <<<
VALUE
>>>
Большинство операторов KEYWORD = VALUE пишутся в формате 1.
Исключениями ( пишутся в формате 2) являются операторы, определяющие
следующие вопросы:
- список значений текста
- определение процедуры
- текст триггера
- текст шага
- фраза WHERE/ORDER BY по умолчанию
|