powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Поиск записи в подчиненной форме
9 сообщений из 9, страница 1 из 1
Поиск записи в подчиненной форме
    #32461481
Ukraina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Имеется форма «ГЛ» и подчиненная форма «ПФ». В «ПФ» есть поле «Номер».

Задача: нужно осуществить поиск по «Номеру» в «ПФ», если находит, то открывается запись главной формы, где есть этот номер в «ПФ».

Пробывал методами, которые знаю, но поиск и переход осуществляется только в текущей записи главной формы.
...
Рейтинг: 0 / 0
Поиск записи в подчиненной форме
    #32461509
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
авторПробывал методами, которые знаю, но поиск и переход осуществляется только в текущей записи главной формы.
me!контролссабформой.setfocus
...
Рейтинг: 0 / 0
Поиск записи в подчиненной форме
    #32461515
Ukraina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не совсем понял
me!контролссабформой.setfocus = me![Номер подчиненной формы].setfocus

Если можно оазверните ответ. Куда это вставить?
...
Рейтинг: 0 / 0
Поиск записи в подчиненной форме
    #32461516
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
авторme!контролссабформой.setfocus = me![Номер подчиненной формы].setfocus
Вот это никуда вставлять не надо. А то, что я написал, - перед командой, которая ищет запись (и ищет в главной, а если это добавить, то будет искать в подчиненной).
...
Рейтинг: 0 / 0
Поиск записи в подчиненной форме
    #32461522
Ukraina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир Саныч!!!!!!!!
Использовал 2 метода
1.
Private Sub Шаблон_AfterUpdate()
Dim rst As Recordset, frm As Form, s As String
On Error GoTo 999
Set frm = [ПФ_картотека].Form
Set rst = frm.RecordsetClone
rst.FindFirst "([Номер] Like '" & Me.Шаблон & "')=True"
If rst.NoMatch = False Then
frm.Bookmark = rst.Bookmark
Else
MsgBox "Нет данных!"
End If

Exit Sub
999:
MsgBox "Введите правильно данные?"
End Sub

Работает но в пределах текущей записи главной формы. Т.е находит номер и ставит фокус в нужном месте в подчиненной форме. Если нет такого, то пишетт соответственно, однако такой номер существует, правда в другой записи главной формы . Чаго сделать??????????????

2.
Private Sub Кнопка81_Click()
Forms![Картотека]![ПФ_картотека]![Номер].SetFocus
Me![ПФ_картотека]![Номер].SetFocus
DoCmd.GoToControl "Номер"
DoCmd.FindRecord 21
, , True, , True

где "21" номер искомый

End Sub
В этом случае вообще пишет (после DoCmd.GoToControl "Номер"), что ошибка и нет вообще такого поля, хотя он естььь

Выручите, где нужно исправить. И главное, что бы при существовании такого номера все перешло на соответствующую запись в главной
...
Рейтинг: 0 / 0
Поиск записи в подчиненной форме
    #32461524
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Первый способ работает совершенно правильно. Если в форме содержатся только записи, соответствующие текущей записи главной формы, то оно в них и ищет. Чтобы искало в других записях, надо искать в других записях. То есть открывать рекордсет не на frm.RecordsetClone, а на таблице.

Второй способ будет работать, если сделать то, что я сказал:
Me![ПФ_картотека].SetFocus
...
Рейтинг: 0 / 0
Поиск записи в подчиненной форме
    #32461525
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Но, кстати, и второй способ тоже будет искать только в тех записях, которые есть.
...
Рейтинг: 0 / 0
Поиск записи в подчиненной форме
    #32461528
Ukraina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Чтобы искало в других записях, надо искать в других записях. То есть открывать рекордсет не на frm.RecordsetClone, а на таблице. "

Если не "frm.RecordsetClone", то что мне написать "на таблице"

Владимир Саныч
Я уже начинаю сдаваться. Многие вещи я пишу просто наугад, не осознавая, чаго пишу. Приведенный мною метод стал результатом (гибридом) моих вставок из других примеров. Да он работает, но не переходит на другие записи основной формы. Если Вам не трудно. тонапишите решение, я уже все перепробывал или дайте более развернутое объяснение вашему объяснению

"То есть открывать рекордсет не на frm.RecordsetClone, а на таблице. "

Чаго написатььььььььььь????????????????
...
Рейтинг: 0 / 0
Поиск записи в подчиненной форме
    #32461544
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Не "чаго написать", а "дай списать". Понимаю.

set rst=currentdb.openrecordset("названиетаблицы", dbopendynaset)

Только при этом Bookmark работать не будет. Надо взять из рекордсета значение ключа главной формы и дважды сделать DoCmd.FindRecord: сначала в главной форме найти нужную запись, а потом SetFocus на подчиненную и найти в ней.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Поиск записи в подчиненной форме
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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