Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.08.2011, 04:45   #1
Lokos
Форумчанин
 
Регистрация: 29.09.2009
Сообщений: 587
По умолчанию Исчезает результат из DbGrid'a

Здравствуйте.
Проблема в следующем на событие формы OnShow выполняется код
Код:
FIBMyObjectDS:=TFIBDataSet.Create(nil);
  
   FIBMyObjectDS.Database:=DM1.FIBDB;
   FIBMyObjectDS.Transaction:=DM1.FIBT;
   FIBMyObjectDS.AutoCommit:=True;
   DSMyObject:=TDataSource.Create(nil);
   DSMyObject.DataSet:=FIBMyObjectDS;
   FormGlav.dbgrdMyObject.DataSource:=DSMyObject;
   FIBMyObjectDS.Close;
   FIBMyObjectDS.SQLs.SelectSQL.Text:='SELECT ND_GEO_PARAM."УЛИЦА",' +
                                             'ND_GEO_PARAM."ДОМ",' +
                                             'ND_TECHNIKAL_PARAM."ОБЩ. ПЛОЩАДЬ",' +
                                             'ND_TECHNIKAL_PARAM."ЖИЛ. ПЛОЩАДЬ",' +
                                             'ND_TECHNIKAL_PARAM."ЦЕНА",' +
                                             'ND_TECHNIKAL_PARAM."АВАНС" ' +
                                             'FROM ND_GEO_PARAM,ND_TECHNIKAL_PARAM,ND_UR_PARAM WHERE '+
  ' (ND_GEO_PARAM.ID=ND_TECHNIKAL_PARAM.ID AND ND_UR_PARAM.ID=ND_GEO_PARAM.ID) AND'+
  ' (ND_UR_PARAM."ФИО АГЕНТА"='+QuotedStr(AutorizationForm.fam+' '+AutorizationForm.name1+
  ' '+AutorizationForm.otch)+')';
   FIBMyObjectDS.Open;
   FIBMyObjectDS.Last;
   FormGlav.grpMyObject.Caption:='Мои объекты - '+Inttostr(FIBMyObjectDS.RecordCount);
   FIBMyObjectDS.First;
запрос выполняется показывается сколько объектов выбрано но dbgrid не чего не отображает. Если данный код выполнять на кнопку то все в порядке. В чем может быть проблема?
Lokos вне форума Ответить с цитированием
Старый 29.08.2011, 08:12   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

1) не знаю, почему у Вас код не отрабатывает... возможно, что ещё на каком-то событии есть обработка тех же самых контролов..
попробуйте поместить этот код на событие формы onCreate

2) никто не отменял отладку. Ставьте точку останова на нужном операторе и смотрите в отладчике, чему равен grpMyObject.Caption

3) когда имя контрола записывают полностью (с указанием формы), меня это всегда настораживает... А что, этот код находится не внутри формы FormGlav ?! Может быть, в FormGlav ещё какие-то обработчики висят?

4) уберите .Last и .First - они в коде СОВСЕМ не нужны! И, кроме лишних тормозов, это Вам ничего не даёт.
RecordCount доступен и без этих "прыжков" по датасету!!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 29.08.2011, 08:35   #3
Lokos
Форумчанин
 
Регистрация: 29.09.2009
Сообщений: 587
По умолчанию

last и first так для теста были.
grpMyObject.Caption отображает количество записей которые были выбраны и отображает их правильно но вот в dbgride они в прямом смысле слова исчезают. он отображает результат после чего он просто исчезает(
если сделать данный код на кнопку то все работает как надо.
если сделать на formCreate то вылетает ошибка не существующего адреса.

по поводу RecordCount
если не сделать last в dataset то RecordCount будет равен 1 а если поставить last то он будет равен количеству записей и номеру текущей записи

ошибка найдена как всегда все банально и глупо)

Последний раз редактировалось artemavd; 29.08.2011 в 15:01.
Lokos вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Исчезает свободная память Stella07 Операционные системы общие вопросы 5 30.05.2011 15:57
Убрать определенные записи из DBGrid'a Alex2391 Общие вопросы Delphi 7 13.03.2011 18:15
Исчезает Date and Time Picker! Klim Bassenger Microsoft Office Excel 17 24.11.2009 18:25
запустится и маментально исчезает в не куда gaka1995 Общие вопросы C/C++ 8 24.08.2009 15:37