Имя: Пароль:
1C
1С v8
ЗУП 3.1. Получить нормы дней сотрудника
0 егаис
 
04.08.18
10:35
Приветствую.
Подскажите, как достучаться до показателя "Норма дней"? Нужно получить таблицу норм помесячно за период.
1 егаис
 
04.08.18
15:31
ап
не могу найди подходящую функцию в общих модулях. Пяткой чувствую, должна быть
2 егаис
 
06.08.18
15:12
подниму
Есть запрос
    Запрос.Текст =
        "ВЫБРАТЬ
        |    НачисленияУдержанияПоСотрудникамОбороты.Сотрудник КАК Сотрудник,
        |    НачисленияУдержанияПоСотрудникамОбороты.Период КАК Период,
        |    НачисленияУдержанияПоСотрудникамОбороты.СуммаОборот КАК СуммаОборот
        |ПОМЕСТИТЬ ЗаписиРегистра
        |ИЗ
        |    РегистрНакопления.НачисленияУдержанияПоСотрудникам.Обороты(
        |            ,
        |            &КонецПериода,
        |            Месяц,
        |            Организация = &Организация
        |                И НачислениеУдержание = &Индексация
        |                И Сотрудник В (&Сотрудники)) КАК НачисленияУдержанияПоСотрудникамОбороты
        |ГДЕ
        |    НачисленияУдержанияПоСотрудникамОбороты.СуммаОборот > 0
        |;
        |
        |////////////////////////////////////////////////////////////////////////////////
        |ВЫБРАТЬ
        |    ОтработанноеВремяПоСотрудникамОбороты.Сотрудник КАК Сотрудник,
        |    МАКСИМУМ(ОтработанноеВремяПоСотрудникамОбороты.Период) КАК Период
        |ПОМЕСТИТЬ ОтработанныеДни
        |ИЗ
        |    РегистрНакопления.ОтработанноеВремяПоСотрудникам.Обороты(
        |            ,
        |            &КонецПериода,
        |            Месяц,
        |            Организация = &Организация
        |                И Начисление = &Индексация
        |                И Сотрудник В (&Сотрудники)) КАК ОтработанноеВремяПоСотрудникамОбороты
        |ГДЕ
        |    ОтработанноеВремяПоСотрудникамОбороты.ОплаченоДнейОборот = РАЗНОСТЬДАТ(НАЧАЛОПЕРИОДА(ОтработанноеВремяПоСотрудникамОбороты.Период, МЕСЯЦ), КОНЕЦПЕРИОДА(ОтработанноеВремяПоСотрудникамОбороты.Период, МЕСЯЦ), ДЕНЬ) + 1
        |
        |СГРУППИРОВАТЬ ПО
        |    ОтработанноеВремяПоСотрудникамОбороты.Сотрудник
        |;
        |
        |////////////////////////////////////////////////////////////////////////////////
        |ВЫБРАТЬ
        |    ОтработанныеДни.Сотрудник КАК Сотрудник,
        |    ОтработанныеДни.Период КАК Период,
        |    СУММА(ЗаписиРегистра.СуммаОборот) КАК СуммаОборот
        |ИЗ
        |    ЗаписиРегистра КАК ЗаписиРегистра
        |        ВНУТРЕННЕЕ СОЕДИНЕНИЕ ОтработанныеДни КАК ОтработанныеДни
        |        ПО ЗаписиРегистра.Сотрудник = ОтработанныеДни.Сотрудник
        |            И ЗаписиРегистра.Период = ОтработанныеДни.Период
        |
        |СГРУППИРОВАТЬ ПО
        |    ОтработанныеДни.Сотрудник,
        |    ОтработанныеДни.Период";


Отрабатывает корректно, идет сравнение в ВТ ОтработанныеДни отработанного времени с календарными днями.
Не соображу, как сравнить отработанное время с нормой по графику. Подскажите, пожалуйста.
3 dnab
 
06.08.18
15:31
Посмотри
УчетРабочегоВремениРасширенный.СоздатьВТДанныеУчетаРабочегоВремениСотрудников, УчетРабочегоВремениРасширенный.СоздатьВТПлановоеВремя
какой-то из них я использовал, вот только еще пришлось кажется с состояниями сотрудника соединять, ибо попадали нормо-часы за дни когда сотрудник был уже уволен/еще не принят.
4 егаис
 
06.08.18
15:36
(3) там же месяцев ограничено или ошибаюсь?
Мне в итоге нужно получить последний месяц и сумму, в котором количество отработанных дней >= нормы.
Как все это сделать через запрос хз
5 dnab
 
06.08.18
15:44
(4) ну можно самому попробовать вытащить план из ГрафикиРаботыПоВидамВремени, но только бери оттуда норму по графикам, по людям как в 2.5 не получится. И  получить график для сотрудников с учетом изменений
6 dnab
 
06.08.18
15:51
Сложно стало отчеты писать. Я вторую неделю не знаю как подойти к отчету, который в 2.5 написал за 4 часа.
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн