Создание конфигураций 1С: пишем "Дни рождения" часть 6/6
Автор уроков и преподаватель школы: Владимир Милькин
Заключительная часть разработки конфигурации "Дни рождения" на 1С.
Оглавление
- Шаг №39: создаем внешнюю обработку
- Шаг №40: добавляем новую команду формы
- Шаг №41: превращаем команду в кнопку
- Шаг №42: сохраняем внешнюю обработку на диск
- Шаг №43: открываем внешнюю обработку в режиме 1С:Предприятие
- Шаг №44: добавляем на форму надписи
- Шаг №45: добавляем в модуль формы процедуру поиска
- Шаг №46: добавляем вызов процедуры поиска в обработчик команды
- Шаг №47: проверяем окончательный вариант обработки
- В заключении модуля
Шаг №39: создаем внешнюю обработку
Обратите внимание на то, что обработка по поиску именинника, которую мы только что создали, является частью конфигурации. Такие обработки называются внутренними, так как они хранятся внутри базы.
Но иногда нам может потребоваться, чтобы обработка не была частью базы:
- если код конфигурации закрыт от изменений
- если мы хотим написать обработку для использования во многих базах
В этом случае подходящим вариантов является написание внешней обработки, которая хранится снаружи базы в виде обычного файла.
Предлагаю написать внешнюю обработку, которая будет находить в базе подарок с самой большой ценой.
Чтобы сделать это выполните из конфигуратора команду меню "Файл"->"Новый":
В качестве вида документа укажите "Внешняя обработка":
Откроется форма создания новой обработки. В качестве имени укажите "СамыйДорогойПодарок" и нажмите зелёную кнопку с плюсом, чтобы добавить новую форму:
Оставим всё как на картинке ниже и нажмём кнопку "ОК":
Шаг №40: добавляем новую команду формы
Откроется новая форма обработки. Перейдём на закладку "Команды", а затем на закладку "Команды формы" и нажмём зелёную кнопку с плюсиком:
Добавится новая команда формы. Выделим её двойным щелчком, чтобы открыть свойства:
В свойствах укажем имя "Поиск" и нажмём кнопку с лупой рядом с пунктом "Действие":
Первоначальное действие команды будет происходить на клиенте:
Нас перенесёт в автоматически созданную процедуру-обработчик для нашей команды:
Оставим эту процедуру пока пустой.
Шаг №41: превращаем команду в кнопку
Перетащим команду "Поиск" на элемент "Форма":
На форме появилась кнопка, связанная с командой "Поиск":
Шаг №42: сохраняем внешнюю обработку на диск
Кстати! Сохраним нашу обработку. Для этого выполним команду меню "Файл"->"Сохранить":
Выберем место и имя для сохранения:
Проверим, что из этого получилось.
Шаг №43: открываем внешнюю обработку в режиме 1С:Предприятие
Запустим 1С:Предприятие (меню "Отладка"->"Начать отладку", а затем уже в режиме 1С:Предприятие выполним команду "Файл"->"Открыть..."):
Выберем файл с внешней обработкой:
Открылась форма обработки с кнопкой "Поиск". Нажатие на кнопку пока ни к чему не приводит, ведь процедура-обработчик нашей команды пуста.
Шаг №44: добавляем на форму надписи
Вернёмся в конфигуратор в форму обработки, нажмём правой кнопкой на элементе "Форма" и выберем пункт "Добавить":
В качестве типа элемента выберем "Декорация - Надпись":
Откроем свойства добавившейся надписи:
Изменим имя на "НадписьПодарок":
Таким же образом добавим элемент "НадписьЦена":
Снова откроем свойства элемента "НадписьПодарок":
И установим в качестве заголовка пустое значение:
Проделаем то же самое с элементом "НадписьЦена". Должно получиться вот так:
Шаг №45: добавляем в модуль формы процедуру поиска
Перейдём в модуль формы (закладка "Модуль") и добавим процедуру, которая перебирает все элементы справочника "Подарок" и находит самый дорогой подарок: