Представьтесь себе, у каждой базы есть подключенные внешние обработки/отчеты и они должны нормально функционировать на новой версии любой конфигурации. Обработка проверена на релизе конфигурации "1С:Управление торговлей, редакция 11" версия 11.1.10.138, так же в макете обработки встроена внешняя обработка печатной формы. Вы можете ее выгрузить на рабочий стол и посмотреть исходный код, а так же код самой обработки. Весь исходный код открыт.
Примеры внешних обработок/отчетов могут быть различными и их может быть куда больше:
- ФОТ: Доп. отчет "Выгрузка прайсов(расширенная)"
- ЙЕТО: Универсальное заполнение справочников и документов
- УМО: Внешняя печатная форма акта об указании услуг
- РА: Формирование счетов поставщикам
ПРОГРАММИСТ ДОЛЖЕН:
- Открыть обработку "ZhokhovM_UATR.epf" в режиме конфигуратора
- Добавить новый макет с типом "Двоичные данные" и загрузить в него внешнюю обработку/отчет с исправленной версией
- Добавить конечный префикс в имени макета на "_epf" или "_erf" (зависит от того, какой формат файла Вы загрузили в него)
- Сохранить изменения
- Примечание: Если есть еще файлы, делаем пункты повторно 2-4.
Пример полного имени макета: "ЙЕТО_ПФ_РеализацияТоваров_epf".
- Требования: В любой внешней обработке/отчете должна быть установлена версия 1.0.0.1 или новее.
Пример кода:
РегистрационныеДанные.Вставить("Версия", Версия());
//Функция Версия
// Предназначена для определения версии.
//
// Параметры:
// Нет.
//
// Возвращаемое значение:
// Строка - результат выполнения функции.
//
Функция Версия()
Возврат "2.0.5.16";
КонецФункции
Но это еще не всё, в любом внешнем файле(обработки, отчеты) Вы можете добавить себе любимые функции, какие нет в ИТС:
- Новая функция: Разделы().
РегистрационныеДанные.Вставить("Разделы", Разделы());
//Функция Разделы
// Предназначена для определения разделов.
//
// Параметры:
// Нет.
//
// Возвращаемое значение:
// СписокЗначений - результат выполнения функции.
//
Функция Разделы()
л_Результат = Новый СписокЗначений;
л_Результат.Добавить(Метаданные.Подсистемы.ЗапасыИЗакупки);
Возврат л_Результат;
КонецФункции
- Новые функции: Команды() с проверкой прав доступа ролей.
РегистрационныеДанные.Вставить("Команды", Команды(ТаблицаКоманд(),Роли(),Доступ()));
// Функция Команды
// Предназначена для добавления команд.
//
// Параметры:
// ТаблицаКоманд - ТаблицаЗначений - Таблица команд.
// Роли - Массив - Роли.
// Доступ - СписокЗначений - Быстрый доступ.
//
// Возвращаемое значение:
// ТаблицаЗначений - результат работы функции
//
Функция Команды(ТаблицаКоманд, Роли, Доступ)
ДобавитьРоль(Роли, "РА_ПравоСформироватьСчет");
ДобавитьРоль(Роли, "ПолныеПрава");
Если
Пользователи.РолиДоступны(СтрЗаменить(Массив2Строка(Роли, ",")," ",""))
Тогда
//ДобавитьДоступ(Доступ, "Администратор");
ДобавитьКоманду(
ТаблицаКоманд,
НСтр("ru = 'РА: Формирование счетов поставщикам'"),
"РА_ФормированиеСчетовПоставщикам",
"ОткрытиеФормы",
Ложь,
"",
//Доступ.Скопировать()
);
//Доступ.Очистить();
КонецЕсли;
Возврат ТаблицаКоманд;
КонецФункции
ПОЛЬЗОВАТЕЛЬ ДОЛЖЕН:
- Открыть обработку "ZhokhovM_UATR.epf" через меню "Файл" - "Открыть" в режиме предприятия
- Далее в открывшейся форме выбрать галочкой строки, которые нужно зарегистрировать в базу и нажать на кнопку "Зарегистрировать в ИБ", так же можно перерегистрировать их, нажав кнопку "Пометить на удаление" или красным крестиком справа от кнопки "Зарегистрировать в ИБ".
- Затем выполнить конкретные действия пользователя
- Из пункта 3 приведу пример:
- Программист загрузил в обработку пару новых печатных форм в обработку через двоичные данные, далее пользователь должен прикрепить эти файлы к базе, затем он должен открыть любой документ или справочник, пусть это будет документ "Реализация товаров и услуг", у документа реализации прикреплена внешняя печатная форма, которая находится через кнопку "Печать" - "Дополнительные печатные формы", пользователю нужно выбрать эту печатную форму и нажать на кнопку "Выполнить".
- "Версия двоичного файла" - версия из макета обработки.
- "Версия регистрируемого файла" - версия из элемента справочника "Дополнительные отчеты и обработки".
- Если версия двоичного файла свежее версии регистрируемого файла, то колонка помечается зеленым фоном, иначе красным. Белый фон - когда нет версии регистрируемого файла или обе версии одинаковые.
- На всякий случай делайте копию всех внешних файлов.