Различия
Показаны различия между двумя версиями страницы.
| Следующая версия | Предыдущая версия | ||
| product:linq:gantt:example_1 [13.11.2020 14:29] – создано mayn | product:linq:gantt:example_1 [04.02.2021 20:15] (текущий) – [Последовательность настройки] mayn | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| ====== Как вывести " | ====== Как вывести " | ||
| - | <callout type=" | ||
| - | Статья в разработке!! | ||
| - | </ | ||
| - | 1. Пошаговая инструкция для настройки | + | =====Глоссарий ===== |
| - | 1.1. LINQ (Language Integrated Query) – простой SQL-подобный язык запросов | + | * LINQ (Language Integrated Query) – простой SQL-подобный язык запросов к источнику данных. |
| - | 1.2. БП – Базовый план. | + | * БП – Базовый план. |
| - | 1.3. ПДО – Плановая дата окончания. | + | * ПДО – Плановая |
| - | 1.4. УДО – Утвержденная | + | * УДО – Утвержденная дата окончания по БП. |
| - | 1.5. ФДО – Фактическая дата окончания | + | * ФДО – Фактическая дата окончания |
| - | № п/п Описание действий | + | |
| - | 1. Перейдите на страницу «Администрирование». | + | ===== Последовательность |
| + | - Перейдите на страницу «Администрирование». | ||
| + | - Перейдите на страницу «Источники LINQ» создания источников данных с помощью | ||
| + | - Нажмите «Пересоздать контекст». | ||
| + | - Нажмите «Новый источник данных», | ||
| + | - В поле «Название» на странице создания источника данных через LINQ-запрос укажите «Расчет отклонения от базового плана» | ||
| + | - В поле «Запрос» полностью удалите код тестового запроса. | ||
| + | - В поле | ||
| + | Поле " | ||
| + | Содержит разницу (отклонение) в РАБОЧИХ днях между соответствующими плановой или фактической датой окончания (ПДО или ФДО соответственно) и утвержденной датой окончания | ||
| + | - Если у объекта есть УДО и ФДО, то отклонение = ФДО – УДО. | ||
| + | - Если у объекта есть УДО, но нет ФДО, то отклонение = ПДО – УДО. | ||
| + | - Если у объекта нет УДО, то расчет не производится. В соответствующей ячейке поля содержится пустое значение | ||
| + | - Положительные значения говорят о просрочке, | ||
| + | |||
| + | Поле " | ||
| + | - Если значение | ||
| + | - Если значение поля " | ||
| + | - Если значение | ||
| + | - Если значение поля " | ||
| + | */ | ||
| + | |||
| + | var objectID = parameters.GetValueOrDefault< | ||
| + | var deviation = dataContext.Projects | ||
| + | | ||
| + | .OrderBy(p => p.Name) | ||
| + | .Select(a => new {a.Id, | ||
| + | a.Name, | ||
| + | a.SystemEndDate, | ||
| + | a.BaselinePlanEndDate, | ||
| + | a.ActualEndDate, | ||
| + | a.CalendarId | ||
| + | }) | ||
| + | .ToList() | ||
| + | .Select(b => new {b.Id, | ||
| + | b.Name, | ||
| + | b.SystemEndDate, | ||
| + | b.BaselinePlanEndDate, | ||
| + | b.ActualEndDate, | ||
| + | deviationPlan = Math.Round(b.ActualEndDate != null ? workCalendars.GetWorkCalendar(b.CalendarId).GetWorktimeDays(b.BaselinePlanEndDate.Value.Date, | ||
| + | } | ||
| + | ) | ||
| + | .ToList() | ||
| + | .Select(c => new {c.Id, | ||
| + | c.Name, | ||
| + | c.SystemEndDate, | ||
| + | c.BaselinePlanEndDate, | ||
| + | c.ActualEndDate, | ||
| + | c.deviationPlan, | ||
| + | deviationStatus1 = c.deviationPlan <= 7 ? 1 : 0, | ||
| + | deviationStatus2 = c.deviationPlan > 7 && c.deviationPlan <= 14 ? 2 : 0, | ||
| + | deviationStatus3 = c.deviationPlan > 14 ? 3 : 0}) | ||
| + | |||
| + | .ToList() | ||
| + | .Select(d => new {ObjectId = d.Id, | ||
| + | d.Name, | ||
| + | d.SystemEndDate, | ||
| + | d.BaselinePlanEndDate, | ||
| + | d.ActualEndDate, | ||
| + | deviationPlan = d.deviationPlan, | ||
| + | deviationStatus = d.deviationStatus1 + d.deviationStatus2 + d.deviationStatus3}) | ||
| + | .ToList(); | ||
| + | return deviation;</ | ||
| + | - Во второй вкладке браузера перейдите | ||
| + | - Скопируйте в адресной строке ID этого объекта (после uid=). | ||
| + | - Переключитесь обратно на первую вкладку браузера, на страницу создания источника данных, | ||
| + | - Замените ID из строки кода на скопированный вами ID ранее (шаг 9). Это необходимо для первичного запуска кода запроса, | ||
| + | - Активируйте опцию «Может использоваться в диаграмме Ганта» | ||
| + | - Нажмите кнопку «Сделать запрос и сохранить». | ||
| + | - Дождитесь, пока запрос | ||
| + | - Убедитесь, | ||
| + | - Закройте страницу сохраненного источника данных «Расчет отклонения | ||
| + | - Перейдите на страницу «Администрирование» -> «Диаграмма Ганта». | ||
| + | - В разделе «Настройка полей из LINQ-запроса» -> запрос «Расчет отклонения от базового плана» -> «Настроить». | ||
| + | - Произведите следующие настройки: | ||
| + | - Активируйте чекбоксы в поле {{: | ||
| + | * deviationPlan: | ||
| + | * Псевдоним - «Отклонение от БП» (без кавычек). Можете указать свое название поля с количеством дней отклонения, которое вы хотите увидеть в диаграмме Ганта. | ||
| + | * Тип – Число. | ||
| + | * Формат – Число. | ||
| + | * deviationStatus: | ||
| + | * Псевдоним - «Статус отклонения» (без кавычек). Можете указать свое название поля с индикатором отклонения, | ||
| + | * Тип – Индикатор. | ||
| + | * Добавьте 3 индикатора: | ||
| + | * Для зеленого индикатора укажите условие «= 1» (без кавычек). Можете указать свой цвет | ||
| + | * Для оранжевого индикатора укажите условие «= 2» (без кавычек) Можете указать свой цвет индикатора, | ||
| + | * Для красного | ||
| + | - Нажмите кнопку «Сохранить». | ||
| + | - Убедитесь, | ||
| - | 2. Перейдите на страницу «Источники | + | ===== Появились ли поля в диаграмме Ганта? ===== |
| + | - Перейдите | ||
| + | - Раскройте выпадающий список у любой из колонок диаграммы Ганта, наведя курсор мыши на шапку колонки и нажав на . | ||
| + | - Наведите курсор мыши на команду «Пользовательские столбцы» и активируйте | ||
| + | - Убедитесь, что указанные колонки добавились в табличную часть диаграммы Ганта. | ||
| - | Примечание: | + | ==== Настройка представления поле в Ганте ==== |
| - | 3. Нажмите кнопку «Пересоздать контекст». | + | |
| - | + | | |
| - | 4. Нажмите кнопку «Новый источник данных», | + | - Если данные в колонках полностью отсутствуют, |
| - | + | | |
| - | 5. В поле «Название» на странице создания источника данных через LINQ-запрос укажите «Расчет отклонения от базового плана» (без кавычек). | + | |
| - | + | | |
| - | 6. В поле «Запрос» полностью удалите код тестового запроса. | + | |
| - | 7. В поле «Запрос» полностью скопируйте код из файла «2. Код запроса.txt». | + | |
| - | + | ||
| - | 8. Во второй вкладке браузера перейдите в карточку любого объекта системы, | + | |
| - | 9. Скопируйте в адресной строке ID этого объекта (после uid=). | + | |
| - | + | ||
| - | 10. Переключитесь обратно на первую вкладку браузера, | + | |
| - | 11. Замените ID из строки кода: | + | |
| - | + | ||
| - | На скопированный вами ID ранее (шаг 9). Это необходимо для первичного запуска кода запроса, | + | |
| - | 12. Активируйте опцию «Может использоваться в диаграмме Ганта» | + | |
| - | + | ||
| - | 13. Нажмите | + | |
| - | 14. Дождитесь, | + | |
| - | + | ||
| - | 15. Убедитесь, что запрос | + | |
| - | + | ||
| - | 16. Закройте страницу сохраненного источника данных «Расчет отклонения от базового плана». | + | |
| - | 17. Перейдите на страницу «Администрирование». | + | |
| - | 18. Перейдите на страницу «Диаграмма | + | |
| - | + | ||
| - | 19. В разделе «Настройка полей из LINQ-запроса» выберите запрос «Расчет отклонения от базового плана» и нажмите кнопку «Настроить». | + | |
| - | + | ||
| - | 20. Произведите следующие настройки: | + | |
| - | + | ||
| - | Активируйте чекбоксы в поле | + | |
| - | deviationPlan: | + | |
| - | • Псевдоним - «Отклонение от БП» (без кавычек). Можете указать свое название поля с количеством дней отклонения, | + | |
| - | • Тип – Число. | + | |
| - | • Формат – Число. | + | |
| - | deviationStatus: | + | |
| - | • Псевдоним - «Статус отклонения» (без кавычек). Можете указать свое название поля с индикатором отклонения, | + | |
| - | • Тип – Индикатор. | + | |
| - | • Добавьте 3 индикатора, | + | |
| - | o Для зеленого индикатора укажите условие «= 1» (без кавычек). Можете указать свой цвет индикатора, | + | |
| - | o Для оранжевого индикатора укажите условие «= 2» (без кавычек) Можете указать свой цвет индикатора, | + | |
| - | o Для красного индикатора укажите условие «= 3» (без кавычек) Можете указать свой цвет индикатора, | + | |
| - | 21. Нажмите кнопку «Сохранить». | + | |
| - | 22. Убедитесь, | + | |
| - | • На странице «Настройка диаграммы Ганта» отображены 2 поля «Отклонение от БП» и «Статус отклонения», | + | |
| - | + | ||
| - | № п/ | + | |
| - | 23. Перейдите в диаграмму Ганта любого объекта системы. | + | |
| - | 24. Раскройте выпадающий список у любой из колонок диаграммы Ганта, наведя курсор мыши на шапку колонки и нажав на . | + | |
| - | 25. Наведите курсор мыши на команду «Пользовательские столбцы» и активируйте чекбоксы «Отклонение от БП» и «Статус отклонения». | + | |
| - | + | ||
| - | 26. Убедитесь, | + | |
| - | + | ||
| - | Примечание: | + | |
| - | 1. Настройте их порядок | + | |
| - | 2. При необходимости сохраните настройки представления, | + | |
| - | + | ||
| - | 3. Если данные в колонках полностью отсутствуют, | + | |
| - | 4. Данные в колонках LINQ-запросов («Отклонение от БП» и «Статус отклонения») обновляются в 3 случаях: | + | |
| - | • При открытии страницы Диаграммы Ганта. | + | |
| - | • При обновлении страницы Диаграммы Ганта. | + | |
| - | • При сохранении диаграммы Ганта (по нажатию на кнопку «Сохранить»). | + | |
| - | + | ||