helpf.pro
Регистрация
 0 
Распечатать

Авто добавление обработки в справочник Внешних обработок

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

Код 1C v 8.х
  ПолноеИмяФайлаОбработки = ЭтотОбъект.ИспользуемоеИмяФайла;
                Запрос = Новый Запрос;
                Запрос.УстановитьПараметр("Наименование", ЭтотОбъект.Метаданные().Синоним);
                Запрос.УстановитьПараметр("ВидОбработки", Перечисления.ВидыДополнительныхВнешнихОбработок.ПечатнаяФорма);
                Запрос.Текст =
                "ВЫБРАТЬ РАЗРЕШЕННЫЕ
                |             ВнешниеОбработки.Ссылка
                |ИЗ
                |             Справочник.ВнешниеОбработки КАК ВнешниеОбработки
                |ГДЕ
                |             ВнешниеОбработки.Наименование = &Наименование
                |             И ВнешниеОбработки.ВидОбработки = &ВидОбработки";
                Если НЕ Запрос.Выполнить().Пустой() Тогда Возврат; КонецЕсли;    
                Если Вопрос("Зарегистрировать обработку как печатную форму для документа ""ЗарплатаКВыплатеОрганизаций"" в справочнике ""Внешние обработки""?", РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Да Тогда
                               ВнешняяОбработка = Справочники.ВнешниеОбработки.СоздатьЭлемент();
                               ВнешняяОбработка.Наименование = ЭтотОбъект.Метаданные().Синоним;
                               ВнешняяОбработка.ХранилищеВнешнейОбработки = Новый ХранилищеЗначения(Новый ДвоичныеДанные(ПолноеИмяФайлаОбработки));
                               ВнешняяОбработка.ВидОбработки = Перечисления.ВидыДополнительныхВнешнихОбработок.ПечатнаяФорма;
                               ВнешняяОбработка.Комментарий  = "Внешняя печатная форма для документа ""ЗарплатаКВыплатеОрганизаций""";
                               ВнешняяОбработка.КомментарийКФайлуИсточнику = ПолучитьКомментарийКФайлу(ПолноеИмяФайлаОбработки);
                               НовСтр = ВнешняяОбработка.Принадлежность.Добавить();
                               НовСтр.ПредставлениеОбъекта = "Документ ""Зарплата к выплате организаций""";
                               НовСтр.ХранилищеВнешнейОбработки = Новый ХранилищеЗначения(Новый ДвоичныеДанные(ПолноеИмяФайлаОбработки));
                               НовСтр.СсылкаОбъекта = Документы.ЗарплатаКВыплатеОрганизаций.ПустаяСсылка();
                               Попытка
                                               ВнешняяОбработка.Записать();
                               Исключение
                                               Сообщить(ОписаниеОшибки(), СтатусСообщения.Важное);
                               КонецПопытки;
                КонецЕсли;
Разместил:   Версии: | 8.x | 8.2 УП |  Дата:   Прочитано: 4449
 0 
Распечатать
Возможно, вас также заинтересует
1C: Enterprise Development Tools 35
И вот случилось долгожданное: Вышел 1C: Enterprise Development Tools - это среда для разработки конфигурации в IDE Eclipse. С сайта 1С: « 1C:Enterprise Development Tools » – это инструмент нового поколения для разработчиков бизнес-приложений систем
1С Предприятие что это? 6
Что такое 1С? 1С — это фирма , у которой одно из направлений деятельности — разработка программного обеспечения для автоматизации бизнес-процессов предприятий. « 1С:Предприятие » - конкретный продукт, который...
Альтернативный перенос остатков между 7.7 и 8.1 (обработкой с ИТС ЗагрузкаДанныхИзТаблДокум) 0
Нашел альтернативный, практически моментальный способ переноса остатков между семерой и восьмерой (так и между восмерками). Не требуется никаких дополнительных усилий, программирования, писания обработок и т.д. и т.п....
База для Разработки или Рабочая? Как быстро определить? 1
Когда-то я работал консультантом SAP . В SAPe есть настройка изменения цвета главного окна программы и у нас было негласное правило: Рабочая программа - Красный фон , Тестовая - Зеленый , Разработка - Синий . Работая в 1С,...
Ввод записей в журнал расчетов 0
Добавление записи в журнал расчетов: Метод Новая может быть вызван где угодно, в глобальном модуле, модуле обработок, документов и т.д. Данный метод проверяет корректность заполненных реквизитов журнала расчетов....
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.