|
Обновление значений в поле со списком
|
|||
---|---|---|---|
#18+
Добрый день. Подскажите пожалуйста как решить данную проблему. Использую Access 2016. Есть таблицы "Товар"(главная таблица), "Производитель" и "Категория" и соответственно формы "Добавить товар", "Добавить производителя" и "Добавить категорию". В таблице "Товар" есть поля "Производитель", "Категория" связанные с соответствующими таблицами. При добавлении нового товара через форму "Добавить товар", значения "Категория" и "Производитель" выбираются из поля со списком. При отсутствии необходимого элемента в соответствующей таблице, можно по кнопке перейти в форму добавления категории или производителя. При добавлении новой записи в таблицу "Производитель"/"Категория", необходимо чтобы соответствующая таблица обновилась и новое значение появилось в поле со списком. Можно ли данную операцию сделать без использования Basic, а только на одних макросах? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.08.2019, 18:57 |
|
Обновление значений в поле со списком
|
|||
---|---|---|---|
#18+
Преобразовать макрос в код VBA умею-наоборот нет Поэтому только код: (макросы "глыбоко уважаю",а код VBA намного меньше в объеме,понятней и главное-VBA имеет средства отладки на которые в макросах нет даже намека) Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26.
как из этого кода сделать макрос не знаю ... |
|||
:
Нравится:
Не нравится:
|
|||
09.08.2019, 20:01 |
|
Обновление значений в поле со списком
|
|||
---|---|---|---|
#18+
В макросах вам нужна макрокоманда - Обновление Без параметра обновит текущую форму, вместе с источником строк (то есть обновится содержимое). Если в параметре укажете имя поля со списком, то обновится содержимое выпадающего списка. Перед использованием этой макрокоманды не должно быть режима редактирования. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.08.2019, 17:31 |
|
Обновление значений в поле со списком
|
|||
---|---|---|---|
#18+
DamirMustafinДобрый день. Можно ли данную операцию сделать без использования Basic, а только на одних макросах? можно, склепал для вас пример по быстрому, с таблицами производитель,категории,товары, каталог (туда добавляется информация). Признаться не использую чистые макросы аксесса, но нашел быстро нужные. Сначала в форме заполняете поля производитель,категория, товар. Обратите внимание ,что когда вы выбираете категорию, товар ниже выбирается уже из этой категории. Обновление поля товар осуществляется внедренным макросом "обновление" с параметром имени поля обновляемого [поле_товар]. Макрос обновления повешен на событие поля поле_каталог . Событие на которое повешено называется "после обновления". После того как все поля заполнены, при нажатие на кнопку "добавить в каталог" выполняется внедренный макрос "открыть запрос", который запускает запрос на добавление данных с формы в таблицу. И всё. Итого всего два макроса. Потратил больше времени чтобы найти в интернете аксесовские аналоги макросов для me.поле.refresh и docmd.OpenQuery "имя_запроса", чем написал сам пример)) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2019, 00:40 |
|
Обновление значений в поле со списком
|
|||
---|---|---|---|
#18+
sdkuПреобразовать макрос в код VBA умею-наоборот нет Поэтому только код: (макросы "глыбоко уважаю",а код VBA намного меньше в объеме,понятней и главное-VBA имеет средства отладки на которые в макросах нет даже намека) Код: vbnet 1. 2. 3. 4.
как из этого кода сделать макрос не знаю ну они смогли уже глобальные переменные в макросах задавать, и циклы даже можно писать без кода)) Тревожно, того и гляди, VBA того..попросят. И будем рекордсеты задавать макросами типа задатьПеременную равно НовыйДаоРекордсет , курсор равно ЭдЮзОптимистик ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2019, 00:53 |
|
Обновление значений в поле со списком
|
|||
---|---|---|---|
#18+
DamirMustafin, Общий алгоритм, если он ущербен,приведет к огрооооомным сложностям,а часто и к невозможности создания БД. В данном случае производитель есть атрибут ТОВАРА (один и тот же товар может быть у разных производителей) и разбивать одну сущность на две таблицы есть не совсем правильно ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2019, 01:07 |
|
Обновление значений в поле со списком
|
|||
---|---|---|---|
#18+
sdkuDamirMustafin, Общий алгоритм, если он ущербен,приведет к огрооооомным сложностям,а часто и к невозможности создания БД. В данном случае производитель есть атрибут ТОВАРА (один и тот же товар может быть у разных производителей) и разбивать одну сущность на две таблицы есть не совсем правильно Это только в случае если каталоги в 1С. В SAP товар это вообще объект отдельный,в Аксапте это совокупность таблиц этак 7-9. Автор на потребительском уровне во главе поставил товар , это понятно, потому что это в общем то та сущность ,которая продается, и поэтому товар во главе всех таблиц) Пример ему рабочий накатали, если пойдет дальше ,то разберется с базостроением) ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2019, 01:14 |
|
Обновление значений в поле со списком
|
|||
---|---|---|---|
#18+
Прошу прощения я не правильно изложил свою мыслю Имелось ввиду иметь справочник производителей и таблицу(форму) товар в которой поля категория и производитель зависимы,а порядок заполнения:категория>производитель>товар на форме товар иметь кнопки "добавить категорию", "добавить производителя" и после добавления всего-навсего обновить соответствующее поле (если есть непреодолимое желание все это можно сделать простейшими макросами). Иметь такую схему: ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2019, 02:20 |
|
Обновление значений в поле со списком
|
|||
---|---|---|---|
#18+
прошу прощенья-сделайте так да и фсё..: ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2019, 13:10 |
|
Обновление значений в поле со списком
|
|||
---|---|---|---|
#18+
если добавление кнопкой обработайте событие "изменение": Код: vbnet 1. 2. 3. 4.
если добавление вводом в поле обработку исключить ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2019, 14:57 |
|
|
start [/forum/topic.php?fid=45&msg=39847665&tid=1610536]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
40ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
others: | 323ms |
total: | 455ms |
0 / 0 |