Здравствуйте. Помогите, пожалуйста, понять логику фильтров в ИТЗ.
Дано: Список открытых сбережений с указанием отделения, даты открытия счета и процентной ставки по счету (ИТЗ с тремя колонками):
итзВклады.НоваяКолонка("Отделение");
итзВклады.НоваяКолонка("ДатаОткрытия");
итзВклады.НоваяКолонка("ПроцСтавка");
Необходимо: выбрать счета 1) по определенному отделению _Отделение 2) в заданном периоде от НачДата до КонДата 3) с процентной ставкой >= 0.01
Делаю индекс, устанавливаю фильтр:
итзВклады.ДобавитьИндекс("Отделение","#Отделение,ДатаОткрытия,ПроцСтавка");
_сзКлючН.УдалитьВсе();
_сзКлючН.ДобавитьЗначение(_Отделение);
_сзКлючН.ДобавитьЗначение(НачДата);
_сзКлючН.ДобавитьЗначение(0.01);
_сзКлючВ.УдалитьВсе();
_сзКлючВ.ДобавитьЗначение(_Отделение);
_сзКлючВ.ДобавитьЗначение(КонДата);
_сзКлючВ.ДобавитьЗначение(100);
В результате:
1) фильтр по отедлениям работает правильно
2) фильтр по датам работает правильно
3) фильтр по % ставке работает правильно
только когда ДатаОткрытия = НачДата (т.е. когда идекс точно соответствует нижней границе фильтра), а когда ДатаОткрытия > НачДата - фильтр по ставке не работает, т.е. выводятся счета со ставкой от 0%.
Подскажите, плиз, где я ошибаюсь и как сделать правильно.