Похожие презентации:
ИТ-Планеты. 1-е Задание 2-го тура
1.
1-е Задание 2-го тура ИТ-ПланетыОтчет проверка зависимостей
Гроо Екатерина Витальевна
2.
ЗадачаМежду задачами не должно быть циклической зависимости (вида «задача 1 зависит от
задачи 2, задача 2 зависит от задачи 3, задача 3 зависит от задачи 1»). Если есть циклическая
зависимость, то это говорит об ошибке в данных и о невозможности корректного
планирования такого проекта.
Циклическая зависимость:
3.
План1.
2.
3.
4.
5.
Создание расширения
Перенести отчет в расширение
Получить предшествующие задачи по проекту
Сделать связь так, чтобы получить главные задачи предшествующих задач
Написать условие поля «Зависимости»
4.
Создание расширенияДля создания расширения нам нужно перейти в раздел «Конфигурация» -> «Расширения конфигурации> -> «Действия»
-> «Добавить»
По условиям задания расширение должно называться ФИО участника без пробелов, так и сделаем. По комментарию
менеджера компетенции было сказано, что нужно поставить вид расширения – «Адаптация».
Вид расширения не влияет на функционал, он влияет лишь на порядок выполнения кода, если расширений несколько.
Для дальнейшей работы нам потребуется выключить безопасный режим расширения.
5.
Перенос отчета в расширениеПоскольку по условиям задачи конкурсант не имеет права
работать в основной конфигурации, то в таком случае
мы должны перенести отчет в расширение
6.
Создаем макет:Добавляем
«набор данных
запрос»
Открываем
конструктор
запроса
7.
Получение предшествующих задач по проектуСначала нам нужно получить все задачи каждого проекта, для этого мы берем справочник «Проекты» и вытаскиваем
из него ссылку.
Чтобы получить задачи каждого проекта нам потребуется табличная часть справочника «Задачи» под названием
«Предшествующие задачи» поскольку данная табличная часть содержит в себе информацию не только об главной
задачи, но и об предшествующей.
8.
Для того, чтобы получить корректные данные нам нужно настроить связь между этими таблицами.Переходим в раздел «Связи» и делаем следующую связь: мы берем все проекты и подходящие задачи
т.е. делаем внутреннее соединение. Поскольку справочник проекты является владельцем справочника задачи,
то мы делаем связь по владельцу. Таким образом мы получили информацию о проекте, главной задачи,
предшествующей задаче.
Создаем временную таблицу, чтобы использовать эти данные в дальнейшем.
9.
Приводим таблицу в адекватный видПредшествующая задача
Главная задача
Запрос:
10.
Открываемконструктор
запроса
Создаем новый пакет запросов
На данном этапе нам снова понадобится табличная часть справочника «Задачи» и наша временная таблица.
11.
Настройка вывода информацииЧтобы в табличной части содержалась только нужная нам информация – нам нужно настроить связь между
таблицами. Делаем левое соединение временной таблицы с табличной частью так, чтобы предшествующая задача
в табличной части являлась главной задачей. Т.е. связь ПредшествующаяЗадача = ТЧ.Ссылка.
Таким образом мы
получили 2 таблицы. В 1 таблице у нас содержится информация о том, у какой задачи присутствует
предшествующая задача и во 2 таблицы информация о том какие предшествующие задачи у предшествующей
задачи.
12.
Создание условия поля зависимостиТак как нам нужно отловить циклические зависимости задач в условиях одного проекта, но такого реквизита не
существует, поэтому нам нужно создать реквизит, содержание которого будет произвольное выражение, выражение
будет следующим:
Если предшествующая задача будет равняться предшествующей задачей главной задачи, то это будет нарушением
Иначе нет нарушений.
Создаем новое поле
13.
Группируем по полю «ПредыдущиеЗадачи.Проект», в суммируемое поле перетаскиваемдобавленное поле и
Выставляем функцию «Минимум»(просто потому что так работает)
Приводим поля в адекватный вид: