Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft Access Новый топик    Ответить
 Печать отчета. Не дает удалить файл шаблона.  [new]
cvbnm2
Guest
Строка:
If Dir(OutPutch & TempName) <> "" Then Kill OutPutch & TempName
работает только если TempName - temp.xls, если имя шаблона temp.doc, то получаю ошибку "Нет разрешения". Файл "temp" формируется в обоих случаях одним и тем же способом. Это чисто "вордовые" заморочки?
22 авг 06, 13:18    [3037219]     Ответить | Цитировать Сообщить модератору
 Re: Печать отчета. Не дает удалить файл шаблона.  [new]
АндрейК
Member

Откуда: Москва
Сообщений: 380
Перед этой строки добавь
WordApp.Quit
22 авг 06, 15:13    [3038193]     Ответить | Цитировать Сообщить модератору
 Re: Печать отчета. Не дает удалить файл шаблона.  [new]
4321
Member [заблокирован]

Откуда:
Сообщений: 3573
temp.doc
замени на
temp.dot
и ворд перестанет ставить "блокировки на совместную работу".
22 авг 06, 17:09    [3039062]     Ответить | Цитировать Сообщить модератору
 Re: Печать отчета. Не дает удалить файл шаблона.  [new]
cvbnm2
Guest
ворд перестанет ставить "блокировки на совместную работу".
А этим параметром управлять можно?
23 авг 06, 13:37    [3042954]     Ответить | Цитировать Сообщить модератору
 Re: Печать отчета. Не дает удалить файл шаблона.  [new]
4321
Member [заблокирован]

Откуда:
Сообщений: 3573
cvbnm2
ворд перестанет ставить "блокировки на совместную работу".
А этим параметром управлять можно?
ворд, насколько я понимаю, ставит блокировку на запрошенный к редактированию файл .doc (хотя сама сессия редактирования всегда идет во временном файле). причем - не важно, использовали вы его в качестве шаблона, или просто открыли. По сути работы с копией файла - одновременный доступ нескольких пользователей на запись не возможен (нет способа логически праильно слить реплики воедино). Посему видимо вордом попросту ставится блокировка на уровне операционки (файл становится доступен "только для чтения" + неудаляем). Обойти эту фичу, кроме как используя в качестве шаблона файл с расширением dot у меня в свое время не получалось. При создании файла на основе dot такой проблемы (блокировки файла) не возникало.
23 авг 06, 14:02    [3043135]     Ответить | Цитировать Сообщить модератору
 Re: Печать отчета. Не дает удалить файл шаблона.  [new]
cvbnm2
Guest
С dot та же проблема!
Процедура работы с шаблоном упрощенно выглядит так:
TempName = "temp.dot"
Set rst = CurrentDb.OpenRecordset("Шаблоны")
byteShabl = rst(FieldName).GetChunk(0, rst(FieldName).FieldSize)
Open OutPutch & TempName For Binary Access Write As #1
Put #1, , byteShabl 
Close #1
rst.Close
Set WordApp = CreateObject("Word.Application")
Set WordDoc = WordApp.Documents.Open(OutPutch & TempName)
...............................................
'вызов процедур созданий отчетов
...............................................
'Результирующий файл
    FileName = OutPutch & strFileName
'Если уже был такой, то удаляем
    If Dir(FileName) <> "" Then Kill FileName
'Сохраняем под нужным именем
    WordDoc.SaveAs FileName
    WordApp.Quit
'Удаляем шаблон
        If Dir(OutPutch & TempName) <> "" Then Kill OutPutch & TempName
Без ошибки последнюю строку можно пройти только поставив на ней точку останова.
23 авг 06, 14:26    [3043329]     Ответить | Цитировать Сообщить модератору
 Re: Печать отчета. Не дает удалить файл шаблона.  [new]
cvbnm2
Guest
23 авг 06, 16:12    [3044203]     Ответить | Цитировать Сообщить модератору
 Re: Печать отчета. Не дает удалить файл шаблона.  [new]
АндрейК
Member

Откуда: Москва
Сообщений: 380
Вот так у меня работает и с .dat, и с .doc :
'Сохраняем под нужным именем
    WordDoc.SaveAs FileName
    WordApp.Quit
    Set WordApp = Nothing
'Удаляем шаблон
................................
23 авг 06, 18:29    [3045203]     Ответить | Цитировать Сообщить модератору
 Re: Печать отчета. Не дает удалить файл шаблона.  [new]
4321
Member [заблокирован]

Откуда:
Сообщений: 3573
cvbnm2
С dot та же проблема!
Set WordDoc = WordApp.Documents.Open(OutPutch & TempName)

дык не открывать надо шаблон, а создавать новый документ из шаблона, тады усё получицца.
Set OpenWord = wrdApp.Documents.Add (FileName) 
23 авг 06, 18:36    [3045230]     Ответить | Цитировать Сообщить модератору
 Re: Печать отчета. Не дает удалить файл шаблона.  [new]
cvbnm2
Guest
А-а-а....вот в чем дело!
23 авг 06, 18:50    [3045304]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft Access Ответить