Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Word [D7, Paradox]


nik4543 ©   (2003-12-09 15:12:00) 

Привет всем.
Как сохранить в базу вордовский файл.
Спасибо за совет.


Shirson   (2003-12-13 12:15:00) [1]

>r9000

Можно через ClipBoard (если нужно сохранять не весь текст целиком, а частями)

Считывать в Ворд, опять же, если из нескольких кусков, нужно составить один документ, можно так:

varW:=CreateoleObject("Word.application");
...
TBlobField(AdoQuery1sod_doc).SaveToFile (GetCurrentDir+"\temp10"+s);
varW.Selection.InsertFile(FileName:=GetCurrentDir+"\temp10"+s,Range:="",ConfirmConversions:=False,Link:=False,Attachment :=False);


tchn   (2003-12-11 15:28:00) [2]

http://www.vector-ski.com/reports


r9000   (2003-12-11 13:03:00) [3]

Для записи:
ADOQuery1.Edit;
TBlobField(AdoQuery1sod_doc).LoadFromFile (opendialog1.FileName);
ADOQuery1.Post;
Для воспроизводства:
TBlobField(AdoQuery1sod_doc).SaveToFile (GetCurrentDir+"\temp10"+s);
varW:=CreateoleObject("Word.Basic");
varW.FileOpen(GetCurrentDir+"\temp10"+s);
varW.appshow;

По другому как воспроизвести незнаю и ни у кого не могу выяснить.


nik4543   (2003-12-11 12:17:00) [4]

Вот именно. я делаю а у меня ничего не выходит вот код.

// Сохраняем
procedure TForm1.Button1Click(Sender: TObject);
var
blob: TBlobStream;
begin
blob := yourDataset.CreateBlobStream(yourDataset.FieldByName("YOUR_BLOB"), bmWrite);
try
blob.Seek(0, soFromBeginning);
fs := TFileStream.Create("c:\your_name.doc", fmOpenRead or
fmShareDenyWrite);
try
blob.CopyFrom(fs, fs.Size)
finally
fs.Free
end;
finally
blob.Free
end;
end;

// Загружаем
procedure TForm1.Button1Click(Sender: TObject);
var
blob: TBlobStream;
begin
blob := yourDataset.CreateBlobStream(yourDataset.FieldByName("YOUR_BLOB"), bmRead);
try
blob.Seek(0, soFromBeginning);

with TFileStream.Create("c:\your_name.doc", fmCreate) do
try
CopyFrom(blob, blob.Size)
finally
Free
end;
finally
blob.Free
end;
end;


asp   (2003-12-09 16:09:00) [5]

Воспользуйся полем BLOB.


Наверх

Титульная страница Поиск, карта сайта Написать письмо