| Непонятки с DEBUG | |
|---|---|
|
Каратаев Автор Сообщений: 4091 Откуда: Алматы Дата регистрации: 04.12.2001 |
Добрый день. Никак не могу понять такой момент: делаю выборку в курсор, а DEBUG показывает, что он не открыт. Хотя на долю секунды USED(...) мелькает в значение .T., а потом упорно выставляет .F. На скрине видно, какая команда в данный момент выполняется, и в то же время он якобы не открыт.
Хотелось бы понять каким образом он закрывается... [attachment 36609 2023-07-05_133916.png] ------------------ Никогда не бывает настолько плохо, чтобы не могло быть еще хуже. |
| Re: Непонятки с DEBUG | |
|---|---|
|
PaulWist Сообщений: 14819 Дата регистрации: 01.04.2004 |
Таймер?
------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) |
| Re: Непонятки с DEBUG | |
|---|---|
|
Каратаев Автор Сообщений: 4091 Откуда: Алматы Дата регистрации: 04.12.2001 |
Что ещё интересно: если после команды GO TOP (на скрине) поставить BROWSE, то этот курсор спокойно себе отображается, при USED(...) = .F.
Вот как такое может быть? ------------------ Никогда не бывает настолько плохо, чтобы не могло быть еще хуже. |
| Re: Непонятки с DEBUG | |
|---|---|
|
Каратаев Автор Сообщений: 4091 Откуда: Алматы Дата регистрации: 04.12.2001 |
Нет никаких таймеров там в принципе...
------------------ Никогда не бывает настолько плохо, чтобы не могло быть еще хуже. |
| Re: Непонятки с DEBUG | |
|---|---|
|
dimag Сообщений: 484 Откуда: Одинцово Дата регистрации: 17.12.2002 |
[attachment 36610 Screenshot2023-07-05123246.png]
В таких случаях просто установить точку останова работает 100% Покажет строку кода, где изменилось значение ------------------ Never judge a book by its cover. Исправлено 1 раз(а). Последнее : dimag, 05.07.23 12:36 |
| Re: Непонятки с DEBUG | |
|---|---|
|
Каратаев Автор Сообщений: 4091 Откуда: Алматы Дата регистрации: 04.12.2001 |
Точка останова не помогла. Никак не реагирует... Но что странно, так это ситуация на скрине - и browse курсор нормально отображает, и messagebox() утверждает, что курсор открыт...
[attachment 36611 2023-07-05_133916.png] ------------------ Никогда не бывает настолько плохо, чтобы не могло быть еще хуже. |
| Re: Непонятки с DEBUG | |
|---|---|
|
Каратаев Автор Сообщений: 4091 Откуда: Алматы Дата регистрации: 04.12.2001 |
[attachment 36612 2023-07-05_133916.png]
Из значения .F. на долю секунды мелькает .T. и снова .F.... ------------------ Никогда не бывает настолько плохо, чтобы не могло быть еще хуже. |
| Re: Непонятки с DEBUG | |
|---|---|
|
dimag Сообщений: 484 Откуда: Одинцово Дата регистрации: 17.12.2002 |
Я думаю т.к. ты закрываешь родительский курсор у тебя закрывается и выборка. Объясню почему, это работает рашмор он иногда просто накладывает фильтр на таблицу, а не создает новый курсор физически. Это легко проверить используя DBF(cur_avn). Чтобы создавался полностью независимый курсор используй WITH (BUFFERING = lExpr)] в выражении запроса.
------------------ Never judge a book by its cover. Исправлено 1 раз(а). Последнее : dimag, 05.07.23 15:52 |
| Re: Непонятки с DEBUG | |
|---|---|
|
Taran Сообщений: 13872 Откуда: Красноярск Дата регистрации: 16.01.2008 |
Может сессии дергаются?
|
| Re: Непонятки с DEBUG | |
|---|---|
|
akvvohinc Сообщений: 4720 Откуда: Москва Дата регистрации: 11.11.2008 |
Цитата:Если выборка закрылась, то как отрабатывают все последующие команды от SELECT и до BROWSE? |
| Re: Непонятки с DEBUG | |
|---|---|
|
dimag Сообщений: 484 Откуда: Одинцово Дата регистрации: 17.12.2002 |
Да очень просто, где то в Deactivate формы снова открывается табла или при потери фокуса в поле. Хоть browse и системное окно, но события то никто не отменял. ------------------ Never judge a book by its cover. Исправлено 1 раз(а). Последнее : dimag, 05.07.23 19:52 |
| Re: Непонятки с DEBUG | |
|---|---|
|
dimag Сообщений: 484 Откуда: Одинцово Дата регистрации: 17.12.2002 |
вообще, если не поможет, то самый действенный способ, это
P.S. FoxCOM+ вообще никаким дебаггером не отладить. Отладил prg, скомпилил COM, а оно не работает, как пример CreateObject() для COM ставит объекту Set("default") C:\Windows\System32, а не каталог запуска или регистрации COM, а ты сидишь и думаешь, че не работает, а он тупо пути не находит ------------------ Never judge a book by its cover. Исправлено 2 раз(а). Последнее : dimag, 05.07.23 20:16 |
| Re: Непонятки с DEBUG | |
|---|---|
|
akvvohinc Сообщений: 4720 Откуда: Москва Дата регистрации: 11.11.2008 |
Цитата:Не понял - все команды показаны на экране. После какой из них срабатывает Deactivate и о какой такой табле речь? |
| Re: Непонятки с DEBUG | |
|---|---|
|
dimag Сообщений: 484 Откуда: Одинцово Дата регистрации: 17.12.2002 |
Пусть не Deactivate а таймер, что то срабатывает, видно, что какой то goApp есть, там и bindevent на какое нибудь свойство может быть. А табла avn у него на картинке. Мне вообще по барабану, я предлагаю -> решение. ------------------ Never judge a book by its cover. Исправлено 2 раз(а). Последнее : dimag, 05.07.23 21:01 |
| Re: Непонятки с DEBUG | |
|---|---|
|
akvvohinc Сообщений: 4720 Откуда: Москва Дата регистрации: 11.11.2008 |
Цитата:На картинке он работает с курсором cur_avn, который, как вы предположили, закрылся вместе с таблой avn, после чего сработало некое событие, в котором avn вновь открылась (и курсор, видимо, тоже?). Не понимаю, как всё это может объяснить, что USED() от открытого курсора возвращает .F. А если такого алиаса нет, то почему не вываливаются в ошибку все команды, начиная с SELECT на этот курсор и кончая его BROWSE. Цитата:А я не понял, есть ли вообще проблема, которую надо решать.
Ну, показывает что-то не то DEBUG, но на самом-то деле курсор открыт или нет? Неясно. Исправлено 1 раз(а). Последнее : akvvohinc, 05.07.23 22:25 |
| Re: Непонятки с DEBUG | |
|---|---|
|
andrewk Сообщений: 221 Откуда: Красноярск Дата регистрации: 15.05.2005 |
Цитата:Добавьте в дебаггер кроме used() ещё sele(0), под go top добавьте "? select(0)". Совпадают? |
| Re: Непонятки с DEBUG | |
|---|---|
|
andrewk Сообщений: 221 Откуда: Красноярск Дата регистрации: 15.05.2005 |
Блин, думал об одном, написал другое Конечно же имел в виду Set("Datasession") |
| Re: Непонятки с DEBUG | |
|---|---|
|
lemenev Сообщений: 314 Дата регистрации: 23.06.2022 |
А если сделать так:
|
| Re: Непонятки с DEBUG | |
|---|---|
|
akvvohinc Сообщений: 4720 Откуда: Москва Дата регистрации: 11.11.2008 |
Цитата:Даже если б такое могло помочь, то просто возник бы другой вопрос - а что изменилось от того, что вы убрали этот SELECT? |
| Re: Непонятки с DEBUG | |
|---|---|
|
Каратаев Автор Сообщений: 4091 Откуда: Алматы Дата регистрации: 04.12.2001 |
Что-то вразумительное смогу ответить только в понедельник... У нас тут 4 выходных, а исходники на работе...
Единственное, что пока приходит в голову - форма, из которой вызывается код, немодальная. Датасессия там приватная. Но проверял, выводя в коде DatasessionId формы и актуальную в момент исполнения кода - совпадают... Пока други мыслей нет... ------------------ Никогда не бывает настолько плохо, чтобы не могло быть еще хуже. |
| © 2000-2025 Fox Club  |