Формы: вкладка «Данные»

Содержимое

# Вкладка «Данные»

Вкладка Данные позволяет задать источник данных для выбранного элемента управления.

Доступ к этой команде

#### Из контекстного меню:

Выберите вкладку Свойства ЭУС - Данные.

#### Из интерфейса с вкладками:

Выберите вкладку Формы - Свойства ЭУС - Данные.

#### Из панелей инструментов:

Свойства ЭУС

Для форм, связанных с базой данных, которая задана в свойствах формы. Соответствующие функции можно найти на вкладке Данные.

Возможные параметры для вкладки Данные элемента управления зависят от конкретного элемента управления. При этом отображаются только те параметры, которые доступны для данного элемента управления и контекста.
Доступны следующие поля:

## Значение индекса (вкл.)

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

Значения индекса для веб-форм

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

Например, если имеется два поля элементов управления для вариантов "женский" и "мужской" и полю "женский" назначено значение индекса 1, а полю "мужской" - значение индекса 2, значение 1 передаётся серверу, когда пользователь выбирает поле "женский", а значение 2 - когда пользователь выбирает поле "мужской".

Значения индекса для форм базы данных

Для форм базы данных можно также характеризовать состояние параметра или флажка с помощью значения индекса, хранящегося в базе данных. Если задано три параметра, например, "не завершено", "завершено" и "повторная отправка" с соответствующими значениями индекса ToDo", "OK" и "RS", эти значения индекса появятся в базе данных, если будет выбран соответствующий параметр.

## Значение индекса (выкл.)

Флажки и переключатели в электронных таблицах могут быть привязаны к ячейкам в текущем документе. Если элемент управления активен, то в ячейку копируется значение, введённое в поле Значение индекса (вкл.). Если элемент управления неактивен, в ячейку копируется значение из поля Значение индекса (выкл.).

## Исходный диапазон ячеек

Ввод диапазона ячеек, содержащих записи для списка или поля со списком, в электронную таблицу. Если вводится диапазон из нескольких столбцов, для заполнения элемента управления используется только содержимое самого левого столбца.

## Поле данных

В формах базы данных можно связать элементы управления с полями данных.

Имеется несколько возможностей:

1. Первый случай. В форме только одна таблица.

   В поле Поле данных укажите поле источника данных таблицы, содержимое которого должно отображаться.

2. Второй случай. Элемент управления принадлежит подчинённой форме, которая создана запросом SQL.

   В поле Поле данных укажите поле инструкции SQL, содержимое которого должно отображаться.

1. Третий случай. Поля со списком

   ,Для полей со списком поле источника данных таблицы, в котором значения вводятся или выбираются пользователем, должно быть сохранено, если указано в поле Поле данных. Значения, выводимые в списке поля со списком, основаны на инструкции SQL, которая вводится в поле Содержимое списка.

2. Четвёртый случай: Списки

   Источник данных таблицы не содержит данных, которые должны отображаться, за исключением таблицы, связанной с таблицей источника данных через общее поле данных.

   Если необходимо, чтобы в списке отображались данные из таблицы, которая связана с текущей таблицей источника данных, в поле Поле данных укажите поле таблицы источника данных, на которое ссылается содержимое списка. Можно также указать поле базы данных, которое управляет отображением данных в форме. Это поле данных содержит ссылку на другую таблицу, если обе таблицы могут быть связаны через общее поле данных. Обычно это поле данных, в котором хранятся уникальные идентификационные номера. Поле данных, содержимое которого отображается в форме, определяется инструкцией SQL в поле Содержимое списка.

Списки работают со ссылками. Они могут быть внедрены со связанными таблицами или с помощью инструкций SQL (четвёртый случай), или с помощью списков значений:

Ссылки через связанные таблицы (инструкции SQL)

Если необходимо, чтобы в списке отображались данные из таблицы базы данных, связанной с таблицей, на которой основана данная форма, через общее поле данных поле ссылки таблицы формы указывается в поле Поле данных.

Ссылка создаётся с помощью инструкции SQL Select, которая, если выбрать «SQL» или «Native SQL», указана в разделе Тип содержимого списка в поле Содержимое списка Например, таблица «Заказы» связана с данным элементом управления формы, а в базе данных с таблицей «Заказы» связана таблица «Клиенты». Можно использовать следующую инструкцию SQL:

SELECT CustomerName, CustomerNo FROM Customers,

где "CustomerName" - это поле данных из связанной таблицы "Клиенты", а "CustomerNo" - поле таблицы "Клиенты", которое связано с полем таблицы формы "Заказы", указанным в поле Поле данных.

Ссылки, использующие списки значений

Для списков можно использовать списки значений. Списки значений - это списки, которые определяют значения индекса. Таким образом, элемент управления в форме не отображается непосредственно в содержимом поля базы данных, за исключением значений, присвоенных в списке значений.

При работе со значениями индекса списка значений содержимое поля данных, указанного в поле Поле данных в форме, невидимо, за исключением назначенных значений. Если выбрать значение "Valuelist" на вкладке Данные в разделе Тип содержимого списка и назначить значение индекса видимым элементам списка в форме в поле Элементы списка (вводится на вкладке Общие), то значения индекса будут сравниваться с данными в текущем поле данных. Если значение индекса соответствует содержимому поля данных, связанные элементы списка отображаются в форме.

## Предложение фильтра

При создании дизайна формы можно создать свойство «Суммарный фильтр» для каждого текстового поля на вкладке Данные соответствующего диалогового окна Свойства. В дальнейшем при выполнении поиска в режиме фильтра можно выбирать из всей информации, содержащейся в этих полях. Содержимое поля затем можно выбрать с помощью функции AutoComplete. Однако необходимо иметь в виду, что эта функция требует наличия большого объёма и скорости памяти, особенно при использовании в больших базах данных и поэтому пользоваться ей нужно аккуратно.

## Пустая строка - ПУСТО

Определяет как будет обрабатываться ввод пустой строки. При выборе значения «Да» ввод строки нулевой длины будет обрабатываться как значение NULL. При выборе значения «Нет» любой ввод будет обрабатываться как есть без какого-либо преобразования.

Пустая строка представляет собой строку нулевой длины (""). Значение NULL обычно отличается от пустой строки. В большинстве случаев слово NULL обозначает неопределённое значение, неизвестное значение или «значение ещё не введено».

Системы баз данных отличаются и могут обрабатывать значение NULL по-разному. См. документацию к используемой базе данных.

## Связанная ячейка

Определяет ссылку на связанную ячейку электронной таблицы. Текущее состояние или содержимое элемента управления связывается с содержимым ячейки. В следующей таблице перечислены элементы управления и соответствующий им тип ссылки:

### Флажок со связанной ячейкой

Действие | Результат
--- | ---
Установите флажок: | В связанную ячейку вводится значение ИСТИНА.
Снимите флажок: | В связанную ячейку вводится значение ЛОЖЬ.
Установите флажок с тремя состояниями в состояние «не определено»: | В связанную ячейку вводится #NV.
Введите число или формулу, которая возвращает число в связанную ячейку: | При вводе значения ИСТИНА или не 0: Флажок устанавливается. При вводе значения ЛОЖЬ или 0: Флажок снимается.
Очистите связанную ячейку или введите текст, либо введите формулу, возвращающую текст или ошибку: | Если это флажок с тремя состояниями, то флажок установлен в состояние «не определено», в противном случае флажок снят.
Выделите поле. Поле Значение индекса содержит текст: | Текст из поля Значение индекса копируется в ячейку.
Снимите выделение с поля. Поле Значение индекса содержит текст: | Пустая строка копируется в ячейку.
Поле Значение индекса содержит текст. Введите тот же текст в ячейку: | Флажок установлен.
Поле Значение индекса содержит текст. Введите другой текст в ячейку: | Флажок снят.

### Переключатель со связанной ячейкой

Действие | Результат
--- | ---
Выделите кнопку переключателя: | В связанную ячейку вводится значение ИСТИНА.
Переключатель отключается путём выбора другого переключателя: | В связанную ячейку вводится значение ЛОЖЬ.
Введите число или формулу, которая возвращает число в связанную ячейку: | Если введено значение ИСТИНА или не 0: Переключатель выделяется. Если введено значение ЛОЖЬ или 0: Выделение переключателя снимается.
Очистите связанную ячейку или введите текст, либо введите формулу, которая возвращает текст или ошибку: | Переключатель отключается.
Щёлкните по переключателю. Поле Значение индекса содержит текст: | Текст из поля Значение индекса копируется в ячейку.
Нажмите на другую кнопку из той же группы. Поле Значение индекса содержит текст: | Пустая строка копируется в ячейку.
Поле Значение индекса содержит текст. Введите этот же текст в ячейку: | Переключатель выбран.
Поле Значение индекса содержит текст. Введите в ячейку другой текст: | Выбор переключателя отменён.

### Текстовое поле со связанной ячейкой

Действие | Результат
--- | ---
Введите текст в текстовое поле: | Текст копируется в связанную ячейку.
Очистите текстовое поле: | Связанная ячейка очищена.
Введите текст или число в связанную ячейку: | Текст или число копируется в текстовое поле.
Введите формулу в связанную ячейку: | Результат вычисления формулы копируется в текстовое поле.
Очистите связанную ячейку: | Текстовое поле очищено.

### Числовое поле и поле с форматированием со связанной ячейкой

Действие | Результат
--- | ---
Введите число в поле: | Число копируется в связанную ячейку.
Очистите поле: | В связанную ячейку записывается значение 0.
Введите число или формулу, которая возвращает число в связанную ячейку: | Число копируется в поле.
Очистите связанную ячейку или введите текст, либо введите формулу, которая возвращает текст или ошибку: | В поле задано значение 0.

### Список со связанной ячейкой

Списки поддерживают два различных режима связывания, см. свойство "Содержимое связанной ячейки".

1. Связанное значение: Синхронизируйте текстовое содержимое элемента выбранного списка с содержимым ячейки.

2. Связана выбранная позиция: Позиция одного выбранного элемента в списке синхронизируется с цифровым значением в ячейке.

Действие | Результат
--- | ---
Выделите один элемент списка: | Содержимое связано: Текст элемента копируется в связанную ячейку. Выделение связано: Положение выбранного элемента копируется в связанную ячейку. Например, если выбран третий элемент, копируется число 3.
Выберите несколько элементов списка: | В связанную ячейку вводится #NV.
Снимите выделение всех элементов списка: | Связано содержимое: Связанная ячейка очищена. Выделение связано: В связанную ячейку введено значение 0.
Введите текст или число в связанную ячейку: | Содержимое связано: Найдите и выберите идентичный элемент списка. Выделение связано: Элемент списка выбран в заданной позиции (начиная с 1 для первого элемента). Если элемент не найден, снимается выделение всех элементов.
Введите формулу в связанную ячейку: | Найдите и выделите элемент списка, который совпадает с результатом вычисления формулы и режимом связи.
Очистить связанную ячейку: | Снимите выделение всех элементов в поле списка.
Измените содержимое исходного диапазона списка: | Элементы списка обновляются в соответствии с изменением. Выбор не изменяется. Это может вызвать обновление связанной ячейки.

### Поле со списком со связанной ячейкой

Действие | Результат
--- | ---
Введите текст в поле для изменения поля со списком или выберите элемент из раскрывающегося списка: | Текст копируется в связанную ячейку.
Очистите поле для редактирования поля со списком: | Связанная ячейка очищена.
Введите текст или число в связанную ячейку: | Текст или число скопировано в поле для изменения поля со списком.
Введите формулу в связанную ячейку: | Результат вычисления формулы копируется в поле для изменения поля со списком.
Очистите связанную ячейку: | Поле для редактирования поля со списком очищено.
Измените содержимое исходного диапазона списка: | Элементы раскрывающегося списка обновляются в соответствии с изменением. Поле для редактирования поля со списком и связанная ячейка не изменяются.

## Связываемое поле

Если удалить значение ячейки Связываемое поле в браузере свойств, то для отображения и обмена данными будет использоваться первое поле из набора результатов.

Это свойство для списков определяет, какое поле данных связанной таблицы отображается в форме.

Если в списке в форме должно отображаться содержимое таблицы, связанной с таблицей формы, определите в поле Тип содержимого списка, должно ли отображение определяться командой SQL или происходит обращение к (связанной) таблице. С помощью свойства Связываемое поле можно использовать индекс, чтобы указать, с каким полем данных запроса или таблицы связан список.

Свойство Связываемое поле предназначено только для форм, которые служат для обращения к нескольким таблицам. Если форма основана только на одной таблице, поле, которое должно отображаться в этой форме, указывается непосредственно в поле Поле данных. Однако если необходимо, чтобы в списке отображались данные из таблицы, которая связана с текущей таблицей через общее поле данных, связанное поле данных определяется свойством Связываемое поле.

Если в поле Тип содержимого списка выбрать "SQL", индекс, который должен быть указан, определяется командой SQL. Пример: Если в поле Содержимое списка указана команда SQL "SELECT Field1, Field2 FROM tablename", см. следующую таблицу:

Связываемое поле | Связь
--- | ---
-1 | Индекс выбранного элемента в списке связан с полем, указанным в поле Данные.
{пусто} или 0 | Поле базы данных "Field1" связывается с полем, указанным в поле Поле данных.
1 | Поле базы данных "Field2" связывается с полем, указанным в поле Поле данных.

Если в поле Тип содержимого списка выбрать "Таблица", индекс, который должен быть указан, определяется структурой таблицы. Пример: Если в поле Содержимое списка указана таблица базы данных, см. следующую таблицу:

Связываемое поле | Связь
--- | ---
-1 | Индекс выбранного элемента в списке связан с полем, указанным в поле Данные.
{пусто} или 0 | 1-й столбец таблицы связывается с полем, указанным в поле Поле данных.
1 | 2-й столбец таблицы связывается с полем, указанным в поле Поле данных.
2 | 3-й столбец таблицы связывается с полем, указанным в поле Поле данных.

## Содержимое связанной ячейки

Выберите режим связи списка со связанной ячейкой в электронной таблице.

1. Связанное значение: Синхронизируйте текстовое содержимое выбранного элемента списка с содержимым ячейки. Выберите «Выбранная запись».

2. Связана выбранная позиция: Позиция одного выбранного элемента в списке синхронизируется с цифровым значением в ячейке. Выделите «Позиция выбранной записи».

## Содержимое списка

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

В случае форм баз данных источник данных определяет элементы списка или поля со списком. В зависимости от выбранного типа можно выбирать различные источники данных в поле Содержимое списка при условии, что эти объекты существуют в базе данных. Здесь возможны все доступные объекта для типа, выбранного в поле Тип содержимого списка. Если в качестве типа выбрано «Список значений», можно использовать ссылки для форм базы данных. Если отображение элемента управления управляется командой SQL, здесь вводится инструкция SQL.

Примеры инструкций SQL.

Для списков инструкция SQL может иметь следующий вид:

SELECT field1, field2 FROM table,

Здесь "table" - это таблица, данные которой отображаются в списке элемента управления (таблица списка). "field1" - поле данных, которое определяет видимые элементы в форме, его содержимое отображается в списке. "field2" - поле таблицы списка, которое связано с таблицей формы (таблица значений) через поле, указанное в Поле данных, если выбрано значение Связываемое поле = 1.

Для полей со списками инструкция SQL может иметь следующий вид:

SELECT DISTINCT field FROM table,

Здесь "field" - это поле данных из таблицы списка "table", содержимое которого отображается в поле со списком.

Списки значений для документов HTML

Для форм HTML можно ввести список значений в поле Содержимое списка. Выберите параметр "Valuelist" в поле Тип содержимого списка. Введённое здесь значение не будет отображаться в форме, оно используется для присвоения значений видимым элементам. Записи в поле Содержимое списка соответствуют тегу HTML <OPTION VALUE=...>.

В переносе данных выбранного элемента из списка или поля со списком учитываются как список значений, отображённый в форме, которая была введена на вкладке Общие в поле Элементы списка, так и список значений, введённый на вкладке Данные в поле Содержимое списка: Если в положении выделения в списке значений (<OPTION VALUE=...>) имеется (непустой) текст, он будет передан. В противном случае отправляется текст, отображённый в элементе управления (<OPTION>).

Если список значений должен содержать пустую строку, введите значение "$$$empty$$$" в поле Содержимое списка в соответствующее положение (обратите внимание на регистр символов). LibreOffice воспринимает этот ввод как пустую строку и назначает её соответствующему элементу списка.

В следующей таблице на примере списка "ListBox1" показаны связи между полями Содержимое списка HTML, JavaScript и LibreOffice. В этом случае "Item" означает элемент, отображаемый в форме.

Тег HTML | JavaScript | Элемент в списке значений элемента управления (содержимое списка) | Переданные данные
<OPTION>Item | Невозможно | "" | видимый элемент списка ("ListBox1=Item")
<OPTION VALUE="Value">Item | ListBox1.options[0].value="Value" | "Значение" | Значение, назначенное элементу списка ("ListBox1=Value")
<OPTION VALUE="">Item | ListBox1.options[0].value="" | "$$$empty$$$" | Пустая строка ("ListBox1=")

## Тип содержимого списка

Определяет данные для заполнения списков и полей со списками.

Если выбрать значение "Valuelist", все записи, введённые в поле Элементы списка вкладки Общие, отображаются в элементе управления. Для форм базы данных могут служить значения индекса (см. раздел Ссылки, использующие списки значений).

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

См. также

Вкладка «Общие»

Вкладка «События»

Пожалуйста, поддержите нас!