Столкнулась с такой ситуацией.
В январе сделано начисление с периодом корректировки дек 2011.
При расчете взносов он все взносы увеличил в 2 раза.
Смотрю программный код в классе RpayTaxSumCalc
метод fundBaseAmount и вот отрывок
X++:
select sum(BaseAmount) from rpayFundEmplSum
where rpayFundEmplSum.EmplId == _emplId &&
rpayFundEmplSum.RpayCounterUnit == _payCounterUnit &&
rpayFundEmplSum.CorrectedPeriod >= _startCorrectedPeriod &&
rpayFundEmplSum.CorrectedPeriod <= _endCorrectedPeriod &&
rpayFundEmplSum.PayPeriod <= _payPeriod &&
(!_usePercent ||
rpayFundEmplSum.PercentValue == _percentValue) &&
(_includeLast ||
(rpayFundEmplSum.CorrectedPeriod != _endCorrectedPeriod ||
rpayFundEmplSum.PayPeriod != _payPeriod));
baseAmount = rpayFundEmplSum.BaseAmount;
if (year(_endCorrectedPeriod) < year(_payPeriod) && rpayFundEmplSum.isTmp())
{
select sum(BaseAmount) from rpayFundEmplSumYr
where rpayFundEmplSumYr.EmplId == _emplId &&
rpayFundEmplSumYr.RpayCounterUnit == _payCounterUnit &&
rpayFundEmplSumYr.CorrectedPeriod >= _startCorrectedPeriod &&
rpayFundEmplSumYr.CorrectedPeriod <= _endCorrectedPeriod &&
rpayFundEmplSumYr.PayPeriod <= _payPeriod &&
(!_usePercent ||
rpayFundEmplSumYr.PercentValue == _percentValue) &&
(_includeLast ||
(rpayFundEmplSumYr.CorrectedPeriod != _endCorrectedPeriod ||
rpayFundEmplSumYr.PayPeriod != _payPeriod));
baseAmount += rpayFundEmplSumYr.BaseAmount;
}
Согласно данному коду начисления у меня попадают и в первый baseAmount и во второй, т.к. они относятся к предыдущему году. Получается задвоение базы для исчисления взносов. Или же данный программный код направлен только на то, что у нас база за предыдущий год не может появиться в текущем, могут меняться только ставки налога?
Что не так? Чего не донастроено?
Хочется поменять код и на первый расчет baseAmount поставить, что он не относится к прошлому году.