powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ловить изменение порядка сортировки в форме
22 сообщений из 22, страница 1 из 1
ловить изменение порядка сортировки в форме
    #32441816
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
на какое событие ?
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32441843
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вариант номер раз - ловить нажатие стандартных кнопок в тулбарах/менюшках (если аксес 2000 и выше0
Вариант номер два - ловить события ADODB.Recordset (если форма на адошном рекордсете)
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32441916
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ловить события рекордсета проблемно так как в моем случае форма подчиненная и если назначать рекордсет то теряется связь с главной

а вот то как ловить события стадартных меню - это очень интересно

есть примерчик?
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32441927
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ловить события рекордсета проблемно так как в моем случае форма подчиненная и если назначать рекордсет то теряется связь с главной \r
Если у тебя adp - то не надо ничего назначать, просто используешь уже готовый рекордсет. Если mdb - тады ой.\r
\r
а вот то как ловить события стадартных меню - это очень интересно \r
есть примерчик?\r
Переключение режимов (таблица/форма)\r
Печать отчета (превью/принтер)\r
Тебе аналогичным образом надо ловить кнопки сортировки
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32441947
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
за примерчик с меню, спасибо, хорошая штучка, буду изучать

авторто не надо ничего назначать, просто используешь уже готовый рекордсет
а как насчет объявления существующего ME.recordset с withevents ???
ADP

когда новый назначаешь понятно:
Код: plaintext
1.
2.
3.
4.
5.
Public WithEvents RS As ADODB.Recordset


Set RS = New ADODB.Recordset
RS.Open  "SELECT ... " , CurrentProject.Connection, adOpenKeyset, adLockOptimistic
Set Me.Recordset = RS
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32441984
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а как насчет объявления существующего ME.recordset с withevents ???
А что, такое вот не прокатывает?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Private WithEvents mrst As ADODB.Recordset

Private Sub Form_Load()
    Set mrst = Me.Recordset
End Sub

Private Sub mrst_WillMove(трампампам)

End Sub

??
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32441992
ищ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
прокатывает
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442016
Фотография SergeySV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прикольно... никогда не приходила в голову мысль использовать WithEvents я объектом Recordset..... наверное потому что я не знал что у него еще есть события :(
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442022
Фотография SergeySV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мдам, действительно есть события.... дети воспитанные на DAO и знающие о событиях :) :(
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442079
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
при таком объявлении:

если форма запущена просто как форма то работает а если как подчиненная
то события
RS_WillChangeRecordset - вообще не случается
RS_WillMove - то случается то нет

adp, access 2002 , access 2003

может я чего не так понимаю / делаю
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442159
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
эээ блин, подстава...
У меня в 2002-ом аксесе события от рекордсета ловятся только до первой сортировки, а после нее - шишь.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Private WithEvents mrst As Recordset

Private Sub Form_Load()
    Set mrst = Me.Recordset
End Sub

Private Sub Form_Current()
    Debug.Print mrst Is Me.Recordset
End Sub

и сразу же после сортировки имею False
Какое свинство...

Правда я позорно непропатчен, может это как-то влияет...
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442166
Фотография SergeySV
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прикол, это чтож, после каждой сортировки заново устанавливать ссылку на Recordset ?!
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442209
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SergeySVПрикол, это чтож, после каждой сортировки заново устанавливать ссылку на Recordset ?!
Особенно хорошо этот вопрос звучит в контексте обсуждения "Как отловить сортировку?"
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442242
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не знаю, м.б. я один такой чудной: но я сейчас всегда убираю акесные меню/тулбары/хоткеи, и ставлю свой аналог, если мне надо что-то такое особенное отследить - т.е проще говоря - есть своя кнопка при нажатии на которую делаю что хочу - может лучше тебе, АлексейК, пойти этим путем? Проще напорядок (вроде). К тому же (по моему опыту) сортировки по одному полю (имею ввиду вид в режиме Форма) юзерам иногда бывает не достаточна и рано или поздно попросят и по 2,3 ...N полям одновременно - а тут стандратной кнопкой сортировка не обойдешься.

ИМХО все и, вообще, сложно судить про проблемы опытных прогеров на расстоянии...
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442250
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
К тому же (по моему опыту) сортировки по одному полю (имею ввиду вид в режиме Форма) юзерам иногда бывает не достаточна и рано или поздно попросят и по 2,3 ...N полям одновременно
Ну дык перевести в режим даташыта, отсортировать, и перевести обратно. Все операции - стандартными кнопками.
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442258
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну дык перевести в режим даташыта, отсортировать, и перевести обратно. Все операции - стандартными кнопками.

и не забыть убрать расчетные и прочие "лишние" поля (если есть), перевести фокус на нужную форму (если, например есть главная и подчиненые, а нужно сортировать одну из подчиненых) и все это оформить в справке и дать выучить наизусть юзерам - да ты, ЛП, садист я еще это заметил, когда ты руки предлагал операторам отрезать
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442279
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в принципе была задумка сделать свои кнопки сортировка и фильтры,

тем более что в ADP лучше использовать серверный фильтр и сортировку рекордсоурса


тока хочется чтоб была их программная генерация
пока затрудняюсь в некоторых моментах

хочется чтоб после того как было применено больше одного фильтра появлялась группа фильтры и в ней типа были построчно все фильтры с галочками чтоб снимать можно было выборочно

надеюсь понятно объяснил задуманное
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442317
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тем более что в ADP лучше использовать серверный фильтр и сортировку рекордсоурса \r
\r
а мне лично такой вариант больше нравится
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442401
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автортем более что в ADP лучше использовать серверный фильтр и сортировку рекордсоурса

а мне лично такой вариант больше нравится

что - то не понял суть этого топика...

там в хранимку передается порядок сортировки вроде ...

все равно сначала надо на клиенте получить команду сортировки сформировать программно параметры и передать в хранимку или я не понял сути ?
форма сама может эти параметры передавать?
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442416
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я имел ввиду, что (как мне кажется) лучше пользоваться ХП с параметрами, которые вернут нужные данные, чем сервеными фильтрами (еще надо псомотреть, что Акес серверу шлет и запрашивает - НО это ИМХО).
Пример как можно юзать сортировку, передаваемой параметром я и привел в ссылке на пост Глори.

все равно сначала надо на клиенте получить команду сортировки сформировать программно параметры и передать в хранимку или я не понял сути ?

Ну да. А если еще и добавлять к ранее сохраненой сортировке...

форма сама может эти параметры передавать?

может, только не совсем "сама". Надо дать имена контролам такие же как и параметры в ХП, но без @ и в очередное обнолвнеи соурса акес сам запросит, то что нужно - ты про это спросил?
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32442444
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторЯ имел ввиду, что (как мне кажется) лучше пользоваться ХП с параметрами, которые вернут нужные данные, чем сервеными фильтрами (еще надо псомотреть, что Акес серверу шлет и запрашивает - НО это ИМХО).
Пример как можно юзать сортировку, передаваемой параметром я и привел в ссылке на пост Глори.

дык серверные фильтры при хранимой процедуре в качестве источника данных вообще не работают (по крайней мере у меня не получалось) - поэтому только так и можно

авторможет, только не совсем "сама". Надо дать имена контролам такие же как и параметры в ХП, но без @ и в очередное обнолвнеи соурса акес сам запросит, то что нужно - ты про это спросил?

это я знаю, думал может у формы еще какие хитрости есть
...
Рейтинг: 0 / 0
ловить изменение порядка сортировки в форме
    #32444940
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
созрел я сделать меню для сортировки- фильтрации в форме ADP

но мысль что в таком замечательном программном продукте нет такого втроенного не дает мне покоя

сделал процедурку которая вывела мне идентификаторы контролов меню аксесса вот что получиллось:

210 --- Сортировка по во&зрастанию
211 --- Сортировка по у&быванию
497 --- При&менить фильтр
499 --- &Расширенный фильтр...
601 --- При&менить фильтр
605 --- &Удалить фильтр
640 --- &Фильтр по выделенному
2863 --- Фи&льтр для:
3938 --- &Применить серверный фильтр
3971 --- &Серверный фильтр по форме
4016 --- Сор&тировать по возрастанию
4017 --- &Сортировать по убыванию
5884 --- Ав&тофильтр
6417 --- &Сортировать по возрастанию
6418 --- Сортировка по у&быванию
6419 --- &Фильтр по выделенному
6420 --- Фильтр &вкл/выкл
7044 --- &Фильтр по выделенному
7058 --- Удалить &фильтр

я бы сказал что нижняя часть списка мне незнакома - я не видел такого в стандартных наборах...

если делать перехват нажатия то перехватываются из верхней части списка

может это и есть то что нужно?
кто -нибудь знает?

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


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