LEADERSOFT.ru Разработка на заказ программ и сайтов
Форумы по информационным технологиям
 
Регистрация  |  Вход
left
Форумы Минимизировать
ПоискСписок форумов
  Программирование  Microsoft Access. Файлы mdb и accdb  Тема: Курсор в ...
 Тема: Курсор в подчиненной форме
 
 15.06.2007 21:09:19
Elena1
8 сообщения


Тема: Курсор в подчиненной форме
Пожалуйста, помогите разобраться с такой проблемой:
Есть подчиненная форма (ПФ), содержащая выплаты по датам. И есть главная форма (ГФ), содержащая поле Выплачено (то есть общую сумму выплат). При добавлении/изменении данных в ПФ поле Выплачено обносляется (с помощью метода Requery). Проблема в том, что после обновления курсор в ПФ перескакивает на самую первую запись, что раздражает пользователя, которому обычно надо ввести несколько выплат подряд. Можно как-то заставить курсор остаться на последней записи или перейти на новую?



P.S. Общий раздел по формам
Автор: Елена от 13.04.2005 10:30:23 Источник ...
 15.06.2007 21:09:19
All
4316 сообщения
1-ый


RE: Курсор в подчиненной форме
1. У записи в подчиненной форме должен быть счетчик. Если его запомнить до обновления, то потом можно будет найти запись (примеры даны в файле: la_find.mdb).
2. Есть варианты и без обновления. Например, после изменения расчетного поля, лучше использовать для сохранения записи команду: DoCmd.RunCommand acCmdSaveRecord, а потом расчитать поле в главной таблице: Me.Parent.Выплачено = Dsum(...)



P.S. Общий раздел по формам
Автор: Admin от 0:00:00 Источник ...
 15.06.2007 21:09:19
All
4316 сообщения
1-ый


RE: Курсор в подчиненной форме
Можно и без VBA:
В примечании ПФ создаете поле (имя например "ПромежуточнаяСумма").
В свойстве Данные этого поля пишите = Sum(Сюда то, что надо просумировать).
Поле будет суммировать ту группу данных, которые выводятся в данный момент в ПФ.
Ну и в поле ГФ источником данных указать ПФ.ПромежуточнаяСумма.

Реквери не происходит. Соответственно и курсор не будет перескакивать на первую позицию.
-----------------------------------------------

В VBA можно также попробовать Bookmark (закладка указывающая на какую нибудь запись).
перед обновлением сохраняем Bookmark ПФ формы в переменную.
После обновления (фокус должен быть на ПФ)
ПФ.Bookmark = та самая переменная 'делаем текущей запомненую позицию
Прим.
Закладки можно сохранять на несколько записей. В этом случае "та самая переменная" должна быть массивом Variant.


P.S. Общий раздел по формам
Автор: Владимир Донецк от 0:00:00 Источник ...
 15.06.2007 21:09:19
All
4316 сообщения
1-ый


RE: Курсор в подчиненной форме
Можно и без VBA:
В примечании ПФ создаете поле (имя например "ПромежуточнаяСумма").
В свойстве Данные этого поля пишите = Sum(Сюда то, что надо просумировать).
Поле будет суммировать ту группу данных, которые выводятся в данный момент в ПФ.
Ну и в поле ГФ источником данных указать ПФ.ПромежуточнаяСумма.

Реквери не происходит. Соответственно и курсор не будет перескакивать на первую позицию.
-----------------------------------------------

В VBA можно также попробовать Bookmark (закладка указывающая на какую нибудь запись).
перед обновлением сохраняем Bookmark ПФ формы в переменную.
После обновления (фокус должен быть на ПФ)
ПФ.Bookmark = та самая переменная 'делаем текущей запомненую позицию
Прим.
Закладки можно сохранять на несколько записей. В этом случае "та самая переменная" должна быть массивом Variant.


P.S. Общий раздел по формам
Автор: Владимир Донецк от 0:00:00 Источник ...
 15.06.2007 21:09:19
Elena1
8 сообщения


RE: Курсор в подчиненной форме
Огромное вам спасибо за ответы!
Теперь всё получилось =)


P.S. Общий раздел по формам
Автор: Елена от 15.04.2005 13:52:04 Источник ...
  Программирование  Microsoft Access. Файлы mdb и accdb  Тема: Курсор в ...
ПоискПоиск  Список форумовСписок форумов  
right