Создание договоров из Microsoft Word или OpenOffice документов


Обработка является примером создания договора  из документа WORD или OpenOffice, путем замены определяющих тегов в документе на необходимые значения.  Данный механизм можно использовать в качестве создания решений по автоматическому формированию документов.

Данную обработку можно использовать для создания договоров, путем обработки Microsoft  Word  или Open Office документов.

Принцип работы с обработкой прост. Вы создает шаблон договора. Например:

Уважаемый [контрагент] !  Подписав данный договор,  Вы соглашаетесь со всеми требованиями пожарной безопасности и безопасности охраны труда  и т.д.

 

Запускаете обработку, указываете контрагента, его договор, путь к шаблону и раздел, где необходимо сохранять созданные договора.

Если шаблон договора в формате Microsoft Word тогда после выполнения обработки появится ссылка на вновь созданный файл. Если шаблон в Open Office в шаблон будут подставлены значения, вместо тегов, и выведен результат. Такой документ нужно вручную сохранить в папку с договорами (так и не разобрался с документации Open Office   как сохранить созданный документ, без открытия его пользователю).

 

Шаблон, файл Microsoft Word

 

 

Шаблон, файл Open Office

 

 

Список тегов:

[дата договора] — Дата договора

[номер договора] — Номер договора

[контрагент] — Полное наименование контрагента

[юридический адрес] — Юридический адрес

[почтовый адрес]  — Почтовый адрес

[ТЕЛФАКС] — Телефон/Факс

 [ИНН] — ИНН контрагента

[КПП] — КПП контрагента

 [БАНК] — Наименование банка контрагента

[РС] — р/с контрагента

[КС] — к/с банка

 

Запуск и работа с обработкой:

 

 

  

В файле публикации, обработка и 2 шаблона: OpenOffice и MicrosoftWord.

UP. Обработка обновлена, все ошибки и замечания, которые были указаны в комментариях, исправлены. Спасибо iones за пример работы с Open Office документами //infostart.ru/public/101774/

42 Comments

  1. slaviksoft

    Как пример сойдет.

    Но внутри страшно написано.

    Reply
  2. Zircool

    Только учусь под 1С писать.Буду признателен если укажите на ошибки.

    Reply
  3. Boroda

    Главное — чтобы правильно работал и давал корректный результат. Красота придёт с опытом….

    Reply
  4. necropunk

    (3) Boroda, ну, не соглашусь. Если человек не работает над уровнем кода — он может быть хорошим спецом, его обработки работают, но лезешь внутрь — аж волосы шевелятся. Как будто человек всю жизнь писал на Си, потом перепрыгнул на 7.7 полностью сохранив Сишный стиль, а потом уже перенес получившееся в восьмерку, не заметив, что формы сменились на управляемые.

    А так, пример работы с Вордом — это хорошо. Щас пишу аццкую выгрузку, формирующую 20-старничный документ с разными стилями, динамическими таблицами, заголовками, содержанием — вот где ад начинается. А начиналось все тоже с простенького шаблона.

    Reply
  5. Kristi74

    В свое время пробовал с помощью delphi выгружать из базы 1с в word, поскольку не силен в программировании 1с. А на данный момент убеждаюсь, что все таки необходимо учиться.

    Reply
  6. Boroda

    (4) Но никто и не отрицает неоходимости совершенствования и работы над собой. Но порой бывает нужен срочный результат, и приходится его добиваться, даже если опыта не хватает. Потом, конечно, можно и довести код и формы «до ума». А с опытом, возможно, будет и неловко за созданный отчёт (обработку), но это ж с ОПЫТОМ.

    Reply
  7. Fruit83

    (2) молодец!! Как раз искал что-то подобное. Я сам обучаюсь программированию на 1с, но до такого еще не добрался. Красота, чистота кода и тп. придут с опытом. Не ошибается только тот, кто ничего не делает.

    Reply
  8. necropunk

    (6) Boroda, разумеется. Просто как известно, нет ничего более постоянного, чем временное 🙂 Публикация нужная, это я так, ворчу просто. Со стилями когда разбирался, по крохам инфу собирал, сам копался во всех этих методах… Был бы пример хоть какой-нибудь — раз в 5 бы быстрее справился…

    Reply
  9. Zircool
    Fruit83 пишет:

    (2) Zircool, молодец!! Как раз искал что-то подобное. Я сам обучаюсь программированию на 1с, но до такого еще не добрался. Красота, чистота кода и тп. придут с опытом. Не ошибается только тот, кто ничего не делает.

    Спасибо!

    Reply
  10. создания договора из документа WORD, петем замены определяющих тегов в документе на необходимые значения. Данный механизм можно использовать в качестве создания решений по автоматическому формированию документов MS Office….а поменять текст договора можно для себя?

    Reply
  11. Zircool
    Гость пишет:

    создания договора из документа WORD, петем замены определяющих тегов в документе на необходимые значения. Данный механизм можно использовать в качестве создания решений по автоматическому формированию документов MS Office….а поменять текст договора можно для себя?

    Конечно, меняешь матрицу договора, главное макросы оставить (они в квадратных скобках).

    Reply
  12. Vovan48

    А если у меня несколько видов договоров?

    Можно ли их раскидать в разные папки или так не прокатит?

    Reply
  13. petrovaUL

    Замечательно. Пригодится. Меняете текст договора (макросы оставляете). Данный механизм можно использовать в качестве создания решений по автоматическому формированию документов. Плюс.

    Reply
  14. knigmnogo@mail.ru

    Подскажите, пожалуйста, пишет: {Форма.Форма.Форма(239)}: Ошибка при вызове метода контекста (ПолучитьCOMОбъект): Ошибка получения объекта COM: Не удается открыть файл при помощи специального имени

    Что я неправильно сделала?

    Reply
  15. Yury1001

    та же фигня:

    {Форма.Форма.Форма(239)}: Ошибка при вызове метода контекста (ПолучитьCOMОбъект): Ошибка получения объекта COM: Не удается открыть файл при помощи специального имени

    Reply
  16. Zircool

    Для корректной работы обработки, в корне локального диска, где расположена платформа, должно быть расположено 2 папки: ГотовыеДоговора и ШаблонДоговора. В папке ШаблонДоговора находятся 2 файла: Матрица.doc и СписокДоговоров.doc. Первый файл содержит в себе текст договора, который будет копироваться, обрабатываться, путем замены необходимых тегов и сохраняться в папке ГотовыеДоговора, где имя файла состоит из имени контрагента + дата договора. В файл СписокДоговоров.doc построчно записываются все созданные договора.

    Reply
  17. viktoria2012

    Добрый день, подскажите, пожалуйста, что значит «…в корне локального диска, где расположена платформа…»? я копирую наверно не туда, потому что выходит та же ошибка {Форма.Форма.Форма(239)}: Ошибка при вызове метода контекста (ПолучитьCOMОбъект): У меня на диске С две папки 1Сv8.1 и 1Сv8.2 В одну из этих папок? или в определенный каталог? (я бух-тер — не очень в этом разбираюсь, очень хочу попробовать Вашу обработку, помогите, пожалуйста!)

    Reply
  18. Zircool

    Добрый день. На днях выйдет обновление обработки, где будут испавлены ошибки.

    Reply
  19. viktoria2012

    Добрый день! А подскажите, пожалуйста, когда выйдет обновление этой обработки?

    Reply
  20. Zircool

    (23) Согласен код ужастен, почти год назад писал эту обработку после прочтения книги Радченко, на этой неделе перепишу и выложу обновление.

    Reply
  21. Stepan_1c

    спасибо за работу, мне пригодилось.=)

    Reply
  22. c00lwork

    Не удалось сформировать внешнюю печатную форму!

    Поле объекта не обнаружено (СсылкаНаОбъект)

    Reply
  23. AKR_Vl

    А кто нибуть решил это:

    {Форма.Форма.Форма(239)}: Ошибка при вызове метода контекста (ПолучитьCOMОбъект): Ошибка получения объекта COM: Не удается открыть файл при помощи специального имени

    Reply
  24. Zircool

    Обновил обработку. Согласно совету AzzZ добавил возможнсоть самостоятельного выбора файла шаблона. Теперь обработка работает с Microsoft Office и Open Office документами. Исправил обнаруженные ошибки.

    Reply
  25. AKR_Vl

    Михаил, подскажите, а Вы и на servicebook её тоже обновили?

    Reply
  26. Zircool

    (29) AKR_Vl какой servicebook?

    Reply
  27. Abadonna

    (24)»Согласен код ужастен».

    УжасТен от слова «ужасть»? :)))

    Reply
  28. Zircool

    После обновления, он не так уж и ужасен)

    Reply
  29. echo77

    А можно в публикацию добавить скриншот результат работы обработки(.doc файл)?

    Reply
  30. Zircool

    (33) echo77, В видео можно увидеть результат работы обработки..

    Reply
  31. uriy

    То что надо просто и сердито

    Reply
  32. lelusha

    Интересная задумка, но с такой задачей не приходилось еще сталкиваться. стоит взять на заметку.

    Reply
  33. EugenLiquor

    Интересная статья, спасибо автору. До этого пользовался другим способом!

    Reply
  34. dedicated

    Спасибо большое!

    Reply
  35. sps02

    А можно в публикацию добавить скриншот результат работы обработки(.doc файл)?

    Reply
  36. sps02

    Извините, может не внимательно прочитала.. а какие виды договоров в шаблонах?

    Reply
  37. Zircool

    На видео можно увидеть результат работы обработки. Шаблоны договоров в архив не входят, вы самостоятельно создаете шаблон и прописываете теги в нужных местах.

    Reply
  38. sergo48ru

    1с УТ10.3 выдаёт ошибку {Форма.Форма.Форма(275)}: Поле объекта не обнаружено (СокращенноеНаименование)

    Reply
  39. Zircool

    (44) в модуле формы, в процедуре КнопкаВыполнитьНажатие(Кнопка) добавьте после строки

    СведенияОКонрагенте.Вставить(«НомерДоговора», НомерДоговора);
    СведенияОКонрагенте.Вставить(«СокращенноеНаименование», Контрагент.Наименование); 

    Или же замените функцию в общем модуле (писал обработку под 1С ЗУП 2.5 )

    СведенияОКонрагенте = УправлениеКонтактнойИнформацией.СведенияОЮрФизЛице(Контрагент, ДоговорКонтрагента.Дата);

    на другую, которая получает подобные данные для работы.

    Reply
  40. makas

    Вопрос: для ФИО подписантов предусмотрены теги ?

    Reply
  41. Velliar

    На тонком клиенте или web клиенте работать будет?

    Reply
  42. Velliar

    Еще вопросик сразу. Код открытый?Свои теги можно добавить будет?

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *