powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Глюки курсорадаптера
17 сообщений из 17, страница 1 из 1
Глюки курсорадаптера
    #33851728
-=AlexiS=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хочу поделится проблемой с которой столкнулся при использовании курсорадаптера .
Итак VFP9/ MSSQL 2000
Строю несколько курсорадаптеров - все отлично работает , но вот добавляю еще один который возвращает порядка 50 тыс. записей(таблицы могут быть разные) - назовем его справочником .
И все - один из курсорадаптеров созданный ранее не работает - возвращает 0 количество записей !.
Ладно ,думаю, просто типа не успевает загрузить сразу - делаю CursorRefresh() - хренушки нет ничего. Эксперементирую дальше - в вновь создаваемом курсорадаптере(справочнике) ставлю признак того, что не надо загружать данные сразу. Первый курсор загружается - вроде ура , но !!! CursorRefresh() на нем неработает - как не меняй параметры отбора - данные с сервака не идут.
Пока что решил проблему так- курсорадаптеры строю только на обновляемые параметризированные курсоры - все достаточно большие (хотя разве это большие 50 тыс) курсоры загружаю через sqlexec.

Если кто сталкивался с такой бедой и победил это - поделитесь.
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33852589
Недоходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 -=AlexiS=-

Привет земляк!!! :-)
Тоже использую курсоры.
А Сколько ты курсоров создаешь?
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33852624
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi AlexiS!

Полный пример некорректного поведения нарисовать сможешь? А то так что-то не
понятно что ты делаешь и как, и где именно ломается...

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33853193
-=AlexiS=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to Недоходящий
курсоров в этой именно форме сейчас - 10.

to Igor Korolyov

Итак сначала я создал порядка 5-7 курсоров которые предназначались для ввода и обновления.
Все они являются параметризированными , загружаются сначала без заполнения данными(Initially open with no data), и уже в Load и Init формы я определившись с параметрами делаю примерно следующее
Код: plaintext
1.
2.
3.
dt_st=GOMONTH(DATE(),- 1 )
dt_end={^ 9999 . 12 . 31   11 : 59 }
oCA=Getcursoradapter('booking')
oCA.CursorRefresh()
Данные подгружаютсся и все ок

Но вот я решаю для дальнейшей работы подгрузить 2 справочника Sotrud и Klient
Создаю курсорадаптеры которые представляют из себя примерно такой код
Код: plaintext
select naimen,kod,rc from klient where office=?Prava_office
результат такой выборки примерно 50 тыс
В свойствах курсорадаптера стоит загружать данные сразу

Теперь внимание
при загрузке формы курсор BOOKING - пуст
и что бы я не дела с параметрами
код
Код: plaintext
1.
2.
3.
dt_st=новый данные
dt_end=новый данные
oCA=Getcursoradapter('booking')
oCA.CursorRefresh()
все равно не работает

После этого делаю следующее
ставлю свойства справочника- не грузить данные сразу.
загрузку произвожу позже в load form'ы

Код: plaintext
1.
oCA=Getcursoradapter('klient')
oCA.CursorRefresh()

певоначальная загрузка данных в BOOKING происходит НО
опять как не меняй параметры - refresh не идет ни в какую.
Причем эксперементировал убирая/оставляя оба справочника или по одному-все равно.

Убрал эти таблицы из курсорадаптеров, в Load form'ы загружаю их через sqlexec() - все работает как надо.

Т.Е. как я понял нельзя в курсорадаптерах использовать "большие" запросы .
(Хотя разве это много 50 тыс. записей ???)
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33853607
Проходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Неправильно ты понял. Можно в нем и больше. Ищи причину в твоих настройках курсор-адаптера.
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33853629
michael_nu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
см. allow simultaneous fetch
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33853801
-=AlexiS=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
allow simultaneous fetch - игрался
Fetch as need тоже
Fetch Size менял

Короче заметил такую закономерность - пока в курсорадаптер данные не подгрузяться полностью (вне зависимости от вышеперечисленных настроек ) - ничего в другие курcорадаптеры не грузиться.
Но почему ?
Какие еще могут быть настройки (может самого конекта ?)

И почему все работает если выполнять это дело через sqlexec !
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33853854
-=AlexiS=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
только что провел эксперимент
создал 2 курсорадаптера
1 большой - счета вся таблица - около 300 тыс.записей

allow simultaneous fetch .t.
Fetch as need .t.
Fetch Size 10

2 маленький параметризированный - сборы по счету.

пока не прокрутил до конца 1 курсор и не получил все записи - 2 курсорадаптер не обновлялся.
Причем если в DE первым создать большой курсор- второй вообще не создается
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33853897
-=AlexiS=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
продолжил эксперимент
ставлю большому курсору
Fetch as need .f.
Fetch Size -1
т.е. заставляю загрузить все данные - все работает
а хотелось бы нормальной асинхронной работы -
загрузилась первая порция - с ней работаем - а так приходиться ждать.
Некрасиво как-то

Sqlexec кстати у меня потому и работал, что у меня по умолчанию стоит синхронный режим.
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33854226
alex11100
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не понимаю необходимости тянуть 300 тыс

даже 10тыс нет необходимости тянуть
всегда можно ограничить
объем курсора
интерфейсными заморочками

зачем юзверу такой курсор и соответствующие тормоза??
чтобы затем фильтры на него накладывать???

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

придумайте курсорадаптеру свойства where
дополнительные и наклеивайте к основному селекту

ну это, во-первых

во-вторых посмотреть нужно
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33854477
-=AlexiS=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну елы-палы ясное дело , что не тяну я в реальной форме такое кол-во записей.
Приведенные примеры - это тесты.
Ясное дело что в интерфейсе у меня предусмотрены фильтры , курсорадаптеры параметризированы и т.д.
Но где та грань в отборе данных после которой происходит этот "глюк".
сегодня это 30 тыс. - а завтра вдруг глюканет на 100 записях ?
Просто хотелось бы нормального поведения от курсорадаптера .
Или по крайней мере документированного.
А так шаманством приходиться заниматься.
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33854505
Проходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще раз: нет у курсоадаптера такого ограничения. Ковыряйте настройки.
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33854527
-=AlexiS=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В догонку
самое поганое то , что если сначала создать "большой" курсорадаптер - то ВСЕ последующие просто-напросто НЕ СОЗДАЮТЬСЯ.
Ну пусть бы были пустыми - а так просто нет и все причем без всякой ошибки.
Профайлер показывает что запрос просто не идет.
Фокс решил за меня что мне это ненадо."Перетрудился и лег отдохнуть"

И небольшое лирическое отступление.
Что значит много - где грань - ?
10 тысячь-это много ? - вроде да , а если счет записей идет на миллионы ?

Опять-же я сам хочу решать что много , а что нет .
А так фокс сам решил что ему это много и все .
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33854532
alex11100
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
тянули 50 тыс

не было глюков
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33854580
-=AlexiS=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дайте свои настройки
я вроде уже все перепробовал.
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33859133
NeznajkaFox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробуй посмотреть здесь http: http://forum.foxclub.ru/read.php?29,181229,181365#msg-181365/url%5D]http://forum.foxclub.ru/read.php?29,181229,181365#msg-181365/url]
...
Рейтинг: 0 / 0
Глюки курсорадаптера
    #33860088
-=AlexiS=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо
вроде помогло - хотя в принципе дошел до таких-же выводов сам
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Глюки курсорадаптера
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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