Присоединенный столбец access что это
Свойство BoundColumn (Присоединенный столбец)
Применение
При выборе значения из список или поле со списком свойство BoundColumnMicrosoft Office Access 2007 сообщает, какие значения столбца будут использовать в качестве значения столбца элемент управления. Если это поле связано с поле, значение в столбце, заданном свойством BoundColumn, сохраняется в поле, указанном в свойстве ControlSource. Возвращает доступное для чтения и записи значение типа Long.
выражение — обязательный аргумент. Выражение, которое возвращает один из объектов в списке «Применяется к».
Значения
Свойство BoundColumn может принимать следующие значения:
Значение свойства ListIndex, а не столбца, хранится в текущая запись. Значение свойства ListIndex первой строки — 0, вторая — 1 и так далее. Access задает свойство ListIndex при выборе элемента из списка или его части со списком. Значение 0 для свойства BoundColumn и использование значения свойства ListIndex для этого управления может быть полезно, если, например, вас интересует только хранение последовательности чисел.
(Значение по умолчанию — 1) Значение в указанном столбце становится значением, заданным для этого столбца. Если он привязан к полю, этот параметр сохраняется в этом поле в текущей записи. Для свойства BoundColumn нельзя установить значение, большее, чем параметр ColumnCount.
Свойство BoundColumn можно настроить с помощью Окно свойств, макрос или кода Visual Basic для приложений (VBA).
Для полей таблицы, свойство DisplayControl которых имеет значение Поле со списком или Список, это свойство можно настроить на вкладке Подстановка в разделе Свойства поля.
Access автоматически задает свойство BoundColumn при выборе мастера подстановок в качестве типа данных для поля в режиме конструктора таблицы.
В Visual Basic для приложений (VBA) задате свойство BoundColumn, используя число или числовое выражение, равное значению от 0 до значения свойства ColumnCount.
Замечания
Самый левый видимый столбец в поле со столбцом со столбцом (самый левый столбец, для которого свойство ColumnWidths не имеет 0) содержит данные, которые появляются в текстовом поле в представление формы или в отчет. Свойство BoundColumn (Связанный столбец) определяет, какой столбец в текстовом поле или списке будет храниться при выборе значения. Это позволяет отображать данные, которые отличаются от хранимого в качестве значения для этого управления.
Примечание: Если связанный столбец не является крайним левым видимым столбцом элемента управления (или для свойства BoundColumn установлено значение 0), то свойство LimitToList (Ограничиться списком) имеет значение Да.
Если для свойства AutoExpand (Автоподстановка) задано значение Да, Access при вводе автоматически заполнит текстовую часть поля со списком соответствующим значением из списка поля со списком.
Элемент управления Список
Элемент управления Список (ListBox) используется для представления на экране поля, возможные значения которого ограничиваются списком, причем списком недлинным. Это связано с тем, что такой список занимает много места на экране (рис. 9.14). И хотя можно использовать полосы прокрутки, чтобы посмотреть значения, которые не помещаются в выделенную область, очевидно, что для отображения длинных списков этот элемент управления не подходит.
Список может состоять из одного или нескольких столбцов, однако при выборе элемента списка в связанное с ним поле таблицы передается только одно значение, например в приведенных на рис. 9.14 списках это «КодТипа» (CategoryID) и «КодСотрудника» (EmployeeID), которые в списках даже не отображаются. Внешний вид списка и его содержимое определяются его свойствами, которые можно задать вручную, а можно воспользоваться мастером при размещении списка в форме, который, запросив нужную информацию, определит большую часть свойств автоматически. Создание списка с помощью мастера уже демонстрировалось в первой части книги. Мастер списков очень похож на Мастера, с помощью которого создаётся элемент Поле со списком (см. разд. «Создание и удаление элементов управления» гл. 5). Для того чтобы список правильно работал, нужно корректно определить его важнейшие свойства — это первые восемь свойств на рис. 9.15. Соответственно, если он работает неправильно, именно эти свойства нужно проверять в первую очередь.
Рис. 9.14. Элементы управления Список
Рис. 9.15. Свойства элемента управления Список
Значением этого свойства может быть также название таблицы или запроса. Список, базирующийся на таблице или сохраненном запросе, будет работать быстрее, чем список, у которого источник строк задан в виде инструкции SQL.
Кроме рассмотренного, существуют еще три типа источников строк для элемента управления Список (ListBox):
Если элементы списка содержат пробелы, включите их в кавычки. Чтобы все дни недели отобразились в одном столбце списка, установите значение свойства Число столбцов равным 1, а свойству Ширина столбцов присвойте любое ненулевое значение, например 2, 5см (2, 5cm).
Если нужно вывести два столбца значений, то в свойстве Источник строк в перечислении значений задаются последовательно пары значений, число столбцов устанавливается равным 2, а в свойстве Ширина столбцов задается пара значении, например 2, 5см; Зсм (2, 5cm; 3cm).
Рис. 9.16. Использование функции в качестве источника строк
Несколько слов о третьем типе источника строк списка. Эта функция должна иметь такой список аргументов:
Function Имя_функции(fid As Control, id As Variant, _
row As Variant, col As Variant, code As Variant) As Variant
Данная функция вызывается Access каждый раз, когда требуется заполнение списка элементами. Например, это происходит автоматически, когда форма, содержащая список, открывается в первый раз. Вызвать обновление содержимого списка в какой-то другой момент можно программно, с помощью метода обновления содержимого элемента управления Require. Каждый раз при обновлении содержимого списка эта функция вызывается неоднократно: с различным «кодом действия».
Поясним значения ее аргументов и возвращаемого значения.
Все значения аргументов формируются и передаются в функцию самим Access. Разработчику только остается их обработать.
О создании функции, выполняющей роль источника данных для списка или поля со списком, можно получить подробную информацию в справочной системе Access 2002, в разд. «Справка по Microsoft Access, Программирование на Visual Basic, Справочник по Visual Basic для Microsoft Access, Свойства, Q-R, RowSourceType» (Microsoft Access Help, Programming in Visual Basic, Microsoft Access Visual Basic Reference, Properties, Q-R, RowSourceType Property). Пример использования такой функции можно найти также на компакт-диске, являющемся дополнительным приложением к данной книге, который продается отдельно.
Свойство Присоединенный столбец (Bound Column), определяющее тот столбец списка, значение которого при выборе становится значением элемента управления, может иметь значение 0. В этом случае значением элемента Список (List Box) станет индекс (номер) выбранного элемента в списке.
Элемент управления Список интересен еще и тем, что он позволяет делать множественный выбор в списке, т. е. в нем можно выбрать одновременно несколько элементов, чего не позволяет делать элемент Поле со списком (Combo Box). Такая возможность требуется довольно часто, когда задаются критерии отбора записей. Например, в базе данных объектов недвижимости надо найти интересующие клиента квартиры, а его интересуют квартиры в определенных районах города. Можно, конечно, выбирать в списке по очереди сначала один район, чтобы выбрать все квартиры в данном районе, потом другой и т. д. Однако удобнее в этом случае использовать для указания интересующих районов список, в котором выбираются сразу все интересующие районы, а потом формируется соответствующий запрос к базе данных.
Определить, как пользователь будет выбирать значения из списка, можно с помощью свойства Несвязное выделение (Multi Select). Его можно найти на вкладке Другие (Other) окна свойств. По умолчанию это свойство имеет значение Отсутствует (None). В этом случае разрешается ныбор только одного элемента из списка. Но это свойство может иметь значения Простой (Simple) и Со связным выбором (Extended). В первом случае разрешается множественный выбор просто щелчком мыши по нужным элементам, а во втором список работает так, как почти все списки в Windows, т. е. можно использовать клавиши и для выделения смежных и несмежных элементов. Результаты выбора хранятся в специальном массиве и могут быть использованы программами VBA.
Иллюстрированный самоучитель по Microsoft Access 2003
Настройка форм
Просмотрев записи формы, вы наверняка обнаружите, что в новом списке и в уже существующем поле со списком отображаются одинаковые значения. Объясняется это тем, что оба элемента привязаны к одному и тому же полю таблицы Растения. В двух различных элементах управления вполне могут отображаться одни и те же данные, хотя пользователей базы данных несколько озадачивает этот факт.
Основное различие между обычным списком и полем со списком (называемым также комбинированным окном) состоит в следующем: список всегда предоставляет все данные, а поле со списком – только значение, выбранное до щелчка на кнопке раскрытия списка. Список ограничен значениями, уже хранящимися в нем. В отличие от него, поле со списком дает возможность пользователю ввести значение, отсутствующее в списке, хотя данная функция, как правило, отключена.
Рис. 13.13. Форма с новым списком
Для просмотра свойств списка и комбинированного окна перейдите в режим конструктора для формы Растения и щелкните в поле Номер типа (существовавшем в форме до добавления нового списка). Рассмотрим внимательно окно свойств.
Для изменения типа элемента управления в Access предусмотрен эффективный инструмент, который поможет модифицировать пользовательский интерфейс формы. К примеру, форма Растения в настоящий момент содержит текстовое поле для ввода имени каталога, однако все каталоги перечислены в таблице Каталоги. Преобразование текстового поля в поле со списком даст возможность пользователю выбирать значения из списка, а не вводить их самостоятельно.
Присоединенный столбец access что это
Поле со списком access – составной элемент управления, объединяющий поле и раскрывающийся список, позволяющий не только выбирать (как в простом списке), но и вводить значения.
Поле со списком позволяет экономить место в объекте базы данных (форме, таблице и др.), так как по умолчанию оно отображает одну строку списка.
Открывается список нажатием на кнопке (в правом углу элемента управления «Поле со списком access») или клавишами Alt+«стрелка вниз». При помощи простого макроса можно сделать так, чтобы поле со списком раскрывалось само при входе в него.
Чтобы ввести значение в поле со списком access, можно начать вводить значение в поле с клавиатуры или выбрать нужное значение в выпадающем списке. При вводе значений с клавиатуры помогает свойство «Автоподстановка». Если установить его как «да», то при вводе информации Access автоматически будет предлагать значения из списка, выделяя буквы предлагаемого значения после последнего введённого символа.
Если значение подходит, для его ввода надо лишь нажать клавишу Enter или Tab. Свойство «Ограничиться списком» не разрешит ввести значения, которого нет в списке. Ограничивать списком вводимые значения стоит в первую очередь для снижения вероятности ввода ошибочной информации.
Например, слово «детектив» в поле «литературный жанр» можно написать «детиктив» или «дитиктив», или ещё как-нибудь (неважно, опечатка это или следствие неграмотности оператора. Любой человек может ошибаться и даже имеет на это право).
Поле, содержащее ошибочные значения, уже нельзя правильно ни отсортировать, ни использовать в запросе. Мы зададим запрос с фильтром Like «детектив» и будет найдено, предположим, 120 книг этого жанра. Но вследствие неправильного ввода информации запрос «не увидел», к примеру, 18 книг.
Такая ситуация просто недопустима. Гораздо проще один раз и в одном месте (в базовой таблице подстановки) правильно ввести название жанра и связать эту запись с полем подстановки в таблице поставок книг отношением «один-ко-многим» (можно и не связывать. Но этот вопрос не представляется возможным обсудить в пределах одной статьи, так как слишком много информации о типах полей, связях и др.).
Другой вопрос состоит в том, стоит ли разрешать оператору добавлять новые значения в базовую таблицу подстановки (со стороны «один»). Всё зависит от конкретных задач и типа информации. Не всегда можно предугадать все возможные варианты для значений поля подстановки. Например, поле подстановки для указания пола сотрудника может принимать два значения: «мужской» и «женский». А вот попробуйте создать поле подстановки мужских или женских имён (например, мужские имена: Андрей, Андриан, Андрон, Анджей и т. д.; женские имена: Наталья, Наталия, Наталея, Натали и т. д.).
Во-первых, некоторые родители дают такие имена, которых не было раньше в природе (а это имя ещё надо ввести в базовую таблицу подстановки).
Во-вторых, схожие имена будут «рябить» перед глазами (могут быть десятки очень похожих имён, отличающихся только одной буквой).
В-третьих, быстрее ввести имя вручную побуквенно, чем искать в большом списке.
В-четвёртых, вряд ли придётся включать поле имени в простой или составной ключ, так как одних Ивановых Иванов Ивановичей в России не сосчитать (обычно для этого используют числовой код, однозначно идентифицирующий запись в таблице).
В-пятых, неправильно введённое имя, как правило, не даёт критических ошибок при фильтрации или сортировке (по причине своей неуникальности имя редко используется для таких случаев).
К тому же оно чаще всего используется в инициалах. Например, я ввёл значение «Иванов Андриан Иванович», хотя имя человека «Андрей». В поле «ФИО» получим «Иванов А. И.». Вроде как и ошибки нет.)
Создаётся поле со списком access, как правило, в режиме конструктора объекта базы данных:
— в таблицах – в области «Свойства поля» на вкладке «Подстановка» есть такой аргумент «Тип элемента управления» с выпадающим списком. Выбираем значение «Поле со списком» и выбираем следующие аргументы: тип источника строк, сам базовый источник строк, номер присоединённого столбца и другие необходимые элементы;
Создание и удаление поля подстановки
Создание поля подстановки не только делает данные более понятными, но и позволяет избежать ошибок данных, ограничивая значения, которые можно вводить. Поле подстановки может отображать понятное пользователю значение, связанное с другим значением в таблице исходных данных. Например, вам нужно записать заказ клиента в таблице «Заказы». Однако все сведения о клиентах отслеживаются в таблице «Клиенты». Вы можете создать поле подстановки, отображающее сведения о клиенте в элементе управления «поле со списком» или «список». Затем, когда вы выбираете клиента в этом элементе управления, в записи заказа сохраняется соответствующее значение, например значение первичного ключа клиента.
Примечание. В Access есть другие типы полей списков: поле списка значений, которое хранит только одно значение из допустимых, определенных в свойстве, и многозначное поле, в котором можно хранить до 100 значений, разделенных запятой (,). За дополнительной информацией обращайтесь к статьям Создание и удаление поля списка значений и Создание и удаление многозначного поля.
В этой статье
Что такое поле подстановки?
Поле подстановки — это поле таблицы, значение которого получено из другой таблицы или запроса. По возможности следует создавать поле подстановки с помощью мастера подстановок, который упрощает процесс, автоматически заполняя соответствующие свойства полей и создавая нужный тип связи между таблицами.
Создание поля подстановки в Конструкторе
Откройте таблицу в режиме Конструктор.
В первой доступной пустой строке щелкните ячейку в столбце Имя поля и введите имя поля подстановки.
В столбце Тип данных этой строки щелкните стрелку, а затем в раскрывающемся списке выберите пункт Мастер подстановок.
Примечание. Мастер подстановок в зависимости от выбранных в нем настроек создает списки трех типов: поле подстановки, поле списка значений и многозначное поле.
Внимательно следуйте указаниям мастера.
На первой странице выберите вариант Объект «поле подстановки» получит значения из другой таблицы или другого запроса и нажмите кнопку Далее.
На второй странице выберите таблицу или запрос со значениями и нажмите кнопку Далее.
На третьей странице выберите одно или несколько полей и нажмите кнопку Далее.
На четвертой странице выберите порядок сортировки для полей при отображении в списке и нажмите кнопку Далее.
На пятой странице настройте ширину столбца, чтобы упростить чтение значений и нажмите кнопку Далее.
На шестой странице при необходимости измените имя поля, установите флажок Включить проверку целостности данных, выберите вариант Каскадное удаление или Ограничить удаление и нажмите кнопку Готово.
Дополнительные сведения о применении проверки целостности данных см. в статье Создание, изменение и удаление отношения.
Сведения о связанных и отображаемых значениях
Поле подстановки предназначено для замены отображаемого числа, например ИД, более понятным значением, таким как имя. Например, вместо отображения идентификатора контакта Access может показать имя контакта. Идентификатор контакта является связанным значением. Оно автоматически ищется исходной таблице или запросе и заменяется именем контакта. Имя контакта является отображаемым значением.
Важно понимать разницу между отображаемым и связанным значением поля подстановки. Отображаемое значение автоматически выводится в режиме таблицы (по умолчанию). Тем не менее сохраняется именно связанное значение, использующееся в условиях запроса, а также приложением Access при связывании таблиц.
Ниже в примере поля подстановки «КомуНазначено»:
1 Имя сотрудника является отображаемым значением
2 ИД сотрудника является связанным значением, сохраняемым в свойстве Присоединенный столбец поля подстановки.
Обновление свойств поля подстановки
Если для создания поля подстановки используется мастер подстановок, его свойства задаете вы. Чтобы изменить структуру многозначного поля, укажите свойства Подстановки.
Откройте таблицу в Конструкторе.
Щелкните имя поля подстановки в столбце Имя поля.
В разделе Свойства поля откройте вкладку Подстановка.
Задайте свойству Тип элемента управления значение Поле со списком, чтобы видеть все доступные изменения свойств, отражающие ваш выбор. Дополнительные сведения см. в разделе Свойства поля подстановки.
Удаление поля подстановки
Важно! При удалении поля подстановки, в котором содержатся данные, эти данные теряются без возможности восстановления, отменить это действие нельзя. Поэтому перед удалением каких-либо полей или других компонентов базы данных создавайте резервную копию базы данных. Также удаление поля подстановки может быть запрещено, так как применяется проверка целостности данных. Дополнительные сведения см. в статье Создание, изменение и удаление отношения.
Удаление из режима таблицы
Откройте таблицу в режиме Режим таблицы.
Найдите поле подстановки, щелкните правой кнопкой мыши строку заголовка и выберите команду Удалить поле.
Нажмите кнопку Да, чтобы подтвердить удаление.
Удаление из конструктора
Откройте таблицу в режиме Конструктор.
Щелкните область выделения строки рядом с полем подстановки, а затем нажмите клавишу DELETE, либо щелкните правой кнопкой мыши область выделения строки и выберите команду Удалить строки.
Нажмите кнопку Да, чтобы подтвердить удаление.
Свойства поля подстановки
Тип элемента управления
Укажите это свойство, чтобы задать отображаемые свойства:
Поле со списком содержит список всех доступных свойств.
Список содержит список всех доступных свойств кроме свойств Число строк списка, Ширина списка и Ограничиться списком.
Текстовое поле не отображает свойства и преобразует поле в поле, доступное только для чтения.
Тип источника строк
Определяет, откуда брать значения для поля подстановки: из другой таблицы или запроса либо из списка указанных вами значений. В качестве источника вы также можете выбрать имена полей таблицы или запроса.
Указывает таблицу, запрос или список значений, из которых извлекаются значения для поля подстановки. Если свойство Тип источника строк имеет значение Таблица или запрос или Список полей, в этом свойстве должно быть указано имя таблицы или запроса либо инструкция SQL, представляющая запрос. Если свойство Тип источника строк имеет значение Список значений, это свойство должно содержать список значений, разделенных точками с запятой.
Указывает столбец в источнике строк, в котором содержится значение, хранящееся в столбце подстановок. Может принимать любое значение в диапазоне между 1 и числом столбцов в источнике строк.
Столбец, из которого извлекается значение, может отличаться от отображаемого столбца.
Определяет число столбцов в источнике строк, которые можно отобразить в поле подстановки. Чтобы выбрать столбцы для отображения, нужно задать ширину столбцов в свойстве Ширина столбцов.
Определяет, нужно ли отображать заголовки столбцов.
Задает ширину каждого столбца. Отображаемое значение в поле подстановки — это один или несколько столбцов, для которых в свойстве Ширина столбцов указано значение, отличное от нуля.
Если столбец не нужно отображать, например столбец «Код», укажите значение «0» для его ширины.
Число строк списка
Определяет количество строк, отображаемых в поле подстановки.
Определяет ширину элемента управления, появляющегося при отображении поля подстановки.
Определяет возможность ввода значения, отсутствующего в списке.
Разрешить несколько значений
Определяет возможность выбора нескольких значений в поле подстановки.
Нельзя изменить значение этого свойства с «Да» на «Нет».
Разрешить изменение списка значений
Определяет возможность редактирования элементов поля подстановки, основанного на списке значений. Если это свойство имеет значение Да, при щелчке правой кнопкой мыши поля подстановки, основанного на списке значений из одного столбца, в меню появится команда Изменение элементов списка. Если поле подстановки содержит несколько столбцов, это свойство игнорируется.
Форма изменения элементов списка
Указывает существующую форму, используемую для изменения элементов списка в поле подстановки, основанном на таблице или запросе.
Только значения источника строк
Показывает только значения, соответствующие текущему источнику строк, если свойство Разрешить несколько значений имеет значение Да.