Главная страница
    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.45 MB
Время: 0.034 c
6-1073721833
shur2005
2004-01-10 11:03
2004.03.28
Порты


4-1074590593
Lin7
2004-01-20 12:23
2004.03.28
Как использовать ReadDirectoryChanges?


3-1077195733
Гаврила
2004-02-19 16:02
2004.03.28
Запись DBase в DOS кодировке


3-1077876131
Salivan
2004-02-27 13:02
2004.03.28
паковка DBF таблиц из программы


1-1078906715
neg2001
2004-03-10 11:18
2004.03.28
Сервер приложений в виде WebService по Win2003





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский