powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Переход на запись в форме
18 сообщений из 18, страница 1 из 1
Переход на запись в форме
    #32214397
Michael Vasilev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, все.
AccessXP+MS SQL 2000
Задача после редактирования записи в форме ввода вернуться на запись ленточной формы, откуда форма ввода была вызвана.

Имеется вот такой код:

Forma.Refresh
strCriteria = "[IDN]=" & Me!KodPL
Forma.Recordset.Find = strCriteria

Или как вариант:
Forma.Refresh
strCriteria = "[IDN]=" & Me!KodPL
Set rst = .RecordsetClone
rst.MoveFirst
rst.Find strCriteria
If rst.EOF = False And rst.BOF = False Then
book = rst.Bookmark
Forma.Bookmark = book
End If
Так вот в чем проблема. В ленточной форме записей довольно таки много и если пытаться перейти на запись где то в конце, то эти куски кода ее просто не находят. Если запись на первых страницах, то соответственно находят без проблем.
Если после Refresh я вставляю какую либо задержку, типа Sleep 1000 то оба куска кода запись находят. Но подозреваю, что если кол-во записей превысит какой то порог, то задержку нужно увеличить. А задержку вообще не хочется делать.
Как это можно ободйти?
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214404
sasha_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
любимый DoEvents :)
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214417
Michael Vasilev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хороший ответ, но признаюсь мне не понятно.
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214428
sasha_1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поставь вместо Sleep 1000
DoEvents
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214429
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
после refresh
записи на клиента
еще не все доехали
а ты их уже начинаешь
искать
выход:
либо переходи
сначала на последнюю
запись, а потом ищи
или пользуйся
DoCmd.FindRecord
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214434
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и вообще
это уже давно
пройдено
смотри
http://am.rusimport.ru/MsAccess/topic.aspx?ID=24
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214450
Michael Vasilev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для Хама трамвайного: Я не спрашивал, почему это так, я спрашивал как это лечится. Первый ответ был хороший, второй думаю никому не нужен. Есть универсальный способ, если вопрос тебе не нравится потому, что это уже давно кем то пройдено, не отвечай. FAQа по Accessy пока нет, когда будет, то можно будет написать: Перед тем как спросить прочитайте пожалуйста FAQ. А так по поиску дает много ссылок и в большинстве не тот ответ, который мне нужен.
Всем спасибо за помощь.
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214463
Michael Vasilev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробовал все советы.
DoEvents в данном случае не помог.
И переход на последнюю запись тоже не помог.
И в сочетание тоже не помогло.
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214465
Хам трамвайный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
когда ты приходишь
к врачу с болезнью
тебя интересует
не только метод лечения,
но и само название
болезни и причина
ее вызвавшая,
а ты сразу
начинаешь говорить,
что тебе не нужна причина.
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214473
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Эх любимый асинхронный рекордсет

ADP
код в форме

Код: plaintext
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.
26.
27.
28.
29.
30.
Option Compare Database
Public WithEvents Rs As ADODB.Recordset
Public bound As Boolean
 
Private Sub Rs_FetchComplete(ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
'можно подключать рекордсет к форме после окончания загрузки всех записей'
'Set Me.Recordset = Rs'
'здесь уже можно вставить код для поиска'



End Sub

Private Sub Rs_FetchProgress(ByVal Progress As Long, ByVal MaxProgress As Long, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
Call SysCmd(acSysCmdSetStatus,  "receive from "  & Progress &  " to "  & MaxProgress)
If Not bound Then
'можно подключать рекордсет к форме после полчения первых записей, но запомнить что уже подключение сделано'
    Set Me.Recordset = Rs
    bound = True
End If
End Sub

Private Sub Кнопка2_Click() ' у меня в демопримере повешено на кнопку, но разумнее делать на загрузку '
Set Rs = New ADODB.Recordset
bound = False
    Rs.CursorLocation = adUseClient
    'вместо PROGRESS_PROC нужно указать имя большой таблицы, процедуры или вьюва  '
    Rs.Open  "PROGRESS_PROC" , CurrentProject.Connection, adOpenDynamic, adLockReadOnly, adAsyncExecute + adAsyncFetchNonBlocking
'On Error Resume Next 'пока рекордсет не получил записей его нельзя биндить к форме
'Set Me.Recordset = Rs
End Sub
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214474
Michael Vasilev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне не хочется разводить флейм.
Я хочу сказать, что я знаю причину и знал ее когда задавал вопрос.
И код привел, чтобы сразу часть вопросов снять с повестки.
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214531
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну как помог рекордсет с withevents или нет ?
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214544
Michael Vasilev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сорри, еще не пробовал, отвлекли на другую работу.
Попробую сообщу.
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214563
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хаму нахамили

вот это хамство..!!!!
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32214824
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя за реплику против местных гуру лишается сладкого на 10 дней ...))
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32216314
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хаму - Хаму Трамвайному

нахамили

Есть универсальный способ, если вопрос тебе не нравится потому, что это уже давно кем то пройдено, не отвечай.

если дают ссылку - значит потратили свое время (даже в своем избранном нужно найти)
при таком ответе надо сначало список просмотренных ссылок выкладывать.
отчет о проделанной работе и т.д.
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32216360
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И это - Микл Васильев
который обвинял меня в глубоком хамстве, якобы после которого кто-то очень крутой перестал то ли читать, то ли писать sql.ru
да уж... на себя посмотри...

На sql.ru появилась новая форма хамства. Приходит человек (в общем случае ни хера не знающий), что-то спрашивает, получает подробный ответ. После чего посылает всех нах и говорит что все дураки а он один все знает все умеет и все должны три раза ку делать.
Цирк блин.
...
Рейтинг: 0 / 0
Переход на запись в форме
    #32216368
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 Michael Vasilev
Ты только не воспринимай предыдущий пост как личный наезд..
Просто эта... прикольный топик (с) троящийся акуз
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Переход на запись в форме
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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