Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Как сделать чтобы шаблон Договора в Word нормально записывал  (Прочитано 10505 раз)
0 Пользователей и 1 Гость смотрят эту тему.
DDD2006
Гость
« : 04-10-2006 08:25 » 

ытаюсь сделать шаблон договора в Word 2003
пишу в 1С

Процедура Договор()
   
   WordApp=СоздатьОбъект("Word.Application");
   NewDoc=WordApp.Documents;           
   //Открітие файла
   Док=NewDoc.Add("d:\Тест.doc");
   //Заполнение текстового поля
   Док.FormFields("ТекстовоеКонтрагент").Result =СокрЛП(Контрагент.ПолнНаименование);
   Док.FormFields("ДатаДоговора").Result=СокрЛП(Договор.Наименование);
   Док.FormFields("ДатаВозникновенияДог").Result=СокрЛП(Формат(Договор.ДатаВозникновенияОбязательства,"Д (0)ДДММММГГГГ"));
   Док.FormFields("СокрФИО").Result=СокрЛП(ФИОКотраогент(Контрагент.ПолнНаименование));
   
   Док.FormFields("НомерПаспорт").Result=СокрЛП(Контрагент.ДокументНомер);       
   Док.FormFields("СерияПаспорта").Result=СокрЛП(Контрагент.ДокументСерия);
   
   Док.FormFields("ДатаВыдач").Result=СокрЛП(Контрагент.ДокументДатаВыдачи);
   Док.FormFields("ДокВыдан").Result=СокрЛП(Контрагент.ДокументКемВыдан);
   
   //WordApp.Documents.Open("d:\Тест.doc");
   Док.Save();
   //   Док.SaveAs("d:\"+ТекущаяДата()+" "+Контрагент.Наименование+".doc",0);
   Док.SaveAs("d:\"+Формат(ТекущаяДата(),"Д (0)ДДММММГГГГ") +" "+Контрагент.Наименование+".doc",1);
   Док.Documents.Open("d:\"+Формат(ТекущаяДата(),"Д (0)ДДММММГГГГ") +" "+Контрагент.Наименование+".doc");
   Док.Close();
   Док.Application.Quit();
   WordApp.Quit();
КонецПроцедуры

Но работает что-то он через раз и криво, не открывает этот заполненный договор, при открытии Ворда там 2 а то и более зависит от того сколько раз нажали документов... как можно исправить это?

Как можно записать уже в созданный файл?

Где можно скачать по VB хорошую документацию на русском?
Записан
KPETuH
Гость
« Ответ #1 : 07-12-2006 10:18 » 

чтобы открывался ворд с открытым шаблоном нужно делать обязательно

WordApp.Visible=1; тоесть форд отурыт работает но невидим поэтому и получается когда пытаетесь открыть ворд у вас там куча открытых документов, так как ворд уже был запущен и документы зодаются но вы этого не видите.

потом мне не очень понят зачем два раза сохранять документ причем под разными именами потом ту же один из них открывать и тут же закрывать ворд.

Вообще я бы посоветовал работать не с вордом а с екселем создать готовый шаблон отформатировать его как вам нужно а потом из 1с заносить в нужные ячейки информацию
Записан
KPETuH
Гость
« Ответ #2 : 07-12-2006 10:25 » 

С вордом я думаю тож возможно, но с ним работал меньше.
По пунктам делаете следуещее.

1. Создаете сам шаблон.
2. Открываете шаблон средствами 1с и заносите туда свои данные.
3. Сохраняете файл под другим именем. (либо позволяете это сделать пользователю не сохраняя файл а делая видимым для него ворд или ексель смотря в чем делать)

з.ы. Сори за очепятки когда пишу на экран не смотрю, и печатаю достаточно быстро поэтому много опечаток Улыбаюсь.
Записан
KPETuH
Гость
« Ответ #3 : 07-12-2006 10:29 » 

пункт первый делается только один раз в случае с екселем, потом всегда можно использовать этот шаблон, с вордом не работал не знаю
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines