Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.03.28;
Скачать: [xml.tar.bz2];

Вниз

Переопредение стандартных компонентов   Найти похожие ветки 

 
_sulent ©   (2004-02-25 07:16) [0]

Всем здрасти!
Встал такой вопрос, необходимо переопределить класс TQuery в TADOQuery. Как это можно сделать. Вопрос стал так сильно из-за того, что необходимо переписывать большое количество исходного кода. Фактически нужно переопределить класс и метод ParamByName. Ранее программа работала на BDE, а теперь ее необходимо перевести на SQL Server.
Что можете посоветовать бедолагам?


 
ЮЮ ©   (2004-02-25 08:17) [1]

Прктически всё что надо сам и написал:

в Uses своих модулей вместо DBTables написать UToADO (cм.ниже, или создать свой юнит DBTables и положить "поближе" к проекту), а в нём всего-то:

unit UToADO;

interface

uses ADODB;

type
 TQuery = class (TADOQuery)
 public
   function ParamByName(const Value: string):  TParameter;
 end;

implementation

{ TQuery }

function TQuery.ParamByName(const Value: string):  TParameter;
begin
 Result := Parameters.ParamByName(Value);
end;

end.


 
ЮЮ ©   (2004-02-25 08:22) [2]

Хотя, чтобы и Design-е со свои TQuery, очевидно надо будет его зарегистрировать в палитре компонентов.


 
Reindeer Moss Eater ©   (2004-02-25 08:50) [3]

Find & Replace в *.pas и *.dfm


 
_sulent ©   (2004-02-25 12:15) [4]

да, все это хорошо и даже работает, через это все проходили, проблема встала в том, что в АДО он рисует приблизительно так:
ADOQuery.Parameters.ParamByName("code").value := code;
а на БДЕ это все пишется так: Query.ParamByName("code").asInteger := code;
допустим изменим мы это все, а как же быть с типами данных, ведь в АДО они прописаны как Variant, а в БДЕ как типы данных!


 
Sandman25+1   (2004-02-25 12:24) [5]

Значит нужно function ParamByName(const Value: string):  TMyParameter;
И соответственно написать TMyParameter наследником TParameter с нужными свойствами.



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

Форум: "Базы";
Текущий архив: 2004.03.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.031 c
6-1073904178
Alibaba
2004-01-12 13:42
2004.03.28
Получить email


4-1073897358
NewJack
2004-01-12 11:49
2004.03.28
Как программно сменить принтер по умолчанию?


6-1074529259
Opryshok
2004-01-19 19:20
2004.03.28
Парсинг HTML документа.


6-1073649790
Iks
2004-01-09 15:03
2004.03.28
Как отправить звук от микрофона по сети


8-1069331199
Vladislav
2003-11-20 15:26
2004.03.28
JPEG2000





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский