Мобильная версия форумов
Открыть
 −4°C
завтра: −11°C
Погода в Перми
−4°C
днем−6°C
вечером−7°C
завтра−11°C
Подробно
 65,51
−0.0252
Курс USD ЦБ РФна 23 февраля
65,5149
−0.0252
 74,33
+0.0369
Курс EUR ЦБ РФна 23 февраля
74,3332
+0.0369
  • scanner

    Анонимный пользователь

    Странная получается вещь.
    Для доступа к данным из приложения использую ADOConnection. Один для множества ADOQuery, расположенных на множестве форм.
    В программе доступно редактирование пути к используемой БД.
    Так вот, после изменения в run-time пути к БД пользователем перегружаю ADOConnection, чтобы он законнектился к указанной базе.
    А как быть с ADOQuery? Ведь их Active сразу же становится false, а перегружать их вручную - подход тупой и неоправданно трудоемкий.

    Кому-то, возможно, покажется, что и ADOConnection ресетать по ходу выполнения программы - глупая затея, однако эта функциональность действительно требуется.

  • osse

    Анонимный пользователь

    Если СЏ правильно РїРѕРЅСЏР», Рё тебе нужно установить Active РІ true Сѓ множества TADOQuery РЅР° форме(датамодуле) без лиС?РЅРёС… телодвижений, то сделай цикл РїРѕ всем контролам расположенным РЅР° форме, Рё если тип контрола TADOQuery устанавливай его свойтво Active РІ true.

  • scanner

    Анонимный пользователь

    Дело в том, что программа состоит из большого числа форм, использующих TQDOQuery для доступа к разным таблицам одной базы данных. Доступ осуществляется через один TADOConnection, общий для всех TADOQuery.
    Учитывая количество форм, перегрузка всех TADOQuery в цикле просто неприемлема. Есть ли вариант обойти этот способ?

  • рыжий котэ

    Сообщений: 12083

    А нельзя все ADOQuery держать в одном DataModule?

    Осторожнее с травой!
    Если хапнешь много дряни
    Увезут тебя с собой
    Злые инопланетяне

  • experienced

    Сообщений: 606

    Блин уже почити не помню ни билдера ни дельфу.
    А через Event'ы это никак не разрулить?

    Допустим подписать все свои TADOQuery на событие TADOConnection.OnConnect или такого на дельфе не получится?

    Или вообще в тупую, отнаследуйся от TADOConnection, добавь к нему еще
    private list m_QueryList
    и метод типа
    RegisterQuery(TADOQuery* query)
    {
    m_QueryList.Add(query);
    }

    ну и в методе connect пробегайся по всему листу и активируй все Query.

    Toyota Vitz 2005 1.3-> Mercedes CLK 2002 2.3 Kompressor-> Kia Sportage 2012 Biturbo T-GDI

    Исправлено пользователем Egor_M (29.06.04 11:48)

Записей на странице:

Перейти в форум

Модератор: