35 / 27 / 0
Регистрация: 11.10.2011
Сообщений: 380
|
|
1 | |
Поиск при наборе и сохранение в связанных таблицах22.11.2015, 21:27. Показов 1613. Ответов 30
Метки нет (Все метки)
На форме присутствуют данные из двух таблиц. Таблицы между собой связаны отношением один к многим.
1) Нужно что б при наборе текста в поле формы "Корреспондент", производился поиск из таблицы корреспондент и подсвечивался, если такого корреспондента нет, то подсветка прекращалась и пользователь вносил нового контрагента в поле формы. 2) После нажатия кнопки "Ок" при сохранении учитывал идентификатор найденного или созданного нового корреспондента таблицы Корреспондент в поле "Код_корреспондента" таблицы РК. Такой функционал имеется в Excel при наборе Excel подсказывает ранее набранный текст. Так же такая возможность присутствует в выпадающем списке, но в выпадающем списке невозможно добавить новую запись. Попытался чето реализовать, но понимаю что получается "не очень красиво". А с поиском не могу понять как его реализовать.
0
|
22.11.2015, 21:27 | |
Ответы с готовыми решениями:
30
Контекстный поиск в связанных таблицах Access Отбор записей с связанных таблицах Отбор данных в связанных таблицах Необходимо найти запись в связанных таблицах |
35 / 27 / 0
Регистрация: 11.10.2011
Сообщений: 380
|
|
24.11.2015, 10:55 [ТС] | 21 |
0
|
26806 / 14485 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
||||||
24.11.2015, 11:06 | 22 | |||||
Сообщение было отмечено wildwolf007 как решение
Решение
Но можно заменить символы перевода строки и возврата каретки на пробел в источнике комбо. Тогда весь текст будет виден. Запрос-источник примерно такой
1
|
шапоклякистка 8-го дня
|
|
24.11.2015, 11:12 | 23 |
В нем все понятно, он просто не имеет смысла. Примерно как "как вылечить рыбу от воспаления легких". Его невозможно ни уточнить, ни переформулировать, ни ответить. У рыбы нет леких.
В аксес нет ячеек. Элемент управления "поле со списком" выводит только одну строку. Много строк выводит элемент "поле", но в нем нет подстановки текста по мере ввода. Добавлено через 4 минуты Так что, если вы хотите видеть именно многострочное поле в виде списка для выбора - предлагаю думать в направлении вот каком: Сделать поле, в котором начать печатать текст. Рядом разместить вложенную ленточную форму, в которой показывать набор записей с полным адресом. По мере ввода теста в поле фильтровать набор записей в форме. По двойному клику на записи копировать ее текст в поле ввода.
0
|
35 / 27 / 0
Регистрация: 11.10.2011
Сообщений: 380
|
|
24.11.2015, 11:32 [ТС] | 24 |
mobile спасибо за Ваше предложение, но его принять нецелесообразно т.к. при печати данного адреса на конверте придется опять расставлять переносы.
0
|
35 / 27 / 0
Регистрация: 11.10.2011
Сообщений: 380
|
|
24.11.2015, 12:39 [ТС] | 25 |
При использовании поля со списком происходит подсвечивание набираемого текста это очень удобно. Прикрепил файл базы попробуйте набрать слово "ПАО" плюс наберите новое значение добавится новое значение в талицу.
texnik-san идея примерно понятна, а реализация немного затрудняюсь представить. Должен будет работать цикл, который будет считывать вводимые символы или это будет запрос?
0
|
шапоклякистка 8-го дня
|
|
25.11.2015, 08:19 | 26 |
Не придется. Mobile не предлагает навсегда менять данные, хранящиеся в таблице. Он предложил вариант изменить форму их отображения в поле со списком. Так, чтобы адрес уместился в одну строку.
Добавлено через 8 часов 42 минуты Нужен просто обработчик события "Внесены изменения" или "Изменение", который будет либо модифицировать запрос - источник данных вложенной формы, либо - что проще - просто применять к ней фильтр.
2
|
35 / 27 / 0
Регистрация: 11.10.2011
Сообщений: 380
|
|
25.11.2015, 09:31 [ТС] | 27 |
mobile спасибо за подсказку я не так понял. Хорошая идея попробую поколдовать.
Добавлено через 57 секунд И заморачиваться с ленточной формой не нужно. Добавлено через 11 минут Попробовал все получилось. Спасибо всем. По теме даны исчерпывающие ответы.
0
|
35 / 27 / 0
Регистрация: 11.10.2011
Сообщений: 380
|
|
02.12.2015, 22:00 [ТС] | 28 |
mobile, Ваше решение получилось, но когда выбираем в поле со списком отображается без отступов. Как сделать что б отступы все таки оставлялись в поле со списком после выбора? Хотя на функциональность это не влияет т.к. используется в дальнейшем ключевое поле, но это немного смущает и запутывает пользователя.
Предполагаю можно вывести где-нибудь невидимое поле в которое сохранить код выбранной строки и после обновления как-то перезаписать значение в выпадающем списке с замещением значения без переносов на значение с переносами ? Насколько мое предложение "костыльное" может у Вас имеется другая интересная идея ?
0
|
8860 / 5908 / 585
Регистрация: 27.03.2013
Сообщений: 19,573
|
|
02.12.2015, 22:05 | 29 |
Не верую.
mobile - по умолчанию не может чего то там накосячить, может это вы сами где то чего то недоусмотрели и неправильно ввели.
1
|
35 / 27 / 0
Регистрация: 11.10.2011
Сообщений: 380
|
|
02.12.2015, 22:19 [ТС] | 30 |
Ну вот что получилось в поле корреспондент после выбора отображается без переходов на новую строку.
1
|
35 / 27 / 0
Регистрация: 11.10.2011
Сообщений: 380
|
|
02.12.2015, 22:20 [ТС] | 31 |
Но если добавим нового корреспондента с переходами на новую строку, то все будет норм.
0
|
02.12.2015, 22:20 | |
02.12.2015, 22:20 | |
Помогаю со студенческими работами здесь
31
Как реализовать запрос в связанных таблицах? Маска ввода в связанных таблицах. ACCESS Синхронизация связанных полей в разных таблицах Автоматическое подставление индекса в связанных таблицах Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |