Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.06;
Скачать: CL | DM;

Вниз

ошибка при отобр-и данных с LookupField   Найти похожие ветки 

 
D   (2003-01-21 14:20) [0]

Мастера, помогите пож-та!!!! может кто-то сталкивался с чем-нибудь подобным!
Есть АДОДатаСет, в нем несколько Lookup полей. В design-time открывается нормально, все отображается в связанном с ним Гриде. Во время вып-я при отображении в гриде вылетает с EOleException "Unknown error...".
(Если убрать флажок Stop on exception, то данные в Гриде все-таки отображаются).


 
D   (2003-01-21 14:34) [1]

Где возникает ошибка - обнаружилось: среди Lookup-полей есть одно, которое может содер-ть пустые значения. МОЖНО ЛИ ВСЕ-ТАКИ исп-ть в этом случае Lookup-поле?


 
don-do   (2003-01-21 14:48) [2]

По всей видимости программист ограничился только лишь обработкой исключения, поэтому стоит наплевать на эту ошибку, тем более что при нормальной работе ее не возникает


 
jee ©   (2003-01-21 15:02) [3]

я когда-то протрахался с этой ошибкой несколько дней. В LookUp поле включи свойство LookupCache в true.


 
D   (2003-01-21 15:12) [4]

>jee

СПАСИБО ОГРОМНОЕ!


 
BlackTiger   (2003-01-21 21:10) [5]

Блин! Моя ошибка! Я первый про этот АДОшно-Дельфийский баг спрашивал! Я пробился несколько дней, а потом просто поставил "Stop on Delphi exceptions" в false. ЗАДОЛБАЛО!
Все было нормально до определенного момента, а потом начала вылезать эта ерунда. При этом дурацкий дебагер выкидывал в абсолютно левый код где-то в недрах модуля ADO, почему-то связанный с анализом наложенных фильтров не понятно на что. После удаления исходников ADO просто вываливался "в никуда".

Косячек-с бормановский, однако.


 
Johnmen ©   (2003-01-22 00:44) [6]

>BlackTiger (21.01.03 21:10)

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


 
BlackTiger   (2003-01-22 11:08) [7]

Уважаемый Johnmen!

Расскажите мне тогда ПОЧЕМУ до определенного момента все работает, а в один прекрасный момент отбрасывает копытца и сыпет "левые" исключения? Дельфя в ресурсы, что ли пишет содержитмое лукапных полей? И почему, если все повторить ОДИН-В-ОДИН в ЧИСТОМ проекте, то опять некоторое время все работает, потом - кранты?
Что ТАКОЕ модуль DB.dcu передает модуль ADODB.dcu, что последний просто выпадает в exception?


 
Johnmen ©   (2003-01-22 11:26) [8]

>BlackTiger (22.01.03 11:08)

1. Предлагаю на "ты".
2. Коротко :
Каждый раз, когда у приложения возникает необходимость в значении лукапного поля (напр.для отображения), происходит обращение к лукапному НД, в котором ищется соотв.запись, и из нее берется необх.значение поля. Если же на лукапный НД стоит фильтр, то, естественно, соотв запись м.б. не найдена. В этом случае значение лук-го поля не определено. АДОДатаСет проверяет эту ситуацию и возбуждает ексепшн, что, впрочем, не мешает отобразить пустое поле. Если установить кеширование лук-го поля, то значения соотв.полей лук-го НД помещаются в кеш, откуда и берутся при необходимости. Кеш строится в момент создания/получения НД с лук.полем, поэтому именно в этот момент лук-ый НД не д.б. отфильтрован...

Уф-ф-ф-ф...Устал...:)))



Страницы: 1 вся ветка

Текущий архив: 2003.02.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.013 c
3-15449
mate
2003-01-20 11:15
2003.02.06
MSSQL и Paradox


1-15646
Brain
2003-01-29 10:43
2003.02.06
Иконка компонента на ToolBar - Delphi.


14-15822
Anatoly Podgoretsky
2003-01-22 07:38
2003.02.06
Именинники 22 января


1-15678
Noname Master
2003-01-27 12:10
2003.02.06
Точка вместо запятой


1-15551
Sergy
2003-01-28 15:28
2003.02.06
Не могу найти ссылку на файл?