Поиск:

Ответ в темуСоздание новой темы Создание опроса
> после вызова Locate восстановить курсор 
:(
    Опции темы
NieL
Дата 7.12.2011, 10:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 214
Регистрация: 10.2.2008

Репутация: нет
Всего: 1



помогите привести код в порядок:

Код

function TGroupsController.Exists(const Id: Integer): Boolean;
var
  Bookmark: TBookmark;
begin
  Bookmark := FDataSet.GetBookmark;
  try
    Result := Find(Id); // <- вызывается DataSet.Locate(...);
    if Result then
      FDataSet.GoToBookmark(Bookmark);
  finally
    FDataSet.FreeBookmark(Bookmark);
  end;
end;



1. Нужно ли перед FDataSet.GoToBookmark(Bookmark); ставить условие if Result then - менялся ли курсор?

2. Всиречал варианты кода, где FDataSet.GotoBookmark(Bookmark); находится в блоке finally. Нужно ли в моем случае перенести его туда?

3. Нужна ли здесь проверка FDataSet.BookmarkValid(Bookmark)?

4. Функция будет вызываться из DLL. Нужны ли DataSet.EnableControls/DataSet.DisableControls


Это сообщение отредактировал(а) NieL - 7.12.2011, 11:04
PM MAIL   Вверх
Akella
Дата 7.12.2011, 15:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



А зачем locate + gotobookmark?
И вообще, при чем здесь общие вопросы, если у тебя вопрос по базам данных?
PM MAIL   Вверх
superVad
Дата 7.12.2011, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 735
Регистрация: 6.4.2006
Где: Черкассы, Украина

Репутация: 3
Всего: 15



NieL, если данных в датасете много, то проверка на наличие ID может быть довольно ресурсоемкой. Может лучше создавать квери, делать запрос и уничтожать его.
В фибах сам компонент БД может делать простенькие запросы, не надо даже ничего создавать.
PM MAIL   Вверх
Akella
Дата 8.12.2011, 10:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 29
Всего: 329



Цитата(NieL @  7.12.2011,  10:58 Найти цитируемый пост)
Нужны ли DataSet.EnableControls/DataSet.DisableControls

почитай для чего они, уверен, сразу сообразишь smile
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0415 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.