Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Обновление подчиненной формы / 25 сообщений из 32, страница 1 из 2
06.03.2018, 09:01
    #39611004
nauf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
На главной форме две подчиненной формы ф1 и ф2. Надо обновить подчиненную форму ф2 из подчиненной формы ф1.
написал в событии "Текущая запись" в форме ф1:
Me.Parent.[подчиненная форма ф2].Form.Requery
При открытии главной формы: "Введенной выражение содержит недопустимую ссылку на свойство 'Form/Report'"
А как правильно написать?
...
Рейтинг: 0 / 0
06.03.2018, 09:29
    #39611017
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
naufНа главной форме две подчиненной формы ф1 и ф2. Надо обновить подчиненную форму ф2 из подчиненной формы ф1.
написал в событии "Текущая запись" в форме ф1:
Me.Parent.[подчиненная форма ф2].Form.Requery
При открытии главной формы: "Введенной выражение содержит недопустимую ссылку на свойство 'Form/Report'"
А как правильно написать?
да легко.
Обращайтесь к фоме как к классу
Form_ИмяФормы.Requery
...
Рейтинг: 0 / 0
06.03.2018, 09:37
    #39611025
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
ROI, отвратительный совет
...
Рейтинг: 0 / 0
06.03.2018, 09:41
    #39611029
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
nauf, для начала нужно сделать обработчик ошибок, где и обрабатывать данную ошибку. В принципе, в некоторых случаях можно просто игнорировать ошибки ( On Error Resume Next ).
Можно сделать проверку загружена ли главная форма.
...
Рейтинг: 0 / 0
06.03.2018, 09:48
    #39611030
nauf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
Спасибо!
Добавил код "On Error Resume Next". Теперь работает. Получается это не ошибка?
...
Рейтинг: 0 / 0
06.03.2018, 09:50
    #39611031
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
ПанургROI, отвратительный совет
чем?
...
Рейтинг: 0 / 0
06.03.2018, 11:19
    #39611074
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
naufПолучается это не ошибка?Почему не ошибка? Очень даже ошибка и связана она с очерёдностью загрузки главной и подчинённой форм. Если коротко, то подчинённая форма уже добралась до события "Текущая запись", а главная ещё не прогрузилась.

ROIчем?всем
...
Рейтинг: 0 / 0
06.03.2018, 11:29
    #39611078
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
nauf,

Ошибка наступает потому, что событие On Current наступает раньше, чем загружается главная форма. Можно, конечно, огород городить с проверкой загружена ли форма уже и тогда обращаться к ней, а можно, просто, объявить глобальный для формы флаг (булеан - по умолчанию - фльшь) и поставить его в true на событии OnLoad. А в процедуре на текущей записи, просто проверить, что флаг не фальшь

Код: 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.
Dim flg As Boolean

...
Private Sub Form_Unload(Cancel As Integer)

    ....
    Set flg = True

    
End Sub


Private Sub Form_Current()
On Error GoTo err_Form_Current

    If flg Then Me.Parent.[подчиненная форма ф2].Form.Requery
    
exit_Form_Current:
    Exit Sub

err_Form_Current:
    MsgBox Err.Description
    Resume exit_Form_Current
    
End Sub
...
Рейтинг: 0 / 0
06.03.2018, 11:31
    #39611080
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
Sorry,

Не Private Sub Form_Unload(Cancel As Integer), а

Код: vbnet
1.
2.
3.
4.
5.
Private Sub Form_Load()
    ....
    Set flg = True
    
End Sub
...
Рейтинг: 0 / 0
06.03.2018, 11:32
    #39611081
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
Rivkin Dmitryогород городить с проверкой загружена ли форма уже и тогда обращаться к ней
Rivkin Dmitryможно, просто, объявить глобальный для формы флаг (булеан - по умолчанию - фльшь) и поставить его в true на событии OnLoadОдин огород не огородней другого.
Вариантов много и говорить что один лучше другого не корректно.
...
Рейтинг: 0 / 0
06.03.2018, 11:36
    #39611084
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
Rivkin Dmitryглобальный для формы флагА кто и где поднимает этот флаг?
...
Рейтинг: 0 / 0
06.03.2018, 12:26
    #39611127
nauf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
Объявил глобальную переменную: dim flg as boolean
Ругается на Set flg=true в событии "загрузки" главной формы
"Compile error: Object required"
...
Рейтинг: 0 / 0
06.03.2018, 12:32
    #39611130
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
naufОбъявил глобальную переменную: dim flg as boolean
Ругается на Set flg=true в событии "загрузки" главной формыКонечно будет ругаться. Это не объект и присвоение неправильное.
...
Рейтинг: 0 / 0
06.03.2018, 12:35
    #39611133
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
nauf, у тебя в главной форме код есть? А в подчинённой на событие Current ещё код есть кроме Requery ?
...
Рейтинг: 0 / 0
06.03.2018, 12:36
    #39611135
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
nauf, сделай обработчик ошибок и к чёрту все флаги и формы.
...
Рейтинг: 0 / 0
06.03.2018, 12:53
    #39611145
nauf
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
В главной форме есть один код на "нажатие кнопки". В подчиненной форме только Requery для для события Current.
...
Рейтинг: 0 / 0
06.03.2018, 12:56
    #39611149
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
ПанургnaufПолучается это не ошибка?Почему не ошибка? Очень даже ошибка и связана она с очерёдностью загрузки главной и подчинённой форм. Если коротко, то подчинённая форма уже добралась до события "Текущая запись", а главная ещё не прогрузилась.

ROIчем?всем

Если вы не умеете готовить и работать с классами это не значит, что все такие.
Спасибо за развернутый ответ.
С уважением.
...
Рейтинг: 0 / 0
06.03.2018, 13:09
    #39611158
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
naufВ главной форме есть один код на "нажатие кнопки". В подчиненной форме только Requery для для события Current.Оставь тогда просто игнорирование ошибки, как сделал первый раз.
...
Рейтинг: 0 / 0
06.03.2018, 13:11
    #39611160
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
ROIЕсли вы не умеете готовить и работать с классами это не значит, что все такие.Что ж поделать (и вздохнул тяжело)
...
Рейтинг: 0 / 0
06.03.2018, 13:52
    #39611200
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
ПанургROIЕсли вы не умеете готовить и работать с классами это не значит, что все такие.Что ж поделать (и вздохнул тяжело)
Ладно проехали(улыбнулся победно)
...
Рейтинг: 0 / 0
06.03.2018, 14:14
    #39611215
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
[quote ROI]Панургулыбнулся победнопросто я не расположен сегодня к описанию элементарных вещей
...
Рейтинг: 0 / 0
06.03.2018, 14:15
    #39611216
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
Чёрт, до чего же не удобно с планшета сюда писать...
...
Рейтинг: 0 / 0
06.03.2018, 14:32
    #39611229
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
[quote Панург]ROIПанургулыбнулся победнопросто я не расположен сегодня к описанию элементарных вещей
Ну на счет элементарных вещей- это вы погорячились (надеюсь)
С уважением.
...
Рейтинг: 0 / 0
06.03.2018, 15:18
    #39611272
MrShin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
Я, кстати, нахлебался из-за обращений к классу формы в чужих программах, всегда теперь их безжалостно переделываю на корректное обращение через коллекцию форм или иерархию объектов формы. Обращение к классу формы использую только при разработке, когда лень лезть копировать точное название контрола, а itellisence подсказывает. После отладки опять-таки переделываю.

Обращение через класс работает корректно только для одноинстансных окон и в отлаженной программе. Ошибки разработки сложно диагностируются и иногда ведут к непредсказуемому поведению
...
Рейтинг: 0 / 0
06.03.2018, 15:35
    #39611286
ROI
ROI
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Обновление подчиненной формы
MrShinЯ, кстати, нахлебался из-за обращений к классу формы в чужих программах, всегда теперь их безжалостно переделываю на корректное обращение через коллекцию форм или иерархию объектов формы. Обращение к классу формы использую только при разработке, когда лень лезть копировать точное название контрола, а itellisence подсказывает. После отладки опять-таки переделываю.

Обращение через класс работает корректно только для одноинстансных окон и в отлаженной программе. Ошибки разработки сложно диагностируются и иногда ведут к непредсказуемому поведению
Я прочитал ваше мнение.
Вы не любите или (не умеете) работать с классами
но это не означает, что классы это зло.
И в чем у вас проблема с отладкой классов и их непредсказуемого поведения.
С уважением.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Обновление подчиненной формы / 25 сообщений из 32, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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