|
Получить таблицу за каждый день | ☑ | ||
---|---|---|---|---|
0
Juliette_
Juliette 26.10.20
✎
07:21
|
Зуп
Дана таблица значений Сотрудник / ДатаНачала / ДатаОкончания Как красиво на выходе получить таблицу за каждый день периода? Не хочется использовать обычный перебор, предполагаю в ЗУП есть механизм. Иванов 01.10.20 03.10.20 на выходе Иванов 01.10.20 Иванов 02.10.20 Иванов 03.10.20 Вот есть такой ЗарплатаКадрыОбщиеНаборыДанных.СоздатьВТПериоды( Запрос.МенеджерВременныхТаблиц, НачалоДня(ДатаНачалаПериода), КонецДня(ДатаОкончанияПериода), "ДЕНЬ", "Дата", "Календарь"); но как его правильно использовать для моей таблицы? |
|||
1
Chameleon1980
26.10.20
✎
07:44
|
почти везде был производственный карендаль
|
|||
2
qwerty42russ
26.10.20
✎
08:02
|
ВЫБРАТЬ
0 КАК Цифра ПОМЕСТИТЬ ТабЦифр ОБЪЕДИНИТЬ ВЫБРАТЬ 1 ОБЪЕДИНИТЬ ВЫБРАТЬ 2 ОБЪЕДИНИТЬ ВЫБРАТЬ 3 ОБЪЕДИНИТЬ ВЫБРАТЬ 4 ОБЪЕДИНИТЬ ВЫБРАТЬ 5 ОБЪЕДИНИТЬ ВЫБРАТЬ 6 ОБЪЕДИНИТЬ ВЫБРАТЬ 7 ОБЪЕДИНИТЬ ВЫБРАТЬ 8 ОБЪЕДИНИТЬ ВЫБРАТЬ 9 ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ДОБАВИТЬКДАТЕ(&ДатаНачала, ДЕНЬ, ТабЦифр1.Цифра + 10 * ТабЦифр2.Цифра + 100 * ТабЦифр3.Цифра + 1000 * ТабЦифр4.Цифра) КАК День ИЗ ТабЦифр КАК ТабЦифр1, ТабЦифр КАК ТабЦифр2, ТабЦифр КАК ТабЦифр3, ТабЦифр КАК ТабЦифр4 ГДЕ ДОБАВИТЬКДАТЕ(&ДатаНачала, ДЕНЬ, ТабЦифр1.Цифра + 10 * ТабЦифр2.Цифра + 100 * ТабЦифр3.Цифра + 1000 * ТабЦифр4.Цифра) <= ДОБАВИТЬКДАТЕ(&ДатаКонца, МЕСЯЦ, 2) УПОРЯДОЧИТЬ ПО День УБЫВ |
|||
3
qwerty42russ
26.10.20
✎
08:05
|
Это код на создание запросом календаря на определенную дату
Потыкай его, мб разберешься Если что - ДОБАВИТЬКДАТЕ(&ДатаКонца, МЕСЯЦ, 2) - это мне нужно было сделать на 2 месяца вперед календарь. Оставь там "ДатаКонца" и это будет считаться границей календаря |
|||
4
SleepyHead
гуру
26.10.20
✎
08:07
|
(0) Следующая тема - как свернуть таблицу дат по периодам.
|
|||
5
Juliette_
Juliette 26.10.20
✎
08:14
|
(4) это я умею
(1) не совсем понимаю вот начала запроса, формируем ВТ "Календарь" Запрос = Новый Запрос; Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; // Создание таблицы дней ЗарплатаКадрыОбщиеНаборыДанных.СоздатьВТПериоды( Запрос.МенеджерВременныхТаблиц, НачалоДня(ДатаНачала), КонецДня(ДатаОкончания), "ДЕНЬ", "Дата", "Календарь"); Дальше не понимаю, как связать с таблицей ( |
|||
6
SleepyHead
гуру
26.10.20
✎
08:38
|
(5) Какую проблему решаешь с помощью такой таблицы?
|
|||
7
Juliette_
Juliette 26.10.20
✎
08:47
|
(6) создан документ отклонений, куда вносятся данные сотрудник, период отсутствия.
В Зуп 2.5 был такой механизм, в 3-ке от него отказались непонятно почему. В итоге надо после заполнения табеля выполнить подмену вида времени за эти периоды. Обычным перебором задача решается, но хочу "модно в стиле зуп" |
|||
8
Juliette_
Juliette 26.10.20
✎
09:19
|
получилось )
Запрос = Новый Запрос; Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц; // Создание таблицы дней ЗарплатаКадрыОбщиеНаборыДанных.СоздатьВТПериоды( Запрос.МенеджерВременныхТаблиц, НачалоДня(ДатаНачала), КонецДня(ДатаОкончания), "ДЕНЬ", "Дата", "Календарь"); Запрос.Текст = "ВЫБРАТЬ | Календарь.Дата КАК Дата, | ОтсутствияСотрудники.Сотрудник КАК Сотрудник |ИЗ | Календарь КАК Календарь | ЛЕВОЕ СОЕДИНЕНИЕ Документ.ОтсутствияСотрудники.Сотрудники КАК ОтсутствияСотрудники | ПО (Календарь.Дата >= ОтсутствияСотрудники.ДатаНачала И Календарь.Дата <= ОтсутствияСотрудники.ДатаОкончания) |ГДЕ | ОтсутствияСотрудники.Ссылка.Проведен"; |
|||
9
SleepyHead
гуру
26.10.20
✎
09:43
|
(7) "создан документ отклонений, куда вносятся данные сотрудник, период отсутствия.
В Зуп 2.5 был такой механизм, в 3-ке от него отказались непонятно почему." В ЗУП 3.1 есть документ, регистрирующий отсутствия. Так и называется - "Отсутствие, неявка". Чем он не подходит? |
|||
10
SleepyHead
гуру
26.10.20
✎
09:46
|
(7) "В итоге надо после заполнения табеля выполнить подмену вида времени за эти периоды."
Все документы отсутствий и отклонений от нормального графика работы нужно вносить до расчета, а не после. А табель в ЗУП 3.1 вообще не нужен в большинстве случаев, если только речь не идет о работе с территориями или неформализуемым графиком работы Сдается мне, ты пытаешься решить проблему "как раньше", но на другом инструменте, и получается пока не очень. Может быть, начать лучше с изучения ЗУП 3.1 ? |
|||
11
Juliette_
Juliette 26.10.20
✎
13:18
|
(10) "Может быть, начать лучше с изучения ЗУП 3.1 ?" Правда что ли?
Так называемый документ "Отсутствие, неявка" заточен под определенные виды времени и начисления, неужели Вы думаете, что не рассматривался этот вариант? Чтобы реализовать хотелку переписывать в типовом функционале придется достаточно - это и новый вид состояния сотрудника и в ПВР настроить соотношение с начислением. Вопрос где мороки больше. Сейчас все решилось добавлением нового вида документа и кодом в 30 строк. |
|||
12
D_E_S_131
26.10.20
✎
13:51
|
(11) Неужели вы думаете, что кадровый учет в вашей компании какой-то уникальный и нигде в стране больше такого нет?
|
|||
13
SleepyHead
гуру
26.10.20
✎
16:33
|
(11) В этом ответе прекрасно всё.
Ну ок, ок, так и запишем. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |