Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Класс производный от TOracleQuery, переопределение свойств и методов 
:(
    Опции темы
pseud
Дата 16.12.2008, 10:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



Цитата(holodnaya @  16.12.2008,  01:07 Найти цитируемый пост)
И что же теперь делать?


Ссылка:
 DOA: Делал ли кто-нибудь Dataset-обертку над TOracleQuery?

Все точки расставлены:
Код

//unit OracleData
TOracleDataset = class(TDataSet);

//unit Oracle
TOracleQuery = class(TComponent)

попробуй cделать свой класс так:
Код

  TLogonOracleDataSet = class(TOracleDataset)
  ... 



--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
holodnaya
Дата 17.12.2008, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Pseud, спасибо большое за помощь!
Я разобралась в чём у меня была ошибка.
Это я по глупости вызывала конструктор в одной процедуре (при загрузке MainForm), а методы этого класса - в процедуре другого юнита, а не в одной процедуре одного мейна последовательно.
Сейчас пишу так, и всё работает. 
Код

procedure TFLogon.BitBtn1Click(Sender: TObject);
begin
    if quLogon = nil then
    quLogon := TLogonOracleQuery.Create(DM.OracleSession1);
    
   if quLogon.Logon(LabeledEdit1.Text, LabeledEdit2.Text) then
     begin
       MainForm.Show;
        // уничтожить форму авторизации
        FLogon.Free;
        //quLogon.Free;
     end;
 end;

PM MAIL   Вверх
pseud
Дата 17.12.2008, 11:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Экспёрт Тыдыщ
***


Профиль
Группа: Завсегдатай
Сообщений: 1175
Регистрация: 18.5.2007
Где: Минск, Беларусь

Репутация: 16
Всего: 40



предлагаю немножко еще доработать:
1. я так понял quLogon это поле класса формы, а не брошенный на форму компонент. может лучше вообще динамически.
2. FLogon - это видимо глобальная переменная автогенерируемая дельфей. в классе формы НИКОГДА к ней не обращайся. лучше уж к Self. 
3. поэтому код:
Код

procedure TFLogon.BitBtn1Click(Sender: TObject);
begin
  with TLogonOracleQuery.Create(DM.OracleSession1) do
  try
    if Logon(LabeledEdit1.Text, LabeledEdit2.Text) then
    begin
      MainForm.Show;
      Close; // закрытие Self
    end;
  finally
    Free; // не забываем подгребать мусор TLogonOracleQuery
  end;
end;

4. всем всем всем и тебе в частности пройти Рыцарская Квинтатана (тестирование по Delphi). Вся прелесть в том, что результат тестирования - это не выставление оценки знаниям, а подробный и доходчивый анализ ответов на поставленный вопросы.




--------------------
Испытание чужого терпения можно считать успешным, если оно лопнуло...
PM MAIL   Вверх
holodnaya
Дата 17.12.2008, 21:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Спасибо и за оптимизацию, и за предложение пройти тестирование. Обязательно проверю свои силы как только сдам сессию.
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.0560 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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