Ваши комментарии

Не нужна сохраненка.
Ответ есть в этой теме

Если коротко: больничные закрыты мартом и февралем. То есть в апреле они не действуют, поэтому суммы по ним отбрасываются, так как выборка идет с учетом дат строк.

С сохраненкой всегда попроще, чем попытка повторить "по описанию".

Поставьте s50(mrasch) перед double fakt = 0.;

Сервис поддержки клиентов работает на платформе UserEcho