
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
25.04.2006, 11:05
|
|||
|---|---|---|---|
|
|||
RecordSet зацикливание |
|||
|
#18+
Сразу привожу код Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. В общем почему-то при определенных условиях цикл обновления зацикливается, т.е. l_objRecordSetSecond.EOF всегда False. А в остальных случаях нет. В чем проблема пока не вижу. Может есть какой другой способ определения кол-ва записей и текущего положения указателя на запись??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.04.2006, 11:59
|
|||
|---|---|---|---|
|
|||
RecordSet зацикливание |
|||
|
#18+
А зачем шило на мыло менять 8) Все равно зацикливается. Он то зацикливается, то нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.04.2006, 12:10
|
|||
|---|---|---|---|
RecordSet зацикливание |
|||
|
#18+
On Error Resume Next уберите, если он есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.04.2006, 13:03
|
|||
|---|---|---|---|
|
|||
RecordSet зацикливание |
|||
|
#18+
Положение исправилось заменой выборки, а именно вместо определенных полей выбирал все Было Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Стало Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Просто вспомнил, что уже сталкивался с этой ерундой, но как-то забыл между делом. А тут бац и ошибка вылетела, хотя до этого все работало ) Надеюсь, на этом глюков не будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.04.2006, 13:57
|
|||
|---|---|---|---|
RecordSet зацикливание |
|||
|
#18+
MelkiadesOn Error Resume Next уберите, если он есть.т.е. Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.04.2006, 14:17
|
|||
|---|---|---|---|
|
|||
RecordSet зацикливание |
|||
|
#18+
В смысле т.е. ... Да, в проге есть On Error Resume Next, просто писалось все это месяцев 5 назад, я тогда вообще не шарил в этом ) Походу надо выходить из цикла при условии возникновения ошибки. Какими доводами я руководствовался писав тот код уже не помню 8) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.04.2006, 14:25
|
|||
|---|---|---|---|
|
|||
RecordSet зацикливание |
|||
|
#18+
Просто казалось, что если Recorset не сделает успешный Update, я отловлю эту ошибку, далее очищу объект Err, и перейду на сл. запись, которую тоже попытаюсь модифицировать, и так пока все записи не будут обработаны. Поэтому и On Error Resume Next и эта проверка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.04.2006, 14:28
|
|||
|---|---|---|---|
RecordSet зацикливание |
|||
|
#18+
Do Until l_objRecordSetSecond.EOF l_objRecordSetSecond.Edit l_objRecordSetSecond.Fields("state").Value = -1 l_objRecordSetSecond.Update If (Err <> 0) Then l_flagWasError = True Err.Clear End If l_objRecordSetSecond.MoveNext Loop ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.04.2006, 14:37
|
|||
|---|---|---|---|
|
|||
RecordSet зацикливание |
|||
|
#18+
Такого метода у моего рекорсета нет - l_objRecordSetSecond.Edit ;) В общем суть происходящего я так и не понял, хотя и решил проблему. Но это все заставляет призадуматься, - "А будет ли в дальнейшем работать?" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.04.2006, 14:54
|
|||
|---|---|---|---|
RecordSet зацикливание |
|||
|
#18+
В обработчике надо ставить Resume Иначе, после ошибки в рекордсете, MoveNext просто не сработает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.04.2006, 14:56
|
|||
|---|---|---|---|
RecordSet зацикливание |
|||
|
#18+
M0r0Такого метода у моего рекорсета нет - l_objRecordSetSecond.Edit ;) В общем суть происходящего я так и не понял, хотя и решил проблему. Но это все заставляет призадуматься, - "А будет ли в дальнейшем работать?" а нуда это же ADO а не DAO ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.04.2006, 15:46
|
|||
|---|---|---|---|
RecordSet зацикливание |
|||
|
#18+
Положите на форму два лабела, два текстбокса и кнопку И погоняйте программу по F8. Тогда все станет ясно. Код: 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.04.2006, 16:14
|
|||
|---|---|---|---|
RecordSet зацикливание |
|||
|
#18+
вместо текстбоксов и лайблов можно использовать Debug.Print и смотреть результат в окне отладки ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
25.04.2006, 16:32
|
|||
|---|---|---|---|
|
|||
RecordSet зацикливание |
|||
|
#18+
Попробую, но уже завтра, т.к. рабочий день ви енд 8) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.04.2006, 09:15
|
|||
|---|---|---|---|
RecordSet зацикливание |
|||
|
#18+
M0r0 а какие индексы есть на таблице? и лучше не используйте adOpenDynamic ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.04.2006, 12:52
|
|||
|---|---|---|---|
|
|||
RecordSet зацикливание |
|||
|
#18+
Индексов на этой таблице нет вообще. adOpenDynamic нужна так как надо сразу же видеть изменения. В общем проблему решил и остановлюсь на этом решении, а дальше видно будет ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.04.2006, 12:55
|
|||
|---|---|---|---|
|
|||
RecordSet зацикливание |
|||
|
#18+
В догонку. Resume тоже не исправляет положение, Recordset все равно остается слепым как крот и не видет количества своих записей, а также не может взвести флаг EOF . Но это все так послесловие. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
26.04.2006, 13:57
|
|||
|---|---|---|---|
RecordSet зацикливание |
|||
|
#18+
M0r0В догонку. Resume тоже не исправляет положение, Recordset все равно остается слепым как крот и не видет количества своих записей, а также не может взвести флаг EOF . Но это все так послесловие. Измените тип курсора у l_objDBCConnection с серверного на клиентский. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=60&tablet=1&tid=2165976]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
171ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
65ms |
get tp. blocked users: |
1ms |
| others: | 235ms |
| total: | 510ms |

| 0 / 0 |
