1
0
mirror of https://github.com/netology-code/1c-homeworks.git synced 2024-11-24 08:02:20 +02:00
1c-homeworks/homework-10-3.md
2020-09-16 17:51:35 +03:00

3.6 KiB

Ролевая адресация

Задание 1

Описание задачи

Обеспечить возможность адресации поручений по ролям.

Требование к результату

Конфигурация из предыдущего задания, с процессом Поручение, который можно адресовать как конкретному исполнителю, так и роли из нового справочника, и со списком "Задачи мне", размещенном в рабочей области начальной страницы и содержащим команду "Принять к исполнению".

Процесс выполнения

Используйте конфигурацию из предыдущего задания.

  1. Добавьте справочник Роли
  • Без кода, с наименованием разумной длины
  1. Добавьте регистр сведений ИсполнителиРолей:
  • С измерениями Роль (СправочникСсылка.Роли) и Исполнитель (СправочникСсылка.Сотрудники)
  • Запретив незаполненные значения измерений
  1. В задачу Задача:
  • Добавьте адресацию по регистру ИсполнителиРолей
  • Добавьте реквизит адресации Роль (СправочникСсылка.Роли)
  • Основным реквизитом адресации останется Исполнитель
  • Свяжите реквизиты адресации Роль и Исполнитель с одноименнными измерениями регистра ИсполнителиРолей
  • В поле "Текущий исполнитель" выберите параметр сеанса ТекущийСотрудник
  1. В процессе Поручение
  • Расширьте тип реквизита Исполнитель типом СправочникСсылка.Роли.
  • Доработайте обработчик события ПриСозданииЗадач так, чтобы в зависимости от типа исполнителя в задаче заполнялся Исполнитель или Роль.
  1. Добавьте форму списка задач ЗадачиМне
  • Не назначая ее основной формой (основная форма будет содержать все задачи)
  • Добавьте в нее динамический список по виртуальной таблице Задача.Задача.ЗадачиПоИсполнителю с разумным минимумом реквизитов
  • Добавьте команду ПринятьКИсполнению, при вызове которой на севере:
    • Получите объект текущей задачи
    • Установите реквизит Исполнитель равным значению параметра сеанса ТекущийСотрудник
    • Запишите объект текущей задачи
  • Добавьте этот список в рабочую область начальной страницы
  • Удостоверьтесь, что пользователи видят на рабочем столе свои задачи, адресованные лично или по роли.