Новые экземпляры ещё не записаны и не связаны друг с другом. Стартован, Завершен и Выполнена читаем как состояние, не присваиваем их для имитации выполнения.
Где и как запускать
Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.
Подготовка
Создайте НОВУЮ пустую файловую учебную базу, не копию рабочего каталога. В Конфигураторе задайте корню имя Учебная85. Не добавляйте эти объекты в рабочую УТ/КА2/УНФ/БП.
Справочники → Добавить: имя УчебныеТовары. Длина кода 10, тип кода Строка, автонумерация и контроль уникальности включены, длина наименования 100.
Для УчебныеТовары включите иерархию групп и элементов. Добавьте реквизиты Артикул (Строка, длина 20) и Цена (Число, 12 цифр, 2 дробных, неотрицательное). Проверка заполнения для этих учебных реквизитов не устанавливается.
Добавьте табличную часть Штрихкоды: Штрихкод (Строка, длина 20) и Основной (Булево). Обновите конфигурацию базы данных. Модули объектов оставьте пустыми.
Создайте серверный общий модуль УчебныеЗадачи и команду учебной обработки, вызывающую ВыполнитьПример() Экспорт. Каждый фрагмент выполняйте отдельно, не склеивайте их в одну процедуру.
В этой отдельной пустой конфигурации Учебная85 добавьте Задачи → УчебнаяЗадача: длина номера 9, тип Строка, автонумерация; наименование длиной 100. Добавьте реквизит Комментарий (Строка, 100), без проверки заполнения.
Добавьте Бизнес-процессы → УчебныйПроцесс: длина номера 9, тип Строка, автонумерация, реквизит Комментарий (Строка, 100), без проверки заполнения. В свойстве Задача выберите УчебнаяЗадача.
Карта маршрута: одна точка старта Старт → одна одиночная точка действия ПодготовитьКнигу → одна точка завершения Финиш. Соедините их стрелками; в представлении точки действия укажите Подготовить учебную книгу.
Адресацию задач, групповые/условные/вложенные точки и обработчики маршрута для этой задачи не добавляйте. Модули задачи и процесса, подписки и внешние действия должны быть пустыми. Обновите конфигурацию базы данных.
Все имена здесь относятся к новым учебным объектам, не к рабочей КА2/УНФ/УТ/БП. Каждый фрагмент запускайте отдельно на сервере в ВыполнитьПример() Экспорт общего модуля УчебныеЗадачи.
Если Метаданные.БизнесПроцессы.Найти("УчебныйПроцесс") = Неопределено
Или Метаданные.Задачи.Найти("УчебнаяЗадача") = Неопределено Тогда
ВызватьИсключение "Сначала создайте учебные процесс, задачу и карту маршрута";
КонецЕсли;
Процесс = БизнесПроцессы.УчебныйПроцесс.СоздатьБизнесПроцесс();
Задача = Задачи.УчебнаяЗадача.СоздатьЗадачу();
Процесс.Комментарий = "Учебный экземпляр только в памяти";
Задача.Наименование = "Подготовить учебную книгу";
Задача.Комментарий = "Задача пока не записана";
Процесс.ДополнительныеСвойства.Вставить("Цель", "Изучить маршрут");
Задача.ДополнительныеСвойства.Вставить("КоличествоКниг", 3);
Сообщить(Процесс.ЭтоНовый());
Сообщить(Задача.ЭтоНовый());
Сообщить(Процесс.Ссылка.Пустая());
Сообщить(Задача.Ссылка.Пустая());
Сообщить(Не Процесс.Стартован);
Сообщить(Не Процесс.Завершен);
Сообщить(Не Задача.Выполнена);
Сообщить(Не Процесс.ПометкаУдаления);
Сообщить(Не Задача.ПометкаУдаления);
Сообщить(Задача.БизнесПроцесс.Пустая());
Сообщить(Процесс.ВедущаяЗадача.Пустая());
Сообщить(Процесс.Метаданные().Имя = "УчебныйПроцесс");
Сообщить(Задача.Метаданные().Имя = "УчебнаяЗадача");
Сообщить(Процесс.ДополнительныеСвойства.Цель = "Изучить маршрут");
Сообщить(Задача.ДополнительныеСвойства.КоличествоКниг = 3);Разбор по шагам
Менеджеры создают два самостоятельных экземпляра. СоздатьЗадачу сам по себе не назначает ей бизнес-процесс.
Стартован/Завершен/Выполнена — разные состояния. Их чтение не запускает маршрут и не уведомляет процесс.
ДополнительныеСвойства содержат наши временные учебные метки, не сохраняемые реквизиты схемы.
ВедущаяЗадача нужна для вложенного процесса, который при завершении выполняет ведущую задачу родительского процесса. В нашем новом корневом экземпляре она пустая.
Как проверить результат
Пятнадцать сообщений Истина. Два списка в учебной базе не получили новых строк.
Не заменяйте отсутствие Старт на присваивание Стартован=Истина: это не эквивалент движения по карте.
Ожидаемый результат
Созданы и исследованы два незаписанных объекта с раздельными состояниями.
На что обратить внимание
Рабочие процессы могут иметь обработчики создания и другую адресацию. Урок требует именно описанную пустую конфигурацию.
Пустая ссылка и отсутствие записи не равны завершению бизнес-задачи.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.