Имя: Пароль:
1C
1C 7.7
v7: Получение вычетов по подразделениям начислений заработной платы
0 brenli
 
20.05.16
15:41
Функция СуммаВычетовПоСотрудникам(Док)

//....
СписокСотрудников = Список;

    ТЗ_СписокВычетов = СоздатьОбъект("ТаблицаЗначений");
    Запрос       = СоздатьОбъект("Запрос");
    ТекстЗапроса = "  
    |Период С Док.ДатаДок ПО Док.ДатаДок;
    |Сотр           = Справочник.ВычетыСотрудниковПоНДФЛ.Владелец;
    |ДатаНачала     = Справочник.ВычетыСотрудниковПоНДФЛ.ДатаНачала;
    |ДатаОкончания  = Справочник.ВычетыСотрудниковПоНДФЛ.ДатаОкончания;
    |ВидВычета      = Справочник.ВычетыСотрудниковПоНДФЛ.ВидВычета;
    |СуммаВычета    = Справочник.ВычетыСотрудниковПоНДФЛ.ВидВычета.Сумма;
    |КодВычета      = Справочник.ВычетыСотрудниковПоНДФЛ.ВидВычета.Код;
    |Группировка Сотр Без Групп;
    //|Группировка ВидВычета;

    |Группировка ДатаНачала;
    |Группировка ДатаОкончания;
    |Функция  ОбщаяСуммаВычета = Сумма(СуммаВычета);    
    |Условие(ДатаНачала <= Док.ДатаДок);
    |Условие((ДатаОкончания >= Док.ДатаДок) ИЛИ (ДатаОкончания = ''));
    |Условие(Сотр В СписокСотрудников ;
    |";    

//....

      Возврат СуммаВычета;  
КонецФункции
//**********************************************************
Процедура Сформировать()
//....
Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса = "
    |С НачДата По КонДата;
    |Док                 = Документ.НачислениеЗП.ТекущийДокумент;
    |Подразделение       = Документ.НачислениеЗП.ТекущийДокумент.Подразделение;
    |Сотрудник           = Документ.НачислениеЗП.ТекущийДокумент.Сотрудник;  
    |Оклад               = Документ.НачислениеЗП.ТекущийДокумент.Оклад;
    |СН                  = Документ.НачислениеЗП.ТекущийДокумент.НачисленоСН;
    |РК                  = Документ.НачислениеЗП.ТекущийДокумент.НачисленоРК;
    |Группировка Подразделение Без Групп;
    |Группировка Док;
    |Группировка Сотрудник Без Групп;
    |Функция СуммаОкл = Сумма(Оклад + СН + РК);";
    |Функция Вычеты   = Сумма(СуммаВычетовПоСотрудникам(Док));
//....
КонецПроцедуры


Проверить пока нет возможности, но есть задача.
Нужно получить список вычетов по подразделениям которым  проведены документы "НачисленияЗП"
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший