Имя: Пароль:
1C
1С v8
Организовать запрос
0 birk
 
09.02.12
15:24
Есть таблица:
01.01.2011 Сотрудник1 Больничный
02.01.2011 Сотрудник1 Больничный
03.01.2011 Сотрудник1 Больничный
04.01.2011 Сотрудник1 Отпуск
05.01.2011 Сотрудник1 Отпуск
06.01.2011 Сотрудник1 Отпуск

Нужно получить:
Сотрудник1 | Больничный | С 01.01.2011 По 03.01.2011
Сотрудник1 | Отпуск     | С 04.01.2011 По 06.01.2011

Подскажите как?
1 shuhard
 
09.02.12
15:25
(0) соединить налево дважды с максимумом по дате и минимумом
можно подзапросами, можно временными таблицами
2 birk
 
09.02.12
15:28
Не понял, как я получу от сабжа 03.01.2011 Сотрудник1 Больничный  максимумом?
3 Maxus43
 
09.02.12
15:32
а если даты не по порядку? или после отпуска опять больничный?
4 birk
 
09.02.12
15:33
так и есть :|
5 shuhard
 
09.02.12
15:36
(3) стоп, не надо грязи,
в ТЗ было два разных не пересекающихся начисления
и (1) полностью ТЗ соответствует
6 birk
 
09.02.12
15:37
01.01.2011 Сотрудник1 Больничный
02.01.2011 Сотрудник1 Больничный
03.01.2011 Сотрудник1 Больничный
04.01.2011 Сотрудник1 Отпуск
05.01.2011 Сотрудник1 Отпуск
06.01.2011 Сотрудник1 Отпуск
07.01.2011 Сотрудник1 Больничный

Нужно получить:
Сотрудник1 | Больничный | С 01.01.2011 По 03.01.2011
Сотрудник1 | Отпуск     | С 04.01.2011 По 06.01.2011
Сотрудник1 | Больничный | С 07.01.2011 По 07.01.2011
7 Maxus43
 
09.02.12
15:38
(5) я просто заголовок следущего вопроса протелепатировал)
8 shuhard
 
09.02.12
15:38
(7) =)
9 Maxus43
 
09.02.12
15:39
запросом имхо не решить, в коде надо обрабатывать
10 shuhard
 
09.02.12
15:44
(9) почему
31 временная таблица
+ производственный календарь
11 Maxus43
 
09.02.12
15:45
ну да, если 31 таблица и календарь :) шкурка выделки не стоит
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн