powered by simpleCommunicator - 2.0.48     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Опять вопрос по обращению к подчиненной форме (((((
23 сообщений из 23, страница 1 из 1
Опять вопрос по обращению к подчиненной форме (((((
    #36366997
dimbasbear
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ребят помогите Плиззззз, ну никак не получается разобраться.

Итак имеем:
Главная форма Выпуск
В ней подчиненная форма ПодчИзвещ1

=========
Вот как я обращаюсь к полю подчиненной формы

Код: plaintext
Me.ПодчИзвещ1.Form.Поле12.TabIndex =  25 

Это у меня не работает ....(((


PS: понимаю что тема ибитая, но все же хочется понять один раз и на всегда....:(
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367022
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
ПодчИзвещ1 - это имя контрола на главной форме?
Если нет, то вот и ответ.
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367046
dimbasbear
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владимир СанычПодчИзвещ1 - это имя контрола на главной форме?
Если нет, то вот и ответ.

Я пока еще не совсем ориентируюсь в этих понятиях.
У меня главная форма называется Выпуск , а подчиненная ПодчИзвещ1 .
Когда в программном модуле главной формы пишу
Код: plaintext
Me.

в List Propirties / Methods есть ПодчИзвещ1 .

Как мне это определить? и почему не работает?
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367052
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
У Вас на форме, когда она открыта в конструкторе, есть такой прямоугольничек, в котором должна быть подчиненная форма. Кликните по нему, загляните в окно свойств и посмотрите, чему равны:

Name=
SourceObject=
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367071
dimbasbear
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владимир СанычУ Вас на форме, когда она открыта в конструкторе, есть такой прямоугольничек, в котором должна быть подчиненная форма. Кликните по нему, загляните в окно свойств и посмотрите, чему равны:

Name=
SourceObject=

Name= ПодчИзвещ1
SourceObject= ПодчИзвещ1
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367084
отакота
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dimbasbearЭто у меня не работает ....(((
PS: понимаю что тема ибитая, но все же хочется понять один раз и на всегда....:(А как не работает, что говорит?
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367105
dimbasbear
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
отакотаdimbasbearЭто у меня не работает ....(((
PS: понимаю что тема ибитая, но все же хочется понять один раз и на всегда....:(А как не работает, что говорит?
Да ничего не говорит. Просто не отрабатывается то что нужно. Я все бьюсь с предыдущей проблемой (можно посмотреть в моих предыдущих темах)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Private Sub Form_Current()
  ChangeTabIndex
End Sub
Private Sub Поле260_AfterUpdate()
ChangeTabIndex
End Sub

Sub ChangeTabIndex()
If InStr( 1 , Me("Поле260"), "DDA") >  0  Then
' Если отработалось условие - присваиваю полю на подч форме значение
Me.ПодчИзвещ1.Form.Поле198.Value = "DDA"
' Если отработалось условие - присваиваю полю на главной форме значение
Me.Поле262.Value = "DDA"
Else
' Если НЕ отработалось условие - присваиваю полю на подч форме значение
Me.ПодчИзвещ1.Form.Поле198.Value = "Хрень"
' Если НЕ отработалось условие - присваиваю полю на главной форме значение
Me.Поле262.Value = "Хрень"
End Sub

ЗЫ
Ни на главной не на подчиненной почему-то условие не отрабатывается, хотя должно....
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367115
dimbasbear
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
end if 
В предыд. посте забыл дописать - пардон. Но это не решает проблемы.....(((
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367144
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimbasbear,

не мудрено запутаться с такими названиями полей. Не пройдет м пары месяцев, как вы забудете, что значит Поле262 и потратите значительное время на бесплодные воспоминания. Называть надо осмысленно. А еще лучше по какой-нибудь системе. Нц, это к слову.

По сабжу. Поставьте брейкпойнт и пройдите по шагам программу, одновременно просматривая значение полей.
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367159
dimbasbear
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mds_worlddimbasbear,

не мудрено запутаться с такими названиями полей. Не пройдет м пары месяцев, как вы забудете, что значит Поле262 и потратите значительное время на бесплодные воспоминания. Называть надо осмысленно. А еще лучше по какой-нибудь системе. Нц, это к слову.

По сабжу. Поставьте брейкпойнт и пройдите по шагам программу, одновременно просматривая значение полей.

Это для тестирования поля, чтобы отработать необходимую конструкцию процедуры. Потом из не будет вообще.
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367249
отакота
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dimbasbearmds_worlddimbasbear,

не мудрено запутаться с такими названиями полей. Не пройдет м пары месяцев, как вы забудете, что значит Поле262 и потратите значительное время на бесплодные воспоминания. Называть надо осмысленно. А еще лучше по какой-нибудь системе. Нц, это к слову.

По сабжу. Поставьте брейкпойнт и пройдите по шагам программу, одновременно просматривая значение полей.

Это для тестирования поля, чтобы отработать необходимую конструкцию процедуры. Потом из не будет вообще.Для начала учитесь правильно ставить вопросы. А то вы спросили про одно, а поясняете про другое.

Me.ПодчИзвещ1.Form.Поле12.TabIndex = 25
Это у меня не работает ....(((этой строки вообще нету в последнем фрагменте.

Так на ЧТО именно вы жалуетесь? На TabIndex которого тут нет? Или не понимаете какой If у вас работает, а какой нет? Определитесь.

Выполните последний приведенный код ПО ШАГАМ и потом уточните вашу жалобу - покажите конкретный реальный фрагмент кода, которая вас не устривает и опишите его поведение в пошаговом варианте выполнения.
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367302
dimbasbear
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
отакотаdimbasbearmds_worlddimbasbear,

не мудрено запутаться с такими названиями полей. Не пройдет м пары месяцев, как вы забудете, что значит Поле262 и потратите значительное время на бесплодные воспоминания. Называть надо осмысленно. А еще лучше по какой-нибудь системе. Нц, это к слову.

По сабжу. Поставьте брейкпойнт и пройдите по шагам программу, одновременно просматривая значение полей.

Это для тестирования поля, чтобы отработать необходимую конструкцию процедуры. Потом из не будет вообще.Для начала учитесь правильно ставить вопросы. А то вы спросили про одно, а поясняете про другое.

Me.ПодчИзвещ1.Form.Поле12.TabIndex = 25
Это у меня не работает ....(((этой строки вообще нету в последнем фрагменте.

Так на ЧТО именно вы жалуетесь? На TabIndex которого тут нет? Или не понимаете какой If у вас работает, а какой нет? Определитесь.

Выполните последний приведенный код ПО ШАГАМ и потом уточните вашу жалобу - покажите конкретный реальный фрагмент кода, которая вас не устривает и опишите его поведение в пошаговом варианте выполнения.


Дабы понять почему мой TabIndex не работает, нужно поянть а работает ли вообще моя конструкция с IF с обращением в подчиненную форму. Чтобы это проверить , я убрал все TabIndex и начал работать в по след. алгоритму:

1.
После обновления значения в поле Поле260 (то самое DDA) - отработать процедуру ChangeTabIndex

2.
Если в Поле260 (главная форма) есть DDA, тогда
На подчиненной форме Поле262 - присвоить значение DDA
На главной форме Поле198 - присвоить значение DDA

Иначе
На подчиненной форме Поле262 - присвоить значение Хрень
На главной форме Поле198 - присвоить значение Хрень

PS: что непонятного??? вроди все понятно.....
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367356
develed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimbasbearРебят помогите Плиззззз, ну никак не получается разобраться.

Итак имеем:
Главная форма Выпуск
В ней подчиненная форма ПодчИзвещ1

=========
Вот как я обращаюсь к полю подчиненной формы

Код: plaintext
Me.ПодчИзвещ1.Form.Поле12.TabIndex =  25 

Это у меня не работает ....(((


PS: понимаю что тема ибитая, но все же хочется понять один раз и на всегда....:(
А "классику" пробовали?
Код: plaintext
Me!ПодчИзвещ1!Поле12.TabIndex =  25 
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367368
Фотография mds_world
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimbasbear,
не стоит многократно объяснять, то, что и так ясно. У отвечающих есть подозрение, что код либо вообще не исполняется, либо значения полей не соотвествуют вашим ожиданиям. Поэтому вам предложили в начале процедуры Поле260_AfterUpdate или ChangeTabIndex поставить брейкпойнт и по шагам отследить прохождение кода с проверкой значений полей в форме. Сделайте это и, скорее всего, многие сомнения, а может и ошибки, развеятся.
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367381
dimbasbear
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Итак вот к чему я пришел.

Свел к минимуму свою процедуру, и выявил следующее:
1. Если моя процедура находится в модуле кода подчиненной формы (при этом я добавил в нее Поле266 значение которого автоматически берется из таблицы) ВСЕ РАБОТАЕТ
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub Form_Current()
  ChangeTabIndex
End Sub
Sub ChangeTabIndex()
If Me.Поле266.Value =  3  Then
MsgBox ("DDA")
Else
MsgBox ("Хрень")
End If
End Sub

2. Если моя процедура находится в модуле кода основной формы (при этом я добавил в нее Поле266 значение которого автоматически берется из таблицы) НЕ РАБОТАЕТ :(
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub Form_Current()
  ChangeTabIndex
End Sub
Sub ChangeTabIndex()
If Me.Поле266.Value =  3  Then
MsgBox ("DDA")
Else
MsgBox ("Хрень")
End If
End Sub

========================
Получается дело не в том, что я неправильно конструировал обращение к подч.форме, а в том что IF вообще почему-то не отрабатывается в модуле главной формы. Подскажите куда копать....????
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367556
отакота
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dimbasbear2. Если моя процедура находится в модуле кода основной формы (при этом я добавил в нее Поле266 значение которого автоматически берется из таблицы) НЕ РАБОТАЕТ :(
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub Form_Current()
  ChangeTabIndex
End Sub
Sub ChangeTabIndex()
If Me.Поле266.Value =  3  Then
MsgBox ("DDA")
Else
MsgBox ("Хрень")
End If
End Sub
вы опять неправильно жалуетесь.
диспозиция понятна, но СУТЬ жалобы снова не ясна.
в чем это выражается ваше "не работает":

1) MsgBox выдает "DDA", когда Поле266 не равно 3
2) MsgBox выдает "Хрень", когда Поле266 равно 3
3) вообще не выдает MsgBox

КАК именно не работает-то?

А копать надо от поверхности - ставьте точку останова на строку вызова ChangeTabIndex в Form_Current и вперед по шагам, наблюдая ходом выполнения кода и значениями переменных.
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367640
dimbasbear
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да, MsgBOX просто не выскакивает.
Не подскажите где почитать про точку остановки????
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367662
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
dimbasbearНе подскажите
Как скажете. А я уж собирался...

Ну ладно, буду добрым. Почитать можно здесь.

F9 - поставить оную точку на данной строчке
F5 - запустить остановленную программу дальше
F8 - исполнить текущую строчку с заходом в вызываемые в ней подпрограммы
Shift+F8 - то же, но без захода
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367675
develed
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dimbasbearда, MsgBOX просто не выскакивает.
Не подскажите где почитать про точку остановки????Сижу и думаю: "Кто-нибудь посоветует родную F1 нажать?"
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367690
dimbasbear
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Владимир СанычdimbasbearНе подскажите
Как скажете. А я уж собирался...

Ну ладно, буду добрым. Почитать можно здесь.

F9 - поставить оную точку на данной строчке
F5 - запустить остановленную программу дальше
F8 - исполнить текущую строчку с заходом в вызываемые в ней подпрограммы
Shift+F8 - то же, но без захода

У меня по нажатию F5 вываливается окошко Macros с предложением Create (после того как создаю какойнить test - добавляется в разделе Modules мой macros). Но у меня весь мой проблемный код находится в модуле формы. Я правильно делаю????
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367705
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
dimbasbearВладимир СанычF5 - запустить остановленную программу дальше
У меня по нажатию F5 вываливается окошко Macros
У Вы уже остановили программу?
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367746
отакота
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
dimbasbearУ меня по нажатию F5 вываливается окошко Macros с предложением Create (после того как создаю какойнить test - добавляется в разделе Modules мой macros). Но у меня весь мой проблемный код находится в модуле формы. Я правильно делаю????
Смотрите, ваш код начинается со строки ChangeTabIndex в процедуре обработки события Form_Current основной формы. Т.е. чтобы ваш код НАЧАЛ исполняться с этой строки, должно произойти это самое событие Form_Current, которое автоматически происходит при переходе от одной записи этой формы к другой. Т.е. чтобы начать работу вашего года, вам в первую очередь надо ИНИЦИИРОВАТЬ это событие - например перейти на другую запись.

Это, кстати, можно сделать лишь в форме, у которой есть источник записей. У вас в этой (основной) форме есть источник записей? Ибо, если нет, тогда у вас ошибка не в коде, а глубже - в концепции вашего решения.
...
Рейтинг: 0 / 0
Опять вопрос по обращению к подчиненной форме (((((
    #36367905
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
отакотанадо ИНИЦИИРОВАТЬ это событие - например перейти на другую запись.
А перед этим поставить брейкпойнт. И тогда наконец программа на него ПРИДЕТ.
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Опять вопрос по обращению к подчиненной форме (((((
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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