0. Killgur 46 29.05.13 14:11 Сейчас в теме

Обработчик автоматической регистрации документа 1С:Документооборот после утверждения и автозаполнения файла по шаблону

Дополнительный обрабочик для 1С:Документооборот, позволяющий выполнять автоматическую регистрацию внутреннего документа после его утверждения и автоматическое заполнение прикрепленного шаблонного файла.

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
1. dpagon 7 12.09.13 16:51 Сейчас в теме
Регистрация работает, а вот с заполнение файлов беда. Релиз 1.3.1.5. При вызове функции АвтозаполнениеШаблоновФайловКлиентСервер.ЗаполнитьПоляФайлаДаннымиВладельца возникает ошибка:
{ОбщийМодуль.АвтозаполнениеШаблоновФайловКлиентСервер.Модуль(60)}: Ошибка при вызове метода контекста (Add)
Док = WordApp.Documents.Add(ПутьКФайлуНаДиске);
по причине:
Произошла исключительная ситуация (Microsoft Word): Недостаточно памяти. Немедленно сохраните документ.
Насколько я понимаю проблема в том что нет доступа к каталогу ПутьКФайлуНаДиск, по факту C:\Users\USR1CV82\AppData\Local\Temp\v8_923E_1a2.doc. Копал по настройкам DCOM, но пока бесполезно.
2. Killgur 46 29.09.13 21:36 Сейчас в теме
(1) dpagon,
Надо посмотреть права к папке с файлом и еще уточнить где работает автозаполнение файла (за константа отвечающая за это). Хотя сам 1.3.1.5. пока не обновлялся.
3. fifka555 29.10.13 07:09 Сейчас в теме
4. uri1978 128 22.11.13 11:58 Сейчас в теме
Спасибо за
Задача = Событие.Источник;
Не знал как достучаться до объекта.

А вот процедуру регистрации документа взял с конфигурации:
Если Выполнять Тогда    
			
			Нумератор = Нумерация.ПолучитьНумераторДокумента(ДокументОбъект);
			
			Если ЗначениеЗаполнено(Нумератор) Тогда // автоматическая нумерация
				
				ДатаРегистрации = ТекущаяДата();
				ТекущийПользователь = ОбщегоНазначения.ТекущийПользователь();
				
				ДокументОбъект.ДатаРегистрации = ДатаРегистрации;
				
				// сформируем текущий номер
				СтруктураПараметров = НумерацияКлиентСервер.ПолучитьПараметрыНумерации(ДокументОбъект);
				Нумерация.СформироватьЧисловойНомерДокумента(СтруктураПараметров, ДокументОбъект.ЧисловойНомер);
				
				ОписанияОшибок = Новый СписокЗначений;
				СтруктураПараметров = НумерацияКлиентСервер.ПолучитьПараметрыНумерации(ДокументОбъект);
				Нумерация.СформироватьСтроковыйНомерДокумента(СтруктураПараметров, ДокументОбъект.РегистрационныйНомер, ОписанияОшибок);
				
				ДокументОбъект.Зарегистрировал = ТекущийПользователь;
				ДокументОбъект.Записать();
				
				Делопроизводство.ЗаписатьСостояниеДокумента(
					ДокументОбъект.Ссылка, 
					ДатаРегистрации, 
					Перечисления.СостоянияДокументов.Зарегистрирован, 
					ТекущийПользователь);
					
			КонецЕсли;	
			
		КонецЕсли;
Показать
5. luda33 04.12.13 15:23 Сейчас в теме
А в документообороте есть автоматическая регистрация при создании внутреннего документа?
6. uri1978 128 04.12.13 16:10 Сейчас в теме
(5) luda33,
По-умолчанию нет, эта статья как раз и показывает как это реализовать. Хотя я столкнулся с проблемами. Например, пользователь записывает внутренний документ и продолжает его редактирование. При этом через минуту происходит автоматическая регистрация и пользователь уже не может сохранить изменения которые он вносил.
7. luda33 04.12.13 19:46 Сейчас в теме
(6) uri1978, как так получается?
у нас тоже - пользователи не регистрируют ничего, им это не надо - а доки оказываются зарегистрированными
как так не знаю
уже отключили запрет менять документы после регистрации

а сейчас возникла необходимость регистрировать при создании документа, - что бы номер сразу при заполнении попадал в файл (из шаблона)
видимо придется воспользоваться этим обработчиком, только не при утверждении
8. Killgur 46 06.12.13 00:20 Сейчас в теме
(6) uri1978,
Регистрация происходит отдельным обработчиком с записью документа, а в этот момент документ оказывается открытым и данные на форме не соответствуют записанным и естественно документ не сохраняется.
Мое применение как раз и было нацелено, что регистрация происходит когда изменения уже не нужны.

(7) luda33,
Посмотрите изменение состояний документа. Там есть информация о том кто и когда зарегистрировал.
Регистрация при создании документа - скорее всего без изменения конфигурации не получится.
9. uri1978 128 06.12.13 12:33 Сейчас в теме
(8)
У меня внутренний документ, который должен быть зарегистрирован, не проходит бизнес процессов. Т.е. по нему нет утверждений или согласований. Соответственно я его могу регистрировать только при записи. И по этой причине и происходит "коллизия".
10. graser 7 22.07.14 12:15 Сейчас в теме
на 8.3 не работает, затыкается вот здесь Объект = Задача.Предмет.ПолучитьОбъект();
У задачи предмет описан как Список
11. lavdeenko 28 02.03.18 13:01 Сейчас в теме
Ошибка - 3. Включаем обработчик и проверяем по справочнику Произошедшие бизнес-события.
Надо - 3. Включаем обработчик и проверяем по регистру сведений Произошедшие бизнес-события
12. Kontakt 72 10.07.18 11:05 Сейчас в теме
Ребят подскажите, когда происходит автозаполнение файла? Вроде как все настроил, проверил. Все заполняется. Когда ввожу новый документ, автозаполнение не срабатывает в файле. В файле выходят служебные теги при просмотре.
13. CyberBob 4 11.07.18 05:07 Сейчас в теме
(12)Автоматом, должно заполняться при записи документа. Можно ручками ткнуть на автозаполняемый файл правой кнопкой и выбрать "заполнить файл данными документа".
14. user780057 06.11.19 12:10 Сейчас в теме
1с:Документооборот 2.1 КОРП
Привет! Кто нибудь знает как зарезервировать номер для договора,без регистрации документа? Например, есть договор который еще не подписан и не отработан, не оплачен и т.д., но клиент просит номер договора, а его соответственно еще нет.
Идея такая делаем "Волшебную кнопку" нажимаем - резервируем номер сохраняем документ, при этом нумерация договоров продолжается со следующего номера. А этот документ доступен для редактирования. Как можно реализовать по другому, есть идеи?
Ну и моя идея реализуема вообще?
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Программист 1С
Екатеринбург
зарплата от 80 000 руб. до 130 000 руб.
Полный день

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Программист 1С
Санкт-Петербург
зарплата до 150 000 руб.
Полный день

Ведущий программист 1С
Москва
зарплата от 150 000 руб.
Полный день

Ведущий программист 1С (УТ 11)
Москва
зарплата до 200 000 руб.
Полный день