Компонент динамической экранной формы
Компоненты используются для создания динамической экранной формы. Список доступных компонент приведен ниже
Код
|
Класс
|
Наименование
|
Примечание
|
0
|
NoClass
|
Нет
|
Поле не отображается и не обрабатывается
|
1
|
TILDBEdit
|
Простое поле
|
Для редактирования текстовых данных в одну строчку
|
3
|
TILEhNumberEdit
|
Редактор чисел с калькулятором
|
Для редактирования цифровых значений
|
4
|
TILDBDateEdit
|
Редактор даты с календарем
|
Для редактирования дат с календарем
|
5
|
TILwwDBLookupCombo
|
Выпадающий список
|
Отображает пользователю множество значений из запроса, первое поле воспринимается как идент-р
|
6
|
TILDBEditEh
|
Простое поле от IP
|
С возможностью задавать высоту поля
|
7
|
TILEhSpinEdit
|
Редактор счетчик
|
Редактор числовых значений определенного диапазона. Поле со стрелкой ввер и вниз(типа инкремент,декремент)
|
8
|
TILDBDateEditEh
|
Редактор даты
|
Редактор даты, времени
|
9
|
TILDBTimePicker
|
Редактор времени
|
Редактирование времени в поле типа TDateTime. Дата не учитывается.
|
17
|
TILDBMemo
|
DBMemo
|
Для редактирования больших текстов
|
20
|
TILDMDBCombo
|
Cписок с фильтром
|
Выпадающий список с фильтром
|
25
|
TIlwwDBFilterCombo
|
Выпадающий список с фильтром
|
Выпадающий список на основе 5-й компоненты, с фильтром
|
41
|
TDBComboDialog
|
Поле редактирования с диалогом
|
Позволяет вызывать в диалоговом режиме форму просмотра записей с последующей вставкой
|
42
|
TCustomDBComboDialog
|
Поле редактирования с диалогом
|
Поле редактирования с диалогом
|
43
|
TDBComboDialogLite
|
Поле редактирования с диалогом ,без проверки
|
Поле редактирования с диалогом, без проверки введенного значения в справочной таблице
|
44
|
TDBComboDialogReadOnly
|
Поле редактирования с диалогом в режиме "только чтение"
|
Поле редактирования с диалогом в режиме "только чтение"
|
49
|
TILEhNumberEditNullsOn
|
Редактор чисел с калькулятором
|
Позволяет вводить NULL
|
53
|
TDFFileStorage
|
Многоцелевой компонент для операций с файлом
|
Компонент устанавливается на поле "имя файла", в SQLCombo - имя поля, в котором хранится файл. Поддерживает операции: выбор, сохранение, просмотр файла
|
103
|
TILDBCheckbox
|
Переключатель
|
Если поле равно 1 то с галочкой, во всех остальных без галочки
|
105
|
TilDBBitsEdit
|
визуальный редактор битовых масок
|
Визуальный редактор битовых масок. SQLCombo - класс-заполнитель итемов
|
Код
|
Класс
|
Наименование
|
Примечание
|
106
|
TDFRadioPanel
|
Радио-панель
|
Панель с радио-кнопками
|
109
|
TMemoPanel
|
Мемо поле с выбором из справочника
|
Настройка компонента : в поле SQLCombo 2 параметра через ";". 1 - имя поля, 2 - имя таблицы
|
120
|
TILNumerator
|
Автонумератор
|
Формирует строку по заданному шаблону. В поле SQLcombo указывается Код из таблицы GIS_SEQ.
|
131
|
TDFControler
|
Контроллер полей
|
Контроллер полей. Если значение не найдено, установит поле в NULL
|
132
|
TDFControlerNoNull
|
Контроллер полей без обнуления
|
Контроллер полей. Не вставляет значения, если запись не найдена
|
134
|
TDFEnableControler
|
Управление видимостью, доступностью
|
1 поле string - имя поля, 2 поле number - набор битов доступности ( бит 0 - доступность, бит 1 - видимость )
|
141
|
TDBDialogFilterEx
|
Поле редактирования с диалогом, улучш. выч. виз. знач.
|
В отличие от компонента 42, при вычислении визуального значения учитываются критерии, используемые для построения списка.
|
333
|
TILKeysDBCombo
|
Выпадающий список
|
Выпадающий список строится на основании внешнего ключа
|
410
|
TDBComboDialogVarTbl
|
Поле редактирования с возможностью выбора из детальной таблицы
|
Позволяет вызвать в диалоговом режиме форму просмотра с вставкой записи, выбранной в детальной таблице.
|
* Если компонент является дочерним, он обладает всеми свойствами родителя.
* Обращение к текущему значению поля открытой формы осуществляется путем указания двоеточия перед названием поля.
NoClass Идентификатор типа: 0
Русское наименование: Нет
Поле не отображается и не обрабатывается динамической панелью.
TILDBEdit Идентификатор типа: 1
Русское наименование: Простое поле редактирования
Для редактирования текстовых данных в одну строчку.
Можно задать вид отображаемых символов.
Формат SQLCombo (записывать следующую строчку):
PasswordChar=”char”
где,
Char - любой символ (например “*”) или его номер в ASCII таблице (например #182)
TILEhNumberEdit Идентификатор типа: 3
Русское наименование: Редактор чисел с калькулятором
*Родитель компонента [TILEhNumberEditNullsOn]
Компонент для редактирования и калькуляции цифровых значений
TILwwDBLookupCombo Идентификатор типа: 5
Русское наименование: Выпадающий список
*Родитель компонента [25. TILwwDBFilterCombo]
Отображает пользователю множество значений из SQL-запроса. Список строится по результату запроса из SQLCombo.
Названия полей в запросе должны быть разными.
TILDBEditEh Идентификатор типа: 6
Русское наименование: Простое поле от IP
Простой редактор текста с возможностью задавать высоту поля. Отображает много строк, но перевод каретки отсутствует (т.е. в отличии от 17 компонента не переходит на новую строку по нажатию Ctrl+Enter)
TILEhSpinEdit Идентификатор типа: 7
Русское наименование: Редактор счетчик
Редактор числовых значений определенного диапазона
Формат маски ввода: Min;Max;Inc
где,
Min – минимальное значение
Max – максимальное значение
Inc – при прокручивании списка цифр значение изменяется на «Inc»
TILDBDateEditEh Идентификатор типа: 8
Русское наименование: Редактор даты
Редактор даты, времени
Маска отображения: «DD.MM.YYYY HH:NN:SS»
где,
DD – формат для порядкового дня месяца
MM – формат записи месяца
YYYY – формат записи года
HH – формат записи часов
NN – формат записи минут
SS – формат ввода секунд
TILDBTimePicker Идентификатор типа: 9
Русское наименование: Редактор времени
Редактирование времени в поле типа TDateTime. Дата не учитывается.
TILDBMemo Идентификатор типа: 17
Русское наименование: DBMemo
Компонент для редактирования больших текстов, многострочный с переносом каретки по нажатию Ctrl+Enter
TILDMDBCombo Идентификатор типа: 20
Русское наименование: Cписок с фильтром
Выпадающий список с фильтром. Список строится по результату запроса из SQLCombo.
Запрос должен состоять как минимум из двух полей, при этом, первое поле в запросе принимается как значение данных, а второе трактуется как наименование для значения, оно отображается пользователю при выборе и при просмотре после выбора.
Названия полей в запросе должны быть разными.
TILwwDBFilterCombo Идентификатор типа: 25
Русское наименование: Выпадающий список на основе 5-й компоненты, но с фильтром
*Дочерний от компонента [5. TILwwDBLookupCombo]
Позволяет в запросе использовать в качестве параметров текущие значения полей набора данных, имя параметра должно совпадать с именем поля. Следит за изменением набора данных, если меняются значения полей участвующих в запросе, то заново выполняет запрос.
При нажатии клавиши Del очищает поле (для полей позволяющих иметь null-значения) .
Названия первого и второго полей в запросе должны быть разными.
TDBComboDialog Идентификатор типа: 41
Русское наименование: Поле редактирования с диалогом
*Дочерний от компонента [42. TCustomDBComboDialog]
*Родитель компонента [43. TComboDialogLite]
Позволяет вызывать в диалоговом режиме форму просмотра записей справочной таблицы с последующей вставкой выбранной записи.
Выводит в диалог данные справочной таблицы, отфильтрованные по текущему значению поля.
TCustomDBComboDialog Идентификатор типа: 42
Русское наименование: Поле редактирования с диалогом
*Дочерний от компонента [201. TDBComboButton]
*Родитель компонента [41. TDBComboDialog]
*Родитель компонента [44. TDBComboDialogReadOnly]
*Родитель компонента [141. TDbDialogFilterEx]
Позволяет вызывать в диалоговом режиме форму просмотра записей справочной таблицы с последующей вставкой выбранной записи. Привязка к полю в БД осуществляется по IDField, а пользователю показывается DisplayField.
Работа компонента зависит от настроек, которые хранятся в поле SQLCombo.
Также возможна работа компонента в режиме просмотра списка доступных значений. В этом случае, реквизит описателя полей SQLDECOD (Запрос для расшифровки) должен быть обязательно заполнен.
Формат записи: IDField;LookField;DialogTable; DecodeTable;
IDField - имя поля которое будет играть функцию идентификатора
LookField - имя поля которое показывается пользователю (Looking field)
DialogTable - имя таблицы или представления зарегистрированной в Gis_Params_Table
DecodeTable - имя таблицы или представления зарегистрированной в Gis_Params_Table для расшифровки LookField.
В наборе данных должно присутствовать поле, которое играет функцию идентификатора (IDField).
При выходе из компонента осуществляется проверка введенного значения через формирования запроса в виде:
Select IDField from DecodeTable where LookField = :LookField
Если этот запрос не вернул ни одной записи, формируется ошибка.
При внесении выбранной записи в поле, выполняется следующий запрос:
Select LookField from DecodeTable where IDField = :IDField
элемент заполняется найденным значением, в противном случае выводится значение IDField красного цвета.
После описания настроек имеется возможность задать предварительный отбор записей (фильтр), в формате: NameField;Value
где,
NameField - имя поля по которому устанавливаем фильтр
Value - значение для отбора.
Сравнение значения производится только на равно. Количество пар ограниченно размером поля SQLCombo.
TDBComboDialogLite Идентификатор типа: 43
Русское наименование: Поле редактирования с диалогом(без проверки)
* Дочерний от компонента [41. TDBComboDialog]
Не проверяет введенное значение по справочной таблице
TDBComboDialogReadOnly Идентификатор типа: 44
Русское наименование: Поле редактирования с диалогом в режиме «только чтение»
*Дочерний от компонента [41. TDBComboDialog]
Поле редактирования с диалогом в режиме «только чтение»
TILEhNumberEditNullsOn Идентификатор типа: 49
Русское наименование: Редактор чисел с калькулятором
Позволяет вводить NULL.
TDFFileStorage Идентификатор типа: 53
Русское наименование: Многоцелевой компонент для операций с файлом
Компонент устанавливается на поле «имя файла», SQLCombo - имя BLOB поля, в котором хранится файл. Поддерживает следущие операции : выбор, сохранение, просмотр файла.
TILDBCheckbox Идентификатор типа: 103
Русское наименование: Переключатель
Если поле равно 1, то переключатель с галочкой, во всех остальных случаях - без галочки.
TilDBBitsEdit Идентификатор типа: 105
Русское наименование: Визуальный редактор битовых масок
В SQLCombo - - имя класса для заполнения списка значений.
TDFRadioPanel Идентификатор типа: 106
Русское наименование: Радио-панель
Панель с радио-кнопками соответствует списку значений, формируемых в SQL-запросе. В запросе первое поле указывает значение, второе поле указывает расшифровку значения, выводимую на форму для просмотра.
Формат SQLCombo:
Select key_value1, look_ value1 from <table> [ where <условие>]
где,
key_value1 – значение, возвращаемое компонентом при выборе;
look_value1 - расшифровка значения key_value1, выводимая на форму.
Кнопок на панели будет столько, сколько строк вернет результат запроса,
Из них надо выбрать одно значение.
Пример 1:
select 1,‘Значение 1’ from dual union select 2,‘Значение 2’ from dual
Пример 2:
select doc_class, doc_class_name from doc_class where doc_class in (100, 200)
TMemoPanel Идентификатор типа: 109
Русское наименование: Мемо поле с выбором из справочника
Формат SQLCombo: FieldName;TableName
FieldName - имя поля данных
tableName - имя таблицы.
Позволяет вызывать в диалоговом режиме форму просмотра значений в поле FieldName таблицы tableName и(или) добавлять запись из поля ввода в указанную таблицу.
TILNumerator Идентификатор типа: 120
Русское наименование: Автонумератор
Формирует строку по заданному шаблону. В поле sql_combo указывается код нумератора из таблицы GIS_SEQ.
TDFControler Идентификатор типа: 131
Русское наименование: Контроллер полей
*Родитель для [132.TDFControllerNoNull ]
Не визуальный.
Позволяет отслеживать изменения значений полей и изменять значения в других полях в соответствии с запросом в SQLCombo.
Например:
select cost_centre from department where department=:department
здесь, при изменении значения в поле department компонент устанавливает значение для целевого поля cost_centre в открытой форме.
Если значение не найдено TDFController установит значение целевого поля в NULL.
Название целевого поля следует указать в качестве алиаса для результата запроса, если название поля результата отличается от названия целевого поля, или результирующее поле формируется функцией, или оно представлено текущим значением поля открытой формы.
Если в открытой форме есть несколько полей 131 типа, они выполняются в порядке, соответствующем Id поля, в которых они размещены.
TDFControlerNoNull Идентификатор типа: 132
Русское наименование: Контроллер полей
*Дочерний от компонента [131 TDFControler]
Контроллер полей. Не вставляет значения, если запись не найдена.
TDFEnableControler Идентификатор типа: 134
Русское наименование: Управление видимостью, доступностью
Изменение доступности и видимости компонентов. Не визуальный.
Формат SQLCombo:
select 'имя_поля', номер_действия from dual
где,
имя_поля – поле, над которым будет производиться действие [номер_действия]
номер_действия (цифра):
1 – сделать невидимым
2 – сделать неактивным
3 – вернуть стандартное состояние поля.
Пример 1:
SELECT 'VIEWNAME', decode( :TABLEID, 100, 2, 3 ) from dual
Поле VIEWNAME станет неактивным, если TABLEID=100, иначе возвращается к стандартному состоянию.
Пример 2:
SELECT 'WORK_CONDITION', decode(:COD, null, 3,'41',3,2) from dual union all
SELECT 'LONG_SERVICE', decode(:COD, null, 3, '41', 3,2) from dual union all
SELECT 'PENSIONERS', decode(:COD, null, 3, '41', 3, '42', 3,2) from dual union all
SELECT 'ALL_OTHERS', decode( :COD, null, 3, '41', 3, '42',3,2) from dual
Поля WORK_CONDITION, LONG_SERVICE, PENSIONERS, ALL_OTHERS остаются в рабочем состоянии, если COD=null или CODE=’41’ или COD=’42’, иначе указанные поля станут неактивными.
TDBDialogFilterEx Идентификатор типа: 141
Русское наименование: Поле редактирования с диалогом, с вычислением визуального значения
Отличается от компонента 42 тем, что при вычислении визуального значения учитываются критерии, используемые для построения списка.
TILKeysDBCombo Идентификатор типа: 333
Русское наименование: Выпадающий список
Выпадающий список строится на основании внешнего ключа.
TDBComboDialogVarTbl Идентификатор типа: 410
Русское наименование: Диалог
Позволяет вызвать в диалоговом режиме форму просмотра с вставкой выбранной записи. Форма описывается в формате XML.
Пример 1:
<combo>
<value>
<id-field>NOMENCL</id-field>
<display-field>NOMENCL_SHORT_NAME</display-field>
<display-table>NOMENCL</display-table>
</value>
<popup>
<table>NOMENCL_GROUP</table>
</popup>
</combo>
Пример2:
<combo>
<value><id-field type="field">FIELD_PK_BD</id-field>
<display-field type="field">FIELD_DISPLAY_BD</display-field>
<display-table type="field">TABLENAME</display-table>
</value>
<popup>
<table type="field">TABLENAME_DISPLAY</table>
<filter>
<field type="field" name= 'FILTERFIELD1'>:FILTERVALUE1</field>
<field type="field" name= 'FILTERFIELD2'>:FILTERVALUE2</field>
</filter>
</popup>
</combo>