Создание обработки 1С 8.3 с нуля на примере

Обработка 1С – это прикладной объект конфигурации, который служит для выполнения различных действий над информацией в базе 1С, таких как преобразование данных, добавление, удаление и т.д. Обработки в 1с можно разделить на два вида:

  • Внутренние обработки (встроенные в конфигурацию). Полный список таких обработок мы можем увидеть в режиме конфигуратора, открыв окно конфигурации:
  • Внешние обработки (можно хранить в виде отдельных файлов с расширением .epf). Список подключённых внешних обработок в управляемом интерфейсе мы можем найти в подсистеме «НСИ и Администрирование» — «Печатные формы, отчёты и обработки» — «Дополнительные отчёты и обработки».

Если появляется необходимость расширить функционал конфигурации с помощью обработки, то следует использовать именно внешние обработки. Это позволит оставить структуру конфигурации неизменной, и облегчит возможность её дальнейшей поддержки.

Пример создания простейшей внешней обработки в 1С 8.3

Постановка задачи:

На форме обработки необходимо дать возможность пользователю ввести текст, а по нажатию на кнопку вывести этот текст в окно сообщений.

В режиме конфигуратора переходим в меню «Файл» — «Новый» выбираем пункт «Внешняя обработка».

Наша команда предоставляет услуги по консультированию, настройке и внедрению 1С.
Связаться с нами можно по телефону +7 499 350 29 00.
Услуги и цены можно увидеть по ссылке.
Будем рады помочь Вам!

В открывшемся окне задаём имя для нашей обработки «МояПерваяОбработка».  Определим реквизит «ТекстДляВывода» (тип <Строка>, длина  <100>).

Далее добавляем форму обработки, не забудем включить наш реквизит «ТекстДляВвода» в состав формы.

Добавляем команду формы, назначив ей имя «Вывести текст», а так же в окне свойств по нажатию на лупу определим обработчик этой команды на «клиенте».

Код обработки в модуле формы может выглядеть так:

&НаКлиенте
Процедура ВывестиТекст(Команда)
	Сообщить(Объект.ТекстДляВывода);
КонецПроцедуры

Чтобы мы могли видеть нашу созданную кнопку на форме её необходимо добавить в раздел элементов формы. Это можно сделать простым перетаскиванием.

Наша обработка готова, её можно сохранить в виде файла на диск.

Запустив 1С в режиме предприятия и выбрав наш файл обработки через меню «Файл» — «Открыть» можем проверить её работоспособность.

Результат:

СведенияОВнешнейОбработке — функция для подключения внешней обработки

Технология подключения внешних обработок и отчётов в управляемом интерфейсе несколько отличается от подключения в обычном режиме. Попытавшись подключить нашу обработку через подсистему «НСИ и Администрирование» — «Печатные формы, отчёты и обработки» — «Дополнительные отчёты и обработки» мы неизменно получим следующую ошибку.

Связана она с тем, что в конфигурациях использующих БСП(библиотеку стандартных подсистем), необходимо предоставлять некие сведения описывающие внешнюю обработку. Такие сведения необходимо возвращать из экспортной функции «СведенияОВнешнейОбработке»  в виде структуры. А саму функцию разместить в модуле объекта обработки.

Пример такой функции для нашей обработки может выглядеть так:

Функция СведенияОВнешнейОбработке() Экспорт
ПарамРег = Новый Структура();
ПарамРег.Вставить("Наименование", "МояПерваяОбработка");
ПарамРег.Вставить("БезопасныйРежим", Истина);
ПарамРег.Вставить("Версия ", "ver.: 1.0");
ПарамРег.Вставить("Информация", "Обработка для вывода введённого текста в окно сообщений");
ПарамРег.Вставить("Вид", "ДополнительнаяОбработка");

ТЗ_Команды = Новый ТаблицаЗначений;
ТЗ_Команды.Колонки.Добавить("Идентификатор");
ТЗ_Команды.Колонки.Добавить("Использование");
ТЗ_Команды.Колонки.Добавить("Представление");

НоваяСтрока = ТЗ_Команды.Добавить();
НоваяСтрока.Идентификатор = "ОткрытьОбработку";
НоваяСтрока.Использование = "ОткрытиеФормы";
НоваяСтрока.Представление = "Открыть обработку";
ПарамРег.Вставить("Команды", ТЗ_Команды);

Возврат ПарамРег;

КонецФункции

Какие сведения необходимо использовать при регистрации той или иной обработки удобно подсмотреть в справочнике «ДополнительныеОтчетыИОбработки» в режиме конфигуратора.

Подключение внешней обработки в режиме 1С:Предприятие

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