0 / 0 / 0
Регистрация: 07.02.2017
Сообщений: 4
1

Как ограничить список выбора для подгруппы (базу и скриншот прикрепил)

13.02.2017, 11:53. Показов 2266. Ответов 17
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день.

Как можно ограничить список выбора подгруппы, если в группе, которой она подчиняется выбран ее "родитель".
Возможно ли это реализовать не прибегая к помощи форм.

Подробный скриншот прикрепил, а также саму базу.

P.S.
Весь форум перерыл, так и не нашел ответа на подобный вопрос.
Миниатюры
Как ограничить список выбора для подгруппы (базу и скриншот прикрепил)  
Вложения
Тип файла: zip sample.zip (22.3 Кб, 1 просмотров)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.02.2017, 11:53
Ответы с готовыми решениями:

Как узнать видим ли список для выбора в ComboBox?
Может кто знает. Пишу примерно такой код и получаю все время 0. Хотя список для выбора открыт....

Выпадающий список как для выбора модульной позиции в Module Manager
Добрый день ув. пользователи ! Может кто-то прикручивал себе такой выпад. список как в заголовке...

Как ограничить количество запросов в базу данных с одного ip?
как ограничить кол запросов в базу данных с одного ip на определенное время?

Ошибка в SQL: Список выбора для инструкции INSERT содержит меньшее число элементов, чем список вставки
Всем привет. возникла проблема с заполнением таблицы из других таблиц. USE GO INSERT INTO ....

17
901 / 291 / 50
Регистрация: 02.12.2014
Сообщений: 1,229
13.02.2017, 12:45 2
Без форм - мне кажется, нет. А для чего нужно делать это именно непосредственно в таблице?.. В общем-то, во всех учебниках пишут, что не нужно работать в таблицах, а только через формы. Таблицы - это чисто внутренняя кухня базы, пользователь вообще не должен их видеть, по большому счету.
А что мешает использовать табличные формы? Они же на вид - точь в точь как таблица, при этом имеют функционал форм (например, реакцию на события и т.д.).
3
0 / 0 / 0
Регистрация: 07.02.2017
Сообщений: 4
13.02.2017, 13:48  [ТС] 3
Цитата Сообщение от Kkarn Посмотреть сообщение
Без форм - мне кажется, нет. А для чего нужно делать это именно непосредственно в таблице?.. В общем-то, во всех учебниках пишут, что не нужно работать в таблицах, а только через формы. Таблицы - это чисто внутренняя кухня базы, пользователь вообще не должен их видеть, по большому счету.
А что мешает использовать табличные формы? Они же на вид - точь в точь как таблица, при этом имеют функционал форм (например, реакцию на события и т.д.).
Спасибо! Понял, буду ковырять формы тогда.
Еще вопрос, где выставить в параметрах формы "родительскую" группу? Я что-то с ходу не нашел
0
901 / 291 / 50
Регистрация: 02.12.2014
Сообщений: 1,229
13.02.2017, 18:05 4
Лучший ответ Сообщение было отмечено mustdayker как решение

Решение

Тут еще дело в том, что если вы хотите реализовать это именно в ТАБЛИЧНОЙ форме, то связанные выпадающие списки вам преподнесут еще один сюрприз... Сам когда-то с этим столкнулся. Если по событию изменения первого списка - менять источник данных второго списка, то он будет меняться для всех полей этой табличной формы, и получится ерунда...
Исходя из вашего примера с картинки: если, допустим, заполнить первую строку с маркой Мерседес, и выбрать там автомобиль этой марки, а потом во второй строке выбрать другую марку (и прикрутить на событие смену источника данных) - то во втором выпадающем списке изменится состав списка, но точно также он изменится и для первой строки, и соответственно, выбранное в ней ранее значение уже не будет соответствовать источнику данных - и там, насколько я помню, будет просто пустое поле отображаться...

В целом, насколько я уяснил в свое время, связанные списки лучше всего реализуются в одиночной форме, а не в табличной.

А для табличной есть один хитрый способ, который я брал тут на форуме, не помню, где именно. Там было сделано так, чтобы во втором выпадающем списке было два столбца, первый - с нужными названиями, а второй - со знаками "+" и "-", при этом в списке присутствовали ВСЕ возможные значения, но после выбора, сделанного в первом списке, состав второго списка менялся таким образом, чтобы все связанные с первым списком значения подымались в самый верх списка и обозначались "+", а остальные - знаком "-", и их нельзя было бы выбрать.
Описал довольно громоздко, но мне в свое время подошел только этот способ, когда тоже маялся со связанными списками в табличной форме.
Может, кто подскажет, где этот пример есть на форуме.
0
Эксперт MS Access
17485 / 7247 / 1651
Регистрация: 21.06.2012
Сообщений: 13,859
13.02.2017, 18:15 5
Вариант здесь Связаные списки и таблица.
2
Эксперт MS Access
7395 / 4532 / 295
Регистрация: 12.08.2011
Сообщений: 14,015
14.02.2017, 08:48 6
Цитата Сообщение от Kkarn Посмотреть сообщение
В целом, насколько я уяснил в свое время, связанные списки лучше всего реализуются в одиночной форме, а не в табличной.
Это не так, давно уже реализовано, как впрочем и в ленточной. Вся фишка в изменении источника строк поля со списком при входе в это поле и при выходе из него.
0
0 / 0 / 0
Регистрация: 07.02.2017
Сообщений: 4
14.02.2017, 08:56  [ТС] 7
Большое спасибо всем за помощь!

В общем как я понял, я наступил на одну из больных мест Access и без танцев с бубном тут не обойтись.

На всякий случай прикреплю к сообщению подборку баз с подчиненными группами, которые сумел найти на форуме. Может кто будет искать.
Вложения
Тип файла: rar t1.rar (43.2 Кб, 9 просмотров)
Тип файла: rar Автомобили.rar (48.6 Кб, 10 просмотров)
Тип файла: 7z бд1111.7z (63.5 Кб, 11 просмотров)
Тип файла: rar Заказы-Кафе.rar (134.2 Кб, 12 просмотров)
Тип файла: rar несовсем2.rar (13.8 Кб, 12 просмотров)
0
Эксперт MS Access
7395 / 4532 / 295
Регистрация: 12.08.2011
Сообщений: 14,015
15.02.2017, 02:31 8
Цитата Сообщение от mustdayker Посмотреть сообщение
В общем как я понял, я наступил на одну из больных мест Access и без танцев с бубном тут не обойтись.
Никаких танцев не нужно, нужно просто вдумчиво прочесть то, что я написал и сделать. Кстати в несовсем2.rar я это уже выложил.
0
901 / 291 / 50
Регистрация: 02.12.2014
Сообщений: 1,229
15.02.2017, 10:02 9
Хм. Ну не знаю, мне вариант от ltv_1953 нравится больше, и именно на него я ориентировался в свое время, когда делал подобные связанные списки в табличной форме. В нем нет "исчезания" введенных значений из второго списка при кликах на этих полях. А в несовсем2.rar - да, это проще в реализации и меньше кода, но второй список таки ведет себя не очень красиво, когда пользователю вздумается поклацать по уже введенным полям этого списка - в других строках пропадают значения, которые не принадлежат к выбранной группе... Хотя, в принципе, если не клацать лишнего - то да, форма работает вполне красиво. В общем, дело вкуса).
0
0 / 0 / 0
Регистрация: 07.02.2017
Сообщений: 4
15.02.2017, 10:13  [ТС] 10
В итоге я разобрался. Спасибо за помощь.

P.S.
В моем понимании решение "без танцев с бубном" это когда достаточно поставить галочку в поле, которое указывает на "Список-Родитель". А не строчить трехэтажный код в VB.
0
Эксперт MS Access
7395 / 4532 / 295
Регистрация: 12.08.2011
Сообщений: 14,015
15.02.2017, 10:20 11
Лучший ответ Сообщение было отмечено VinniPuh как решение

Решение

Цитата Сообщение от mustdayker Посмотреть сообщение
это когда достаточно поставить галочку в поле
Или нажать большую красную кнопку с надписью "Сделать фсё!"
1
8859 / 5904 / 585
Регистрация: 27.03.2013
Сообщений: 19,567
15.02.2017, 10:48 12
Цитата Сообщение от alvk Посмотреть сообщение
...Или нажать большую красную кнопку...
Я кстати, таковую как то делал.
Вот она - Скоропостижно-красная помощь на примере.
Вложения
Тип файла: rar Скоропостижная Помощь.rar (22.8 Кб, 7 просмотров)
1
Модератор
Эксперт MS Access
6003 / 2832 / 692
Регистрация: 12.06.2016
Сообщений: 7,591
15.02.2017, 11:06 13
Цитата Сообщение от PuhKMV Посмотреть сообщение
Я кстати, таковую как то делал.
Вот она - Скоропостижно-красная помощь на примере.
Не работает.
Там нужно по-другому.
Не так
Visual Basic
1
2
3
4
Private Sub КнВызовСкоройПомощи_Click()
  DoCmd.GoToControl "Ссылка"
  SendKeys "^{ENTER}", False
End Sub
а так
Visual Basic
1
2
3
Private Sub КнВызовСкоройПомощи_Click()
 FollowHyperlink Mid(Ссылка, 2, Len(Ссылка) - 2)
End Sub
1
901 / 291 / 50
Регистрация: 02.12.2014
Сообщений: 1,229
15.02.2017, 11:07 14
mustdayker, народу (по крайней мере, мне) интересно, на чем именно вы в итоге остановились).
0
8859 / 5904 / 585
Регистрация: 27.03.2013
Сообщений: 19,567
15.02.2017, 11:56 15
Capi, у меня четко работает.
Если у вас новомодные что то, то это ваша проблема, т.к. сказано - Не гонись ты поп за новизной, т.к.она не всегда лучше.
Kkarn, а бы выложил примерчик в общедоступной доступе, где можно было бы чего и присоветовать, не зря же ДАЖе ссылку на мой примерчик даже приложили, типа даже Кажись - Работает.
0
Модератор
Эксперт MS Access
6003 / 2832 / 692
Регистрация: 12.06.2016
Сообщений: 7,591
15.02.2017, 12:15 16
Цитата Сообщение от PuhKMV Посмотреть сообщение
у меня четко работает.
Если у вас новомодные что то, то это ваша проблема
Проверялось в Ac2000.
Вы бы прислушались лучше к полезному совету. В любом случае предлагаемый мной способ правильнее.
Ваш - "костыльный", простите.
Кроме того, уже в Windows7 команда SendKeys блокируется как потенциально опасная.
Независимо от версии Access.
Чтобы работала, нужно настраивать учетную запись пользователя.
1
8859 / 5904 / 585
Регистрация: 27.03.2013
Сообщений: 19,567
15.02.2017, 12:36 17
Цитата Сообщение от Capi Посмотреть сообщение
...Ваш - "костыльный", простите...
нормальный рабочий момент, на это не обижаюсь. привык так делать, считаю для себя оптимальным исходя из личного опыта.
0
Эксперт MS Access
7395 / 4532 / 295
Регистрация: 12.08.2011
Сообщений: 14,015
16.02.2017, 02:28 18
Цитата Сообщение от PuhKMV Посмотреть сообщение
Если у вас новомодные что то, то это ваша проблема
нет, там просто уход от сэндкейс, потому что это штука опасная и лучше ей лишний раз не пользоваться.

Добавлено через 1 минуту
Цитата Сообщение от Capi Посмотреть сообщение
Кроме того, уже в Windows7 команда SendKeys блокируется как потенциально опасная.
А вот на это можно внимания не обращать, там скоро пукнуть, простите, будет потенциально опасно без прав администратора.
0
16.02.2017, 02:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.02.2017, 02:28
Помогаю со студенческими работами здесь

Как ограничить список в Combobox
Добрый день! Не могу разобраться и найти решение вот по какому вопросу есть combobox в его Items...

Как ограничить список выводимых данных
извлекаю комментарии с facebook с помощью facebook api graph с последующим выводом их на моём...

Как ограничить выпадающий список по значению другого поля?
Приветствую знатоков. Подскажите решение вот для такой проблемы - При создании Заявки на выписку...

Список для выбора
Вообщем сделал запрос навыборку , такого типа WhERE (((БланкДог.Название_организации)=)). При...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru