|
|
|
Поиск записи в подчиненной форме
|
|||
|---|---|---|---|
|
#18+
Имеется форма «ГЛ» и подчиненная форма «ПФ». В «ПФ» есть поле «Номер». Задача: нужно осуществить поиск по «Номеру» в «ПФ», если находит, то открывается запись главной формы, где есть этот номер в «ПФ». Пробывал методами, которые знаю, но поиск и переход осуществляется только в текущей записи главной формы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2004, 21:12 |
|
||
|
Поиск записи в подчиненной форме
|
|||
|---|---|---|---|
|
#18+
авторПробывал методами, которые знаю, но поиск и переход осуществляется только в текущей записи главной формы. me!контролссабформой.setfocus ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2004, 22:03 |
|
||
|
Поиск записи в подчиненной форме
|
|||
|---|---|---|---|
|
#18+
Не совсем понял me!контролссабформой.setfocus = me![Номер подчиненной формы].setfocus Если можно оазверните ответ. Куда это вставить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2004, 22:08 |
|
||
|
Поиск записи в подчиненной форме
|
|||
|---|---|---|---|
|
#18+
авторme!контролссабформой.setfocus = me![Номер подчиненной формы].setfocus Вот это никуда вставлять не надо. А то, что я написал, - перед командой, которая ищет запись (и ищет в главной, а если это добавить, то будет искать в подчиненной). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2004, 22:10 |
|
||
|
Поиск записи в подчиненной форме
|
|||
|---|---|---|---|
|
#18+
Владимир Саныч!!!!!!!! Использовал 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 "Номер"), что ошибка и нет вообще такого поля, хотя он естььь Выручите, где нужно исправить. И главное, что бы при существовании такого номера все перешло на соответствующую запись в главной ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2004, 22:33 |
|
||
|
Поиск записи в подчиненной форме
|
|||
|---|---|---|---|
|
#18+
Первый способ работает совершенно правильно. Если в форме содержатся только записи, соответствующие текущей записи главной формы, то оно в них и ищет. Чтобы искало в других записях, надо искать в других записях. То есть открывать рекордсет не на frm.RecordsetClone, а на таблице. Второй способ будет работать, если сделать то, что я сказал: Me![ПФ_картотека].SetFocus ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2004, 22:40 |
|
||
|
Поиск записи в подчиненной форме
|
|||
|---|---|---|---|
|
#18+
Но, кстати, и второй способ тоже будет искать только в тех записях, которые есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2004, 22:41 |
|
||
|
Поиск записи в подчиненной форме
|
|||
|---|---|---|---|
|
#18+
"Чтобы искало в других записях, надо искать в других записях. То есть открывать рекордсет не на frm.RecordsetClone, а на таблице. " Если не "frm.RecordsetClone", то что мне написать "на таблице" Владимир Саныч Я уже начинаю сдаваться. Многие вещи я пишу просто наугад, не осознавая, чаго пишу. Приведенный мною метод стал результатом (гибридом) моих вставок из других примеров. Да он работает, но не переходит на другие записи основной формы. Если Вам не трудно. тонапишите решение, я уже все перепробывал или дайте более развернутое объяснение вашему объяснению "То есть открывать рекордсет не на frm.RecordsetClone, а на таблице. " Чаго написатььььььььььь???????????????? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2004, 22:53 |
|
||
|
Поиск записи в подчиненной форме
|
|||
|---|---|---|---|
|
#18+
Не "чаго написать", а "дай списать". Понимаю. set rst=currentdb.openrecordset("названиетаблицы", dbopendynaset) Только при этом Bookmark работать не будет. Надо взять из рекордсета значение ключа главной формы и дважды сделать DoCmd.FindRecord: сначала в главной форме найти нужную запись, а потом SetFocus на подчиненную и найти в ней. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2004, 23:37 |
|
||
|
|

start [/forum/topic.php?fid=45&tid=1675719]: |
0ms |
get settings: |
11ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
144ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
| others: | 245ms |
| total: | 496ms |

| 0 / 0 |
