mirror of
https://github.com/netology-code/1c-homeworks.git
synced 2024-11-24 08:02:20 +02:00
54 lines
5.0 KiB
Markdown
54 lines
5.0 KiB
Markdown
# Ролевая адресация
|
|
|
|
## Задание 1
|
|
|
|
### Описание задачи
|
|
|
|
Обеспечить возможность адресации поручений по ролям.
|
|
|
|
### Требование к результату
|
|
|
|
Выгрузка информационной базы (.dt) из предыдущего задания, с процессом **Поручение**, который можно адресовать как конкретному исполнителю, так и роли из нового справочника, и со списком "Задачи мне", размещенном в рабочей области начальной страницы и содержащим команду "Принять к исполнению".
|
|
|
|
### Процесс выполнения
|
|
|
|
Используйте конфигурацию из предыдущего задания.
|
|
|
|
1. Добавьте справочник **Роли**
|
|
* Без кода, с наименованием разумной длины
|
|
|
|
2. Добавьте регистр сведений **ИсполнителиРолей**:
|
|
* С измерениями **Роль** (СправочникСсылка.Роли) и **Исполнитель** (СправочникСсылка.Сотрудники)
|
|
* Запретив незаполненные значения измерений
|
|
|
|
3. В задачу **Задача**:
|
|
* Добавьте адресацию по регистру **ИсполнителиРолей**
|
|
* Добавьте реквизит адресации **Роль** (СправочникСсылка.Роли)
|
|
* Основным реквизитом адресации останется **Исполнитель**
|
|
* Свяжите реквизиты адресации **Роль** и **Исполнитель** с одноименнными измерениями регистра **ИсполнителиРолей**
|
|
* В поле "Текущий исполнитель" выберите параметр сеанса **ТекущийСотрудник**
|
|
|
|
4. В процессе **Поручение**
|
|
* Расширьте тип реквизита **Исполнитель** типом СправочникСсылка.Роли.
|
|
* Доработайте обработчик события **ПриСозданииЗадач** так, чтобы в зависимости от типа исполнителя в задаче заполнялся **Исполнитель** или **Роль**.
|
|
|
|
5. Добавьте форму списка задач **ЗадачиМне**
|
|
* Не назначая ее основной формой (основная форма будет содержать все задачи)
|
|
* Добавьте в нее динамический список по виртуальной таблице **Задача.Задача.ЗадачиПоИсполнителю** с разумным минимумом реквизитов
|
|
* Добавьте команду **ПринятьКИсполнению**, при вызове которой на севере:
|
|
* Получите объект текущей задачи
|
|
* Установите реквизит **Исполнитель** равным значению параметра сеанса **ТекущийСотрудник**
|
|
* Запишите объект текущей задачи
|
|
* Добавьте этот список в рабочую область начальной страницы
|
|
* Удостоверьтесь, что пользователи видят на рабочем столе свои задачи, адресованные лично или по роли.
|
|
|
|
### Проверка работы механизма
|
|
|
|
Проверьте решение следующим образом:
|
|
1. У Вас должно быть создано несколько сотрудников связанных с пользователями ИБ через поле Идентификатор пользователя информационной базы, должен заполняться параметр сеанса "ТекущийСотрудник".
|
|
2. В регистре Исполнители ролей укажите 2 сотрудников, связанных с пользователями, с одной ролью.
|
|
3. Создайте поручение на эту роль
|
|
4. Проверьте, что при входе под каждым из указанных пользователей, на рабочем столе в списке "Задачи мне" появилась новая задача (при этом, пользователям, которым назначена другая роль, задачу видно быть не должно)
|
|
5. Одним из пользователей примите задачу к исполнению
|
|
6. Убедитесь, что под вторым пользователем, после п.4 задача пропала из списка "Задачи мне"
|