Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Вопрос по автообновлению формы при получении фокуса / 25 сообщений из 40, страница 1 из 2
07.10.2020, 13:53
    #40006145
vixxa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
Добрый день, многоуважаемые форумчане!
Подскажите, люди добрые, как заставить самостоятельно обновляться подчиненную форму при изменении ее данных другой формой?
По сути: есть Простая форма (свободная), на ней есть Подформа (табличная), формы не связанные. На Простой форме есть кнопка, которая вызывает Модальную всплывающую форму, которая добавляет/изменяет данные Подформы.
Оооочень хочется сделать так, что-бы при закрытии Модальной формы данные в Подформе автоматически обновлялись.
Не сочтите за наглость, но если подскажите механизм активации только-что измененной записи, то буду премного благодарен.
...
Рейтинг: 0 / 0
07.10.2020, 14:50
    #40006185
vmag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
vixxa
при закрытии Модальной формы


обновляй нужную форму
...
Рейтинг: 0 / 0
07.10.2020, 14:56
    #40006191
vixxa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
vmag
обновляй нужную форму

Да без проблем, прилепил кнопку вызвал Form.Requery и вуаля...
А по факту:vixxaОооочень хочется сделать так, что-бы при закрытии Модальной формы данные в Подформе автоматически обновлялись.
Я не против поставить код на закрытие Модальной формы, но хочется элегантней, как написано в заголовке "автообновление формы при получении фокуса"
Но за ответ спасибо!
...
Рейтинг: 0 / 0
07.10.2020, 15:11
    #40006208
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
А зачем вообще "посредник" в виде модальной формы почему бы все "телодвижения" не выполнять в самой подчиненной форме?
...
Рейтинг: 0 / 0
07.10.2020, 15:23
    #40006221
vixxa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
sdku
А зачем вообще "посредник" в виде модальной формы почему бы все "телодвижения" не выполнять в самой подчиненной форме?

Собственно бзик, защита от ошибок пользователей... Подформа табличная, только для чтения, плюс в ней отображаются только те поля, которые НУЖНО отображать для пользователя. А вот Модальная форма позволяет вносить/изменять данные по определенным алгоритмам, которые не очень хочется выносить в табличную Подформу, ибо что придёт в голову конечному пользователю - не знаю.
Кстати, приложение пока (надеюсь временно) работает по Вашему варианту, но неудобно, тыкают мышкой куда кто хочет. Все-таки считаю - модальное окно более приемлемо (в разрезе данной задачи).
...
Рейтинг: 0 / 0
07.10.2020, 15:39
    #40006245
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
sdku
А зачем вообще "посредник" в виде модальной формы почему бы все "телодвижения" не выполнять в самой подчиненной форме?

Все правильно ТС делает.
...
Рейтинг: 0 / 0
07.10.2020, 15:43
    #40006251
vixxa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
ROI
Все правильно ТС делает.

Только не знает - как! ;)
...
Рейтинг: 0 / 0
07.10.2020, 15:53
    #40006261
vixxa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
В дополнение: Access 2016, событие Form_Activate() на Простой форме работает, если Простая форма получает фокус/становится активной(?) из набора вкладок самого Access. А вот при закрытии Модальной формы такого, увы, не случается...
...
Рейтинг: 0 / 0
07.10.2020, 15:59
    #40006268
Вопрос по автообновлению формы при получении фокуса
"Модальная форма", это открытая как acDialog, или просто "царь горы"?
Редактируется текущая запись из подформы или любая другая?
Если вы только редактируете завись, то зачем Requery? Достаточно и Refresh. Тогда и запись останется текущей.
...
Рейтинг: 0 / 0
07.10.2020, 16:07
    #40006272
vixxa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
Кривцов Анатолий,
По порядку:
1. acNormal
2. Сейчас используется исключительно для добавления новых записей.
3. См. № 2
...
Рейтинг: 0 / 0
07.10.2020, 16:11
    #40006275
vixxa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
Кривцов Анатолий,
И в догонку, если в конструкторе делаю Модальную форму НЕ ВСПЛЫВАЮЩЕЙ, а только МОДАЛЬНОЙ - то все работает... А так хочется и модальной и всплывающей! Может много хочу?
...
Рейтинг: 0 / 0
07.10.2020, 16:31
    #40006287
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
vixxa
Кривцов Анатолий,
И в догонку, если в конструкторе делаю Модальную форму НЕ ВСПЛЫВАЮЩЕЙ, а только МОДАЛЬНОЙ - то все работает... А так хочется и модальной и всплывающей! Может много хочу?
А расскажите как модальное окно поместить на второй план
...
Рейтинг: 0 / 0
07.10.2020, 16:56
    #40006304
alecko
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
vixxa, при вызове модальной формы код останавливается, соответственно, если поставите Me.child1.requery следующей строчкой за строкой вызова этой модальной формы, то после закрытия этой формы (модальной) первое что сделается это обновится подчиненная. в этом и есть цимус модальности.
...
Рейтинг: 0 / 0
07.10.2020, 18:55
    #40006365
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
удалено-написал то же самое
...
Рейтинг: 0 / 0
07.10.2020, 19:48
    #40006377
vixxa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
sdkuА расскажите как модальное окно поместить на второй план
Параметры Access -> Текущая база данных -> Параметры окна документа -> Вкладки (вкл), Вкладки документов (вкл)
В конструкторе формы Всплывающее окно - нет, модальное окно - да.
Я имел в виду, что при таких параметрах все работает, т.н. Модальная форма открывается полностью на Вкладку документов (не очень красиво). Про модальное окно формы на втором плане я ничего не говорил.
...
Рейтинг: 0 / 0
07.10.2020, 20:00
    #40006382
vixxa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
alecko
vixxa, при вызове модальной формы код останавливается, соответственно, если поставите Me.child1.requery следующей строчкой за строкой вызова этой модальной формы, то после закрытия этой формы (модальной) первое что сделается это обновится подчиненная. в этом и есть цимус модальности.

Спасибо за совет, но....
Запускаю так:
Код: vbnet
1.
2.
3.
4.
5.
Private Sub Button_Click()
DoCmd.OpenForm "NewRec", acNormal 'это та самая модальная
Beep
Me.SubForm.Form.Requery 'табличная подформа
End Sub


При запуске обновление подформы, равно как beep (для наглядности) происходит при открытии Модальной формы. При ее закрытии данные в подформе не обновляются.
Может я что-то не так понял в "цимусе модальности"?
...
Рейтинг: 0 / 0
07.10.2020, 20:31
    #40006388
vixxa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
alecko,
Спасибо за наводку. Порывшись на просторах инета нашел советы о том, что ребусы с прерыванием работы кода при вызове модального окна работают в Access (якобы) только с наличием инструкции acDialog в коде вызова модальной формы.
В итоге вот так:
Код: vbnet
1.
2.
3.
4.
5.
Private Sub Button_Click()
DoCmd.OpenForm "NewRec", acNormal, , , , acDialog 'это та самая модальная
Beep
Me.SubForm.Form.Requery 'табличная подформа
End Sub


все отрабатывает так, как хотелось бы.
СПАСИБО ВСЕМ ПРИСОЕДИНИВШИМСЯ!!!
...
Рейтинг: 0 / 0
07.10.2020, 20:49
    #40006389
vixxa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
Отдельное спасибо SergeySV 351181
...
Рейтинг: 0 / 0
07.10.2020, 22:29
    #40006404
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
vixxa
sdkuА расскажите как модальное окно поместить на второй план

Параметры Access -> Текущая база данных -> Параметры окна документа -> Вкладки (вкл), Вкладки документов (вкл)
В конструкторе формы Всплывающее окно - нет, модальное окно - да.
Я имел в виду, что при таких параметрах все работает, т.н. Модальная форма открывается полностью на Вкладку документов (не очень красиво). Про модальное окно формы на втором плане я ничего не говорил.Вопрос: если у Вас на экране форма открытая в модальном окне КАК добраться до меню\области переходов?
...
Рейтинг: 0 / 0
08.10.2020, 00:14
    #40006417
Сергей Лалов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
sdku
А расскажите как модальное окно поместить на второй план


1) открыть с первого модального окна второе модальное окно)
2) сделать все формы модальными)
...
Рейтинг: 0 / 0
08.10.2020, 00:48
    #40006419
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
Честно говоря,не пробовал,но слышал что и зуб можно через ж... удалять
...
Рейтинг: 0 / 0
08.10.2020, 09:16
    #40006458
vixxa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
sdkuВопрос: если у Вас на экране форма открытая в модальном окне КАК добраться до меню\области переходов?
Никак, ибо вопрос изначально ставился так:
vixxaОооочень хочется сделать так, что-бы при закрытии Модальной формы данные в Подформе автоматически обновлялись.
Ну или идти по пути Сергей Лалов 22210532
...
Рейтинг: 0 / 0
08.10.2020, 10:05
    #40006476
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
sdku
Вопрос: если у Вас на экране форма открытая в модальном окне КАК добраться до меню\области переходов?

А зачем?
Вы видно не "догоняете" для чего служат модальные формы.
А зачем клиенту видеть область переходов?(у меня она всегда скрыта)
Странное у вас представление о пользовательском интерфейсе.
...
Рейтинг: 0 / 0
08.10.2020, 10:19
    #40006481
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
vixxa,

Хочу обратить ваше внимание, вот на что:
1 на модальной форме должна быть кнопка Сохранить или обновить
2 на событие кнопки и обновляйте подчиненную форму
3 перед обновлением подчиненной формы убедитесь открыта ли она
4 перебором семейства Forms вы не узнаете открыта ли подчиненная форма
5 придется обратиться к родительской форме, а потом, если есть, к подформе.
FAQ вам в помощь
https://www.sql.ru/faq/faq_topic.aspx?fid=156
...
Рейтинг: 0 / 0
08.10.2020, 14:05
    #40006581
sdku
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по автообновлению формы при получении фокуса
vixxa
sdku
А зачем вообще "посредник" в виде модальной формы почему бы все "телодвижения" не выполнять в самой подчиненной форме?
Собственно бзик, защита от ошибок пользователей... Подформа табличная, только для чтения, плюс в ней отображаются только те поля, которые НУЖНО отображать для пользователя. А вот Модальная форма позволяет вносить/изменять данные по определенным алгоритмам, которые не очень хочется выносить в табличную Подформу, ибо что придёт в голову конечному пользователю - не знаю.
Кстати, приложение пока (надеюсь временно) работает по Вашему варианту, но неудобно, тыкают мышкой куда кто хочет. Все-таки считаю - модальное окно более приемлемо (в разрезе данной задачи).
Считаю что модальная форма ни в коей мере не защищает от внесения ошибочных данных(какая разница через какую форму они попадут в таблицу,модальность же определяет только необходимость выполнения какого-либо действия\ответа на вопрос для возможности продолжить работу) а вот проверка валидности + разграничение прав(с "суровым" инструктажем допущенных к редактированию/добавлению /или открытие для них другой с другим набором полей, для прочих форма EDIT=FALSE ) максимально,но не полностью-что,в принципе не возможно, защитит от ошибок ввода
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Вопрос по автообновлению формы при получении фокуса / 25 сообщений из 40, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]