Страница: 1 |
Вот кусок кода, который корректно работает только в пошаговом режиме. В остальных случаях последний проход цикла по счетчику i ровно через раз не отображает изменения в базе. А если после каждого выполнения этого кода выгружать форму и снова загружать, то всё нормально. Приходится закомментировать .Adodc1.Refresh. и отказаться от установки фильтра на RecordSet With frm1.Adodc1.Recordset Страница: 1 |
Вопрос: Вопрос по IDE
Добавлено: 27.12.03 16:17
Автор вопроса: cresta
Объясните пожалуйста кто-нибудь, какая разница между тремя способами запуска программы:
1. Из IDE по кнопке F8 (пошаговый режим)
2. Из IDE по кнопке F5
3. Запуск скомпилированного ЕХЕ-файла
Результаты разные при разных способах запуска. Корректно работает только первый способ
Ответы
Всего ответов: 4
Номер ответа: 1
Автор ответа:
Павел
Администратор
ICQ: 326066673
Вопросов: 368
Ответов: 5968
Web-сайт:
Профиль | | #1
Добавлено: 27.12.03 18:02
Тут дело в отладке (Debug).
1. Простой запуск с отладкой.
2. Пошаговое выполнение. Очень удобная штука.
3. Запуск без отладки.
Номер ответа: 2
Автор ответа:
cresta
Вопросов: 117
Ответов: 1538
Профиль | | #2
Добавлено: 27.12.03 20:04
LockWindowUpdate frm1.DataGrid1.hWnd
For i = 1 To LV1.ListItems.Count
st$ = "code = '" & Trim$(LV1.ListItems(i).Text) & "'"
.Find st, 0, adSearchForward, ADODB.adBookmarkFirst
If Not .EOF Then ' если код найден
sd = .Fields(9).Value 'считываем остаток
sd = sd - CDbl(LV1.ListItems(i).ListSubItems(4).Text)
.Fields(9).Value = sd
End If
Next i
.Update
frm1.Adodc1.Refresh
LockWindowUpdate 0
End With
Номер ответа: 3
Автор ответа:
AASoft
Вопросов: 86
Ответов: 920
Профиль | | #3
Добавлено: 27.12.03 21:26
uberi LockWindowUpdate 0
Номер ответа: 4
Автор ответа:
cresta
Вопросов: 117
Ответов: 1538
Профиль | | #4
Добавлено: 28.12.03 00:27
Заглушить LockWindowUpdate 0 ничего не дает, это просто грид, средство отображения объекта Recordset, в самом Recordset через раз изменения не происходят. А в пошаговом режиме происходят. Хотя не должны были происходить.