Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.05.15;
Скачать: CL | DM;

Вниз

OleContainer???   Найти похожие ветки 

 
ATK   (2003-04-24 07:20) [0]

Доброе утро. Подскажите пожалуйста, как связать OleContainer с Table. Например, чтоб при нажатий на Btn, данные из контейнера записывались в БД. <Если б кто скинул код>
Заранее блогадарен.


 
BoxTer ©   (2003-04-24 09:12) [1]


procedure TFormDatabase.DBGrid1EditButtonClick(Sender: TObject);
var OleContainer:TOleContainer;
begin
{ Записать файл в OLE BLOB в некое поле }
if not DM.имя_поля_ОЛЕ.IsNull then
begin
DM.Table1.Edit;
DM.имя_поля_ОЛЕ.Clear;
DM.Table1.Post;
OleContainer.DestroyObject;
Exit;
end;
if not DM.OpenDialog.Execute then Exit;
OleContainer.CreateObjectFromFile(DM.OpenDialog.FileName,False);
end;

может помогет...


 
BoxTer ©   (2003-04-24 09:18) [2]

кстати, необходимо добавить некоторые манипуляции:

procedure TDM.TableContractsAfterScroll(DataSet: TDataSet);
var
Stream: TBlobStream;
begin
{Чтение объекта OLE из таблицы Table1}
if имя_поля_ОЛЕ.IsNull then
begin
FormDatabase.OleContainer.DestroyObject;
FormDatabase.OleContainer.Modified := False;
Exit;
end;
Stream := TBlobStream.Create(имя_поля_ОЛЕ,bmRead);
FormDatabase.OleContainer.LoadFromStream(Stream);
FormDatabase.OleContainer.Modified := False;
Stream.Free;
end;

procedure TDM.TableContractsBeforeScroll(DataSet: TDataSet);
var
Stream: TBlobStream;
begin
{Запись объекта OLE в таблицу Table1}
if not FormDatabase.OleContainer.Modified then Exit;
Table1.Edit;
Stream := TBlobStream.Create(имя_поля_ОЛЕ,bmWrite);
FormDatabase.OleContainer.SaveToStream(Stream);
Stream.Free;
Table1.Post;
end;

эти процедуры значатся в событиях твоей таблицы Table1


 
BoxTer ©   (2003-04-24 09:21) [3]

блин,
в конце первой процедуры TFormDatabase.DBGrid1EditButtonClick добавь в конец строку TableContractsBeforeScroll(nil).
И не обращай внимание на надписи DM. в тексте, забыл убрать



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

Текущий архив: 2003.05.15;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.032 c
1-46754
Serg
2003-04-30 15:35
2003.05.15
Excel XP


11-46674
Sam Stone
2002-08-09 18:52
2003.05.15
TKOLLabel, цвет


1-46798
Max1111
2003-05-02 12:34
2003.05.15
Работа с текстовыми файлами


1-46681
Denich
2003-05-03 16:33
2003.05.15
Проблемы с Random ...


14-47003
Hint
2003-04-28 12:37
2003.05.15
Исходники за деньги