новое событие
Информационный поток
Задания вакансии материалы разработки сообщения форума

Внешние печатные формы. Авторегистрация в базе данных часть 2

  • Добавить свою публикацию
  • для этого требуется регистрация

В предыдущей статье мы  с вами создали внешнюю печатную форму, которая заполняла параметры авторегистрации при добавлении ее в справочник внешних обработок. У меня данная методика успешно работала больше года, но все равно с  каждой обработкой или печатной формой я высылал пользователю  еще и файл инструкции,  в котором описывалось пошагово, что и где нужно делать, чтобы  данная внешняя печатная форма заработала. Оставалось чувство какой-то незавершённости, недоделанности обработок. Все знают, что в конфигурациях есть такое понятие как регламентированные отчеты. Так вот когда  1с-ка выпускает обновление к регламентированному отчету, то  пользователю нужно только открыть отчёт  через файл - открыть и ответить утвердительно на вопрос об обновлении регламентированного отчета.

 Изображение

Хотелось бы добавить в свои  внешние отчеты такой же функционал. После недолгих изысканий решение было найдено. Создаем форму обработки, и в процедуре ПриОткрытии() нужно прописать следующий код:

 

ОбъектВПФ = Справочники.ВнешниеОбработки.СоздатьЭлемент();
			    ОбъектВПФ.Наименование = "Имя Внешней Печатной Формы";
			    ОбъектВПФ.ВидОбработки = Перечисления.ВидыДополнительныхВнешнихОбработок.ПечатнаяФорма;
			    Принадлежность = ОбъектВПФ.Принадлежность;
	    	    НоваяСтрока = Принадлежность.Добавить();
			    НоваяСтрока.ПредставлениеОбъекта = "Документы.Доверенность";
			     НоваяСтрока.СсылкаОбъекта ="Документы.Доверенность";
			    НоваяСтрока.ПредставлениеНастроекОбработки = "<Задать параметры>";
			    Файл = Новый Файл(ИспользуемоеИмяФайла);
			    ОбъектВПФ.ХранилищеВнешнейОбработки = Новый ХранилищеЗначения(Новый ДвоичныеДанные(ИспользуемоеИмяФайла));
			    ОбъектВПФ.КомментарийКФайлуИсточнику = "Исходный файл: " + Файл.Имя + Символы.ПС + "размер:" + Файл.Размер() + " байт; изменен:" + Файл.ПолучитьВремяИзменения() + "; сохранен в ИБ:" + ТекущаяДата();
			    ОбъектВПФ.Комментарий = "001";
			    ОбъектВПФ.Записать();

 

 

Если вы сохраните этот код в процедуре  ПриОткрытии() во внешней обработке то после открытия данного файла в 1с, или перетаскивания обработки на уже открытую конфигурацию он автоматически добавится к  внешним печатным формам.

Изображение

Прекрасно, мы получили авторегистрируемую внешнюю печатную форму, прописываем то, что нам надо и вперед за орденами. А что будет при  втором открытии данной обработки?  К уже существующей записи добавиться новая запись, и еще, и еще. По-моему это очень плохо, решение есть и довольно простое: в каждом элементе справочника есть реквизит  «Комментарий,» который мы можем использовать для своих нужд. В поле комментарий мы будем добавлять версию внешней печатной формы или версию внешней обработки, а искать мы будем по уникальному наименовании объекта.  Поэтому имена должны быть уникальные, а не  «обработка 1»,» обработка2».  Для того чтобы не возникало ситуаций когда вы написали внешнюю печатную форму  типа «Авансовый отчет новый» я рекомендую добавлять в конце названия имя автора это и реклама и залог уникальности наименования. Ну и конечно  проверка версии  обновлять, только если  версия добавляемой обработки больше  той, что зарегистрирована в базе.  У меня есть  файл – шаблон для внешних отчетов, который я  при создании нового отчета открываю и редактирую. Наверно и вам следует  поступить также. 

Перед публикацией статьи решил посмотреть, что на эту тему написано в интернете наткнулся на множество статей  по мотивам  моей прошлой статьи http://1clancer.ru/article/vneshnie_pechatnye_formy._avtoregistratsiya_v_baze_dannykh_1061 и только на инфостарте  предлагается  какой-то шаблон  обработки, к сожалению, скачать и ознакомиться  с ним мне не позволяет низкий рейтинг на инфостарте – зарегистрировался давно,  но там практически не бываю. На этом все.

 

 
0
Читайте также
Специализированная конфигурация "Автоапдейтер"
Конфигурация предназначена для автоматического внесения изменений в другие конфигурация 1С 8.Х. Все модули из логируемой кофигурации (Конфигуратор - Конфигурация - Выгрузить файлы конфигурации).
Автоматическая установка даты запрета редактирования
Установка даты запрета редактирования
Разработки
Еще от автора
≡ к списку статей