Имя: Пароль:
1C
1С v8
ЗуП 2.5 Расчет районного коэффициента + учет разовых премий
0 Darklight
 
06.09.12
14:40
В базу расчета вида начислений "Районный коэффициент" включены доп. начисления "Премия разовая" и "Премия месячная", которая вводится документом "Регистрация разовых начислений сотрудников организации" + "Премия месячная", которая вводится документом "Премии сотрудников организаций".

В документе "Начисление зарплаты работникам организаций" рассчитывается вид расчета "Районный коэффициент". Проблема в том, что вышеназванные премии не включаются в расчет этого коэффициента. Включаются только виды расчета (по базе), рассчитанные в самом этом же документе "Начисление зарплаты работникам организаций".

Анализируя код алгоритма расчета нашёл вот такой запрос (рассчитывающий базу для расчета районного коэффициента):

ВЫБРАТЬ
   СУММА(База.РезультатБаза) КАК РезультатБаза,
   База.Регистратор КАК Регистратор,
   База.НомерСтроки КАК НомерСтроки
ПОМЕСТИТЬ ВТБаза
ИЗ
   (ВЫБРАТЬ
       База1.РезультатБаза КАК РезультатБаза,
       База1.Регистратор КАК Регистратор,
       База1.НомерСтроки КАК НомерСтроки
   ИЗ
       РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций.БазаОсновныеНачисленияРаботниковОрганизаций(&парамИзмеренияОсновного, &парамИзмеренияБазового, &парамРазрезы, ВидРасчета.КатегорияРасчета = &парамКатегорияНачисления И Регистратор = &парамРегистратор И Авторасчет) КАК База1
   ГДЕ
       ((НЕ База1.Сторно)
               ИЛИ База1.ПериодРегистрацииРазрез < База1.ПериодРегистрации)
   
   ОБЪЕДИНИТЬ ВСЕ
   
   ВЫБРАТЬ
       База2.РезультатБаза,
       База2.Регистратор,
       База2.НомерСтроки
   ИЗ
       РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций.БазаДополнительныеНачисленияРаботниковОрганизаций(&парамИзмеренияОсновного, &парамИзмеренияБазового, &парамРазрезы, ВидРасчета.КатегорияРасчета = &парамКатегорияНачисления И Регистратор = &парамРегистратор И Авторасчет) КАК База2
   ГДЕ
       ((НЕ База2.Сторно)
               ИЛИ База2.ПериодРегистрацииРазрез < База2.ПериодРегистрации)) КАК База
СГРУППИРОВАТЬ ПО
   База.Регистратор,
   База.НомерСтроки

интересует нижний запрос (по доп. начислениям), а именно условие отбора: Регистратор = &парамРегистратор
Здесь в параметре передаётся ссылка на сам документ "Начисление зарплаты работникам организаций". Указанных видов расчета премий в ТЗ начислений сотруднику в этом документе нет, они уже начислены другими документами (см. в самом начале).

Получается алгоритм расчета базы берёт только начисления (формирующие эту базу) из документа, который делает этот расчет.

Вот и мой вопрос - почему именно так?
И главный вопрос - как это исправить - как включить премии в расчета базы для районного коэффициента?
1 IBTM
 
06.09.12
15:11
да ни че там править не надо...

что говорит расчет с коментарием?
2 Darklight
 
06.09.12
15:17
(1) да ничего не говорит - выводит базу в которую не входя указанные премии - я же сказал, что эта база получается вышеуказанным запросом.
3 IBTM
 
06.09.12
15:26
(2) если ты в этом уверен, то хз...
4 Darklight
 
06.09.12
15:46
(3) К сожалению, я тут не могу быть уверен на 100% - т.к. расчет з/п не мой профиль - просто свалили на меня эту проблему :(
Но то, что вышеназванный запрос возвращает базу, которая выводится в комментарии к расчету и эта величина является расчетной базой для итогового рассчитанного районного коэффициента - это факт. А вышеназванны суммы премий в неё не в ходят - это тоже факт.
5 Darklight
 
06.09.12
17:12
(0) Так с отбором по регистратору, кажется, разобрался - это отбор видов расчета, по которым нужно рассчитать базу - т.е. это отбор районного коэффициента из документа "Начисление зарплаты работникам организаций" - но почему не рассчитывается база? Может кто подскажет - какой-нибудь проверочный запрос для получения промежуточных/уточняющих данных?
6 Darklight
 
07.09.12
13:15
(5) ВСё, разобрался. Когда начал самостоятельно писать "эмуляцию" данной виртуальной таблицы расчета базы. Оказалось... сотрудник задвоен: премии на одном элементе, а начисление з/п идёт про другому элементу - и они практически идентичны с виду :( сук.... и
2 + 2 = 3.9999999999999999999999999999999...