![]() |
![]() ![]() ![]() ![]() |
|
Сохранение компонента полностью со всеми свойствами в БДDelphi , Базы данных , Компоненты и Базы данных
Автор: Z-man
{ **** UBPFD *********** by delphibase.endimus.com ****
>> Сохранение компонента полностью, со всеми свойствами в БД.
Данная функция использовалась и используется для сохранения отчетов,
формируемые пользователем, в базу данных. БД используется: Informix и Oracle,
под другие БД не пробовал. Отчеты строились в ReportBuilder5.5.
Для других компонентов не пробывал использовать
Зависимости: стандартные
Автор: Z-man, nik7777@land.ru, ICQ:160236098, Astana
Copyright: Z-man ®
Дата: 28 мая 2002 г.
***************************************************** }
function ComponentToString(Component: TComponent): string;
var
BinStream: TMemoryStream;
StrStream: TStringStream;
s: string;
begin
BinStream := TMemoryStream.Create;
try
StrStream := TStringStream.Create(s);
try
BinStream.WriteComponent(Component);
BinStream.Seek(0, soFromBeginning);
ObjectBinaryToText(BinStream, StrStream);
StrStream.Seek(0, soFromBeginning);
Result := StrStream.DataString;
finally
StrStream.Free;
end;
finally
BinStream.Free
end;
end;
Пример использования:
OraTReport.FieldByName('report').AsString := ComponentToString(rbReport);
//* где: *//
//* rbReport - ReportBuilder5 (желтый отчет)*//
//* OraTReport - TOraTable из пакета компонентов ODAC (визуальные *//
//* компоненты для прямого доступа к Oracle)*//
Функция Цель функции seems to be saving a component (in this case, a ReportBuilder report) to a database. Пример использования показывает, как использовать ее для сохранения отчета в таблице Oracle базы данных с помощью компонентов ODAC. Разбивка кода:
Функция возвращает строковое представление компонента. Альтернативные решения:
Однако без знания о конкретных требованиях и ограничениях вашего проекта трудно предложить лучший альтернативный способ. В статье описана функция ComponentToString, которая сохраняет компонент в виде строки, включая все его свойства, в базе данных. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш :: Главная :: Компоненты и Базы данных ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 | ||||