|
|
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
как в подчиненной форме перейти на нужную запись???? поиск с использованием FindFirst медтода Recordset не подходит, т.к. при перемещении по Recordset происходит автоматическое перемещение по самим данным( потеря фокуса-получение фокуса), а у меня при событиях с фокусом данные меняются , т.е. меняется Recordset и связанные далее проблемы.. по аналогии с mdb подходит RecordsetClone, но в ADP у него какой-то глюк(?). после применения основные данные ведут себя не адекватно - происходит их обновление многократное с мельканием на экране. пока не нажмешь SHIFT+ F9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2003, 20:06 |
|
||
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
Заводится логическая переменная: Dim НизяРеагироватьНаСобытия As Boolean Перед FindFirst пишем НизяРеагироватьНаСобытия = True После FindFirst пишем НизяРеагироватьНаСобытия = False А в каждом событии пишем If НизяРеагироватьНаСобытия Then Exit Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2003, 21:04 |
|
||
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
я бы сказал "некрасивое решение" но похоже единственное.... буду пробовать. спасибо.. а как-то исправить RecordsetClone? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.05.2003, 22:16 |
|
||
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
В ADP, в отличие от MDB есть такое понятие как максимальное число записей на форме. Т.е. в определенных случаях кол-во записей в Recordset и на самой форме отличается. Например: источник формы = select * from MyTable (кол-во записей в таблице=1000) на форме свойство MaxRecords=10 В форме требуется перейти на нужную запись? На какую нужную? А если она не отображена на форме, тогда куда переходить? Совет: Старарайтесь в ADP отходить от использования Recordset применительно к формам. Просто работать с Recordset - пожалуйста. А вот с формами лучше работать напрямую (т.е. обращаясь к свойствам и методам объекта FORM). Ну, например если требуется искать/фильтровать программно данные подформы по полям главной формы, то изменять лучше свойство RecordSource. Что касается перехода на нужную запись - почитайте справку по методу Docmd.FindRecord - я использую этот метод. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2003, 11:03 |
|
||
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
Если форма ленточная или табличная, лучше всего использовать свойство recordsetClone К примеру, надо перейти на запись с Id=325 1. Выбираем значение из ComboBox 2. Открывем RecordsetClone dim frmSub as form dim rstClone as recordset set frmSub=... set rstclone=frmSub.recordsetClone и ищем в нем запись c ID=325, лучше всего методом findFirst 3.Если запись нашлась, присваииваем закладку реальной форме: frmSub.bookmark=rstClone.bookmark После этого указатель встанет на нужную запись. Другого способа найти запись по ключевому полю мне неизвестен. В синтаксисе могу ошибиться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2003, 15:09 |
|
||
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
2 Вадя Для твоей задачи как раз рекомендуется использовать Recordset, а не RecordsetClone. По крайней мере умный дяди в умных книжках так пишут. А уж если у тебя на LostFocus меняются данные - ну это как-то неправильно (имхо). Ты бы еще на MouseMove рекордсеты на ходу менял... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2003, 15:24 |
|
||
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
2wara в ADP RecordsetClone не работаяет так как в MDB!!!!!!!!!!!!!!!!! 2incold MaxRecords=1000 ; кол-во записей в таблице<300 = для меня заведомо Docmd.FindRecord - еще почемуто не пробовал. 2Лох Позорный бывают всякие извращения - это одно из них (главная форма, в ней 2 подформы, 1 основная с выделеним строк цветом, припереходе по записям текущая запись выделяется тоже цветом. 2 вспомогательная (тоже с выделением цветом) - только выбранные записи из первой. при преходе по второй необходимо в первой ставить указатель на идентичную запись) для работы очень удобно, операторы оформляют заказ принимая его от заказчика по телефону, многократно меняя количество и наименование. к концу разговора готов счет. когда в конце разговора (принятия заказа) просят "стартовать" для ринятия счета по факсу с клиентами происходит замешательство - они не могут понять когда? наши операторши просто тащатся от такого. а мне приходится извращаться, я однажды так принял заказ - ради тагкого эффекта стоит это затевать... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2003, 21:09 |
|
||
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
Не по теме: 2wara >и ищем в нем запись c ID=325, лучше всего методом findFirst >Другого способа найти запись по ключевому полю мне неизвестен. Насколько я, понял ID - это или первичный ключ либо индексированое поле, тогда лучше (быстрее) искать через Seek ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2003, 09:14 |
|
||
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
Seek не работает с линкованными таблицами ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2003, 20:52 |
|
||
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
проблема решена\r \r /topic/32375 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2003, 22:29 |
|
||
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
To вадя: Прочитал описание задачи и есть одно замечание. Если требуется повесить событие на перемещение по записям формы, то удобнее использовать событие "Текущая запись" (Form_Current), а не потеря фокуса-получение фокуса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 09:06 |
|
||
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
2Michael Vasilev согласент , но только это часть задачи . в общем при выходе из записи нужно изменить запись и при вхождении в запись тоже изменить запись. поэтому работа с фокусом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 09:53 |
|
||
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
Слушай, я тоже прочитал описание, и у меня вопрос возник. Для чего тебе на входе в запись ее изменять? Уж не для выделения цветом? Если да - может условное форматирование проще будет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 10:14 |
|
||
|
RecordsetClone в ADP
|
|||
|---|---|---|---|
|
#18+
2wara >Seek не работает с линкованными таблицами Не работает -это точно, но кто мешает использовать прямое подключение к базе с данными? Код: plaintext 1. 2. Теперь остается оценить накладные расходы при использовании Find и Seek. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2003, 10:37 |
|
||
|
|

start [/forum/topic.php?fid=45&msg=32164643&tid=1681444]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
40ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
| others: | 205ms |
| total: | 350ms |

| 0 / 0 |
