В настоящее время у меня есть база данных MS Access 2003, которая имеет форму, в которой набор записей основан на таблице. В этой форме также есть поле со списком, у которого есть источник управления одного из полей в связанной таблице. Набор записей является результатом запроса, который извлекает все доступные «сервисы» из другой таблицы, а идентификатор выбранной «сервисной службы» сохраняется в связанной таблице формы. Combobox имеет три столбца с шириной столбца, определенной как 0 см, 1 см, 1 см, причем столбец 1 является столбцом привязки (ID).
это позволяет мне выбрать из раскрывающегося списка «сервис», а также ввести его, с идентификатором сервиса, хранящимся в таблице. Естественно, в этой форме может быть много строк, привязанных к строкам таблицы.
Это отлично работает и отлично. Однако теперь требуется, чтобы значения в этом раскрывающемся списке основывались на другом поле. Таким образом, вместо одного набора «сервисов» в раскрывающемся списке может быть несколько наборов «сервисов», которые будут отображаться на основе другого комбинированного списка.
Мне удалось заставить его работать, изменив запрос набора записей для этого раскрывающегося списка службы, чтобы учесть другое поле и затем событие onenter () в поле со списком списка служб, сам запрос (servicelist.requery) ()) однако есть загвоздка, где, если у меня есть пять строк в форме, каждый список служб будет основан на другом поле текущих строк, а не на его соответствующем, вызывая отключение поля со списком. это не влияет на базовую таблицу, однако это довольно раздражает.
Есть предложения?
Я попытался установить для свойства «limit to list» значение «No», однако этого нельзя сделать, когда первое поле (которое является связанным полем) в выпадающем списке имеет ширину 0 см. когда я устанавливаю его не равным 0 см, тогда отображаемое значение для этого поля со списком становится полем ID, а это не то, что я хочу.