Отже, об'єкт Word завантажений, і в нас є доступ до нього через змінну w:variant. Об'єкт має методи, за допомогою яких можна створювати, відкривати й зберігати документи.
Створення документа
Для створення документа використовують метод:
w.documents.add;
Після виконання цього методу буде створений документ на підставі стандартного шаблону normal.dot.
Викликати методу add можна з аргументом. У цьому випадку створюється документ на основі зазначеного шаблону. Для своїх додатків можна створити додаткові шаблони документів, наприклад шаблон форми платіжного доручення або податкової декларації. Надалі, використовуючи метод add із вказівкою на шаблон, легко створити потрібний документ, заповнюваний інформацією із програми. Використання шаблонів при формуванні нових документів дозволить створювати гнучкі й зручні для користувача додатки в середовищі Delphi.
Приклад. Нехай у теці із програмою є папка шаблонів з ім'ям Shablon, а в ній файл шаблону з ім'ям anketa.dot. Створимо новий документ на основі шаблону.
w.documents.add(extractfilepath(application.exename)+'shablon\anketa.dot');
Збереження документа
Можна програмно зберегти створений документ на диск. Для цього використовується метод виду:
w.activedocument.saveas(
filename:='ім'я файлу'[,
fileformat:=число][, password:='пароль']);
Метод має аргументи:
- filename – ім'я файлу;
- fileformat – формат збереження файлу (0 – документ Word, 1 – шаблон Word, 2 – тільки текст, 4 – текст DOS, 6 – текст RTF, 7 – кодований текст);
- password – пароль на відкриття файлу.
- filename – ім'я файлу;
- format – формат збереження файлу (0 – автовибір, 1- документ Word, 2 – шаблон Word, 3 – текст RTF, 4 – звичайний текст, 5 – кодований текст);
- passworddocument – пароль на відкриття файлу.
Наприклад: відкриємо збережений раніше файл:
w.documents.open(filename:=extractfilepath(application.exename)+'output\отчет.doc',fileformat:=1);
Якщо файл має пароль, то його можна відкрити так:
w.documents.open(filename:=extractfilepath(application.exename)+'output\отчет.doc',format:=1, passworddocument:=’123456’);
Закриття документа й додатка Word
Якщо документ збережений, то його можна закрити за допомогою методу:
w.activedocument.close;
Після закриття документа можна закрити й сам додаток Word. Для цього використовують два оператори:
w.quit;
w:=unassigned;
Використовуючи методи роботи з документами можна організовувати фонове створення файлів без відображення їх на екрані.
Приклад. На підставі шаблону anketa.dot з теки shablon створити новий документ. Зберегти документ під ім'ям отчет.doc у теку output. Після збереження видати повідомлення про успішне створення файлу й запросити користувача відкрити файл для перегляду. Якщо відповідь позитивна, то файл відкривається, якщо негативний, то Word закривається.
//створюємо об'єкт (запускаємо Word)
w:=createoleobject('word.application');
//створюємо новий документ на основі шаблону
w.documents.add(extractfilepath(application.Exename)+
'shablon\anketa.dot');
//зберігаємо документ у зазначений файл у форматі doc
w.activedocument.saveas(extractfilepath(application.Exename)+
'output\отчет.doc',fileformat:=1);
//видаємо запит на відкриття збереженого файлу
if application.messagebox(Файл збережений. Відкрити?','Запит',
mb_yesno+mb_iconquestion)=idyes then
//якщо відповідь Так, робимо Word видимим
w.visible:=true
else
//якщо відповідь Ні, закриваємо документ і Word
begin
w.activedocument.close;
w.quit;
w:=unassigned;
end;