Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Не элементарный расчет ресурса в СКД.

Не элементарный расчет ресурса в СКД.
Я
   Redka
 
06.06.19 - 10:54
Всем привет.

Приведу выдуманный пример для понимания:
Отчет сгруппирован по Сотрудникам и их Задачам. Ресурс - дата выполнения Задачи. Надо чтобы по сотруднику выводилась максимальная дата выполнения Задания. Но если хотя бы одно задание не выполнено (пустая дата по заданию), то по Сотруднику тоже выводилась пустая дата.

Функция Максимум не подходит, так как пустая дата всегда меньше любой другой даты. Есть у кого-нибудь опыт.
 
 
   toypaul
 
1 - 06.06.19 - 11:15
вычисли в запрос пустую дату как ОгромнуюДату. и добавь выражение представления - выбор когда дата = огромная тогда пустая иначе дата конец
   MakaMaka
 
2 - 06.06.19 - 11:21
Я бы сделал так:
1. Выбрал в запросе данные, поместил во врем талицу
2. Создал второй пакет, сделал выбор записей с максимальной датой, проиндексировал по сотруднику поместил во временную.
3. Создал третий пакет, сделал выбор записей с пустой датой, проинедксировал по сотруднику, поместил в врем таблицу.
4. Сделал бы выборку первой и второй таблицы, и выводил бы поле дата через
Выбор когда ВРтаб2.Дата = ДатаВремя(1,1,1) Тогда 
 ВРтаб2.Дата
Иначе 
ВРтаб1. Дата
Конец
   MakaMaka
 
3 - 06.06.19 - 11:22
ну и группировки по сотруднику и функции добавил в запросе где вр таб создавал бы, в первой макс, во второй мин
   MakaMaka
 
4 - 06.06.19 - 11:22
Там надо еще посмотреть надо ли индексировать, и попробовать посмотреть в сторону вложенного запроса, он может быстрее отработать
   MakaMaka
 
5 - 06.06.19 - 11:26
Кто нибудь покритикует (2) ?
   dmt
 
6 - 06.06.19 - 11:31
я бы попробовал так:
выбор когда Минимум(Дата) = ДатаВремя(1,1,1) тогда ДатаВремя(1,1,1) иначе Максимум(Дата)
   MakaMaka
 
7 - 06.06.19 - 11:48
(6) Да, хороший вариант, должен проканать
   Redka
 
8 - 06.06.19 - 11:59
Всем спасибо за варианты. В (6) то, что искал. Думал, может есть встроенная функция. Но так тоже хорошо.
   Redka
 
9 - 06.06.19 - 12:01
(5) Ну если хочешь. Вариант рабочий, но громоздкий.
   MakaMaka
 
10 - 06.06.19 - 12:25
Даааааааааа, опять получился монстр по прогреву оперативки )

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.