синхронизация 2-ух списков
Модератор: Naeel Maqsudov
-
- Сообщения: 163
- Зарегистрирован: 05 мар 2009, 11:27
Добрый день, нужна ваша помощь в ACCESS
столкнулся с проблемой. Есть поле со списком, которое подтягивает данные из большой таблицы. И выводит сразу 2 поля значений.
к примеру:
Человек [Имя | Фамилия] - тип первого поля со списком
и
Год рождения [год] - тип второго поля со списком
имя и фамилия находятся одной таблице, там же есть год рождения, но его выводить в поле "Человек" не надо.
В поле год рождения, это отдельная таблица, откуда подсасывает данные поле со списком "год рождения"
СУТЬ ВОПРОСА:
Как сделать так. что бы при выборе года, то был выбор имен только людей этого года. Тоесть список сокращался. Заранее спасибо !
столкнулся с проблемой. Есть поле со списком, которое подтягивает данные из большой таблицы. И выводит сразу 2 поля значений.
к примеру:
Человек [Имя | Фамилия] - тип первого поля со списком
и
Год рождения [год] - тип второго поля со списком
имя и фамилия находятся одной таблице, там же есть год рождения, но его выводить в поле "Человек" не надо.
В поле год рождения, это отдельная таблица, откуда подсасывает данные поле со списком "год рождения"
СУТЬ ВОПРОСА:
Как сделать так. что бы при выборе года, то был выбор имен только людей этого года. Тоесть список сокращался. Заранее спасибо !
-
- Сообщения: 526
- Зарегистрирован: 04 фев 2007, 18:37
- Откуда: Сургут
- Контактная информация:
Здравствуйте kuznetsovSergey.
для получения реальной помощи выложите архив с наработкой - файлом БД.
Объяснения "на пальцах" не эффективны.
Евгений.
для получения реальной помощи выложите архив с наработкой - файлом БД.
Объяснения "на пальцах" не эффективны.

Евгений.
-
- Сообщения: 163
- Зарегистрирован: 05 мар 2009, 11:27
в этом то и дело ... в базе данные подтягиваются из удаленного SQL server-а, поэтому работать у вас это не будет ...
проводил тесты, столкнулся с такой проблемой.
одно поле со списком работает безупречно, потому что оно тянется из обычной таблички в этой же базе данных.
Второе поле со списком из SQL сервера тоже тянет всё отлично. Заходя в запрос, для подкачки данных из SQL server добавляю отбор по условию, года рождения. То список сразу становится пустым. НО !!! если ввести в поле со списком год, и не выделять другое поле со списком, а просто в ручную запустить запрос, то он работает, и выполняет всё правильно.
Грубо говоря, если заполнить год, и запустить запрос в ручную, то он работает. Если ввести год, и выделить второе поле со списком, то он почему то обнуляет данные.
Подскажите пожалуйста, что может быть ?
Приведите пожалуйста пример, как можно сделать синхронизацию списков.
Что бы при выборе года в одном списке. в другой списке уже были имена и фамилии только этого года. Заранее спасибо!
проводил тесты, столкнулся с такой проблемой.
одно поле со списком работает безупречно, потому что оно тянется из обычной таблички в этой же базе данных.
Второе поле со списком из SQL сервера тоже тянет всё отлично. Заходя в запрос, для подкачки данных из SQL server добавляю отбор по условию, года рождения. То список сразу становится пустым. НО !!! если ввести в поле со списком год, и не выделять другое поле со списком, а просто в ручную запустить запрос, то он работает, и выполняет всё правильно.
Грубо говоря, если заполнить год, и запустить запрос в ручную, то он работает. Если ввести год, и выделить второе поле со списком, то он почему то обнуляет данные.
Подскажите пожалуйста, что может быть ?
Приведите пожалуйста пример, как можно сделать синхронизацию списков.
Что бы при выборе года в одном списке. в другой списке уже были имена и фамилии только этого года. Заранее спасибо!
-
- Сообщения: 526
- Зарегистрирован: 04 фев 2007, 18:37
- Откуда: Сургут
- Контактная информация:
Здравствуйте kuznetsovSergey.
1. "Как сделать так. что бы при выборе года..." - обновление записей.
Возможно незавершенная конструкция, т.е. в условии отбора источника строк (запроса) поля со списком задано изменяющееся условие, а после после изменения этого условия (в Вашем случае - обновление поля со списком 2) набор записей не обновляется. При обращении непосредственно к запросу "запустить запрос в ручную..." он обращается к текущим данным условия отбора и обновляется. Добавьте на событие После обновления поля со списком 2 подобный код: и проблема уйдет.
2. "из удаленного SQL server-а..."
данные с SQL сервера "одним кликом" перекладываются в БД MS Access
и если существует подключение к БД, а оно у Вас есть, "работать у вас это не будет..." - не оправдание.
Евгений.
1. "Как сделать так. что бы при выборе года..." - обновление записей.
Возможно незавершенная конструкция, т.е. в условии отбора источника строк (запроса) поля со списком задано изменяющееся условие, а после после изменения этого условия (в Вашем случае - обновление поля со списком 2) набор записей не обновляется. При обращении непосредственно к запросу "запустить запрос в ручную..." он обращается к текущим данным условия отбора и обновляется. Добавьте на событие После обновления поля со списком 2 подобный код:
Код: Выделить всё
Private Sub ПолеСоСписком2_AfterUpdate()
ПолеСоСписком1.Requery
End Sub
2. "из удаленного SQL server-а..."
данные с SQL сервера "одним кликом" перекладываются в БД MS Access
и если существует подключение к БД, а оно у Вас есть, "работать у вас это не будет..." - не оправдание.

Евгений.
-
- Сообщения: 163
- Зарегистрирован: 05 мар 2009, 11:27
ну собственно вот сам пример, при выборе первого списка, запрос обрабатывается. Но не подтягивается вторым списком , вот пример базы. Жду помощи ! =)
Скачать файл TEST.rar
Скачать файл TEST.rar
-
- Сообщения: 526
- Зарегистрирован: 04 фев 2007, 18:37
- Откуда: Сургут
- Контактная информация:
Здравствуйте kuznetsovSergey.
не выкладывайте образцы на сторонних серверах, их можно выложить непосредствыенно на странице упаковав в ZIP архив.
Евгений.
не выкладывайте образцы на сторонних серверах, их можно выложить непосредствыенно на странице упаковав в ZIP архив.
Евгений.
- Вложения
-
- TEST_.zip
- (13.63 КБ) 36 скачиваний
-
- Сообщения: 163
- Зарегистрирован: 05 мар 2009, 11:27
АААА МЕГА КРУТО !!! СПАСИБО ОООООООООГРОМНОЕ !!!!
--------------------------------------------------------------------------------
Добавлено сообщение
--------------------------------------------------------------------------------
попробовал сделать третий список на той же основе, не получается. Не пойму систему, как это осуществить. И что бы каждое содержимое из трех списков зависило от выбранного в двух других.
ЗАРАНЕЕ СПАСИБО !
--------------------------------------------------------------------------------
Добавлено сообщение
--------------------------------------------------------------------------------
попробовал сделать третий список на той же основе, не получается. Не пойму систему, как это осуществить. И что бы каждое содержимое из трех списков зависило от выбранного в двух других.
ЗАРАНЕЕ СПАСИБО !
-
- Сообщения: 163
- Зарегистрирован: 05 мар 2009, 11:27
помогите пожалуйста ))) как сделать такую же фишку, только с 3 и более полей со списком ? оО
-
- Сообщения: 526
- Зарегистрирован: 04 фев 2007, 18:37
- Откуда: Сургут
- Контактная информация:
Здравствуйте Сергей. (надеюсь правильно понял по нику kuznetsovSergey)
"такую же фишку" при использовании "... и более" контролов использовать не стоит.
Сложную SQL конструкцию источников данных учитывающую логику отображения информации, по нескольким условиям других контролов (полей со списком), в MS Access лучше собирать в VBA коде, считывая только текстовые значения контролов.
Не помещая имена имена контролов в SQL конструкцию источника строк (...[Forms]![Форма1]![ПолеСоСписком0]...) упрощаем задачу для JET ядра, на которое ложится задача выполнения этих "конвертаций".
Евгений.
"такую же фишку" при использовании "... и более" контролов использовать не стоит.
Сложную SQL конструкцию источников данных учитывающую логику отображения информации, по нескольким условиям других контролов (полей со списком), в MS Access лучше собирать в VBA коде, считывая только текстовые значения контролов.
Не помещая имена имена контролов в SQL конструкцию источника строк (...[Forms]![Форма1]![ПолеСоСписком0]...) упрощаем задачу для JET ядра, на которое ложится задача выполнения этих "конвертаций".
Евгений.
- Вложения
-
- TEST_2.zip
- (24.57 КБ) 40 скачиваний
-
- Сообщения: 163
- Зарегистрирован: 05 мар 2009, 11:27
Ваш пример идеален, то что нужно. Но я просто не понимаю принцип как это работает , и меня это жутко расстраивает.
Спасибо за помощь
Спасибо за помощь