![]() |
|
Модераторы: Akina |
![]()
|
|
| Depeche_14 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 23.1.2005 Репутация: нет Всего: нет |
Есть такая проблема: Существуют три таблицы: 1-ая - Личные данные, с полями "Код", "ФИО", "Улица", "Дом"; 2-ая - Улицы, с полями "Код", "Название улицы"; 3-я - Дома, с полями "Код", "Номер дома". Все таблицы естественно связаны между собой. Таблицы "Улицы" и "Дома" - это таблицы справочники. Нужно это для того, чтобы потом формировать отчеты по названию улицы и номера дома.
Как мне сделать форму (тип формы - ленточный), в которой выводятся поля: ФИО, Адрес. Причем в поле Адрес должны быть объединены данные из таблиц Улицы и Дома (в смысле название улицы и номер дома). Форма должна работать только в режиме отображения данных. И еще вопрос: можно ли создать в этой форме поле поиска? К примеру начинаю вводить в это поле начальные буквы фамилии, а текущая запись формы "перескакивает" на соответствующую подходящую по буквам фамилию. Спасибо большое заранее. |
|||
|
||||
| lovermann |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 285 Регистрация: 28.12.2004 Где: Прага Репутация: нет Всего: 8 |
А на каком языке это надо реализовывать?
|
|||
|
||||
| Akina |
|
||||||||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
чего???
да, можно. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
||||||||
|
|||||||||
| ustas |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 47 Регистрация: 6.12.2004 Репутация: нет Всего: нет |
Ленточные формы на основе запроса из ответа Akina можно быстро сделать с помощью Автоформы, чтобы поля были в режиме просмотра в свойствах каждого поля указываешь блокировка - да, ну а поле поиска, надо дружить с VBA (определись какого вида оно должно быть и пиши обработчик событий)
|
|||
|
||||
| iopp |
|
|||
|
Unregistered |
А для поиска сделать фильтр: несвязанный edit положить на форму, а в его обработчике change
название_формы_на_которой_edit_лежит.Form.Filter = "(поле like ('" + filt.Text + "%'))" название_формы_на_которой_edit_лежит.Form.FilterOn = True |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
Если реализовывать указанную выше схему с самостоятельным построением текста запроса - источника данных формы, лучше именно в него добавить WHERE и сделать REQUERY. Идеологически правильнее. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Depeche_14 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 23.1.2005 Репутация: нет Всего: нет |
Ввожу такой код как вы сказали, а при попытке сохранения запроса выдается сообщение: "Ошибка синтаксиса (пропущен оператор) в выражении запроса '[Личные данные]![Улица] = [Улицы]![Код] INNER JOIN [Дома] ON [Личные данные]![Дом] = [Дома]![Код]'. А вот если убираю вторую инструкцию INNER JOIN и все, что за ней следует, то вроде бы запрос работает, вот только приходится вручную вводить номер дома, и у всех ФИО он становится одинаковым... Как быть? |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
А ты головку напряги да скобочки расставь... здесь тебе помогают, а не за тебя делают.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Depeche_14 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 23.1.2005 Репутация: нет Всего: нет |
Сейчас попробую
Добавлено @ 13:42 Блин что-то не получается... |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
Покажи, как поставил скобки, и приведи свое объяснение почему именно так. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Depeche_14 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 23.1.2005 Репутация: нет Всего: нет |
SELECT [Личные данные]![ФИО], [Улицы]![Название улицы] & [Дома]![Номер дома] AS [Адрес]
FROM [Улицы] INNER JOIN ([Дома] INNER JOIN [Личные данные] ON [Дома]![Код] = [ЛичныеДанные]![Дом]) ON [Улицы]![Код] = [Личные данные]![Улица]; Вот сейчас вроде получилось, только, честно говоря, не понял как. Я нигде не могу найти синтаксис инструкции INNER JOIN. Буду признателен, если просвятите |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
Открываешь конструктор запросов. Правый клик - режим SQL. Набираешь JOIN, ставишь курсор в сетедину, нажимаешь F1. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Depeche_14 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 23.1.2005 Репутация: нет Всего: нет |
[QUOTE=Akina,14.2.2005, 17:41][/QUOTE]
Открываешь конструктор запросов. Правый клик - режим SQL. Набираешь JOIN, ставишь курсор в сетедину, нажимаешь F1.[/QUOTE] Может, у меня какой-нибудь компонент справки не установлен, но конкретно по INNER JOIN там ничего нет |
|||
|
||||
| Depeche_14 |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 55 Регистрация: 23.1.2005 Репутация: нет Всего: нет |
Т.е. я обычным образом создаю на форме поле. Какому событию сопоставить указанный код? И как будет выглядеть поиск записи? |
|||
|
||||
| Akina |
|
||||||||||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 30 Всего: 454 |
LostFocus, Validate, KeyPress(vbEnter)... это уже ТЕБЕ решать
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
||||||||||
|
|||||||||||
![]()
|
| Правила форума "MS Access" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MS Access | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |