perishkin написал(а):
На экране находятся пары диапазонов:
Период ___ по ___
Год ____ по ___
Таких пар много на экране. Разработчика сейчас нет на месте, а переделать код надо, чтобы отрабатывали условия вида
Нужен цикл с Год-low/Период-low по Год-high/Период-high
Как пример
Нужен цикл с 2006/05 по 2007/01
Понятно, что отдельными элементами я этого добьюсь, а вот select-options с интервалами?
извините, но если установите период 05 .. 01 и год 2006 .. 2007, то в лучшем случае он обработает интервалы янв 2006 - май 2006 и янв 2007 - май 2007, так как разработчик, скорее всего, использовал in. В противном случае ему бы пришлось выполнять очень громоздкую проверку:
((so_per-low <= period) and (so_year-low = year) and ((so_year-low < so_year-high) or (so_per-high >= period))) or ((so_year-low < year) and (so_year-high > year)) or ((so_per-high >= period) and (so_year-high = year) and ((so_year-low < so_year-high) or (so_per-low <= period)))
вместо
((period in so_per) and (year in so_year))
так что без разработчика не обойтись
поэтому не стоит пытаться обойти стандартную функциональность; лучше попробуйте либо заменить пары значений, либо (лучше) воспользоваться select-options для дат, а уже из них извлекать период и год