CIBlockElement::GetList() позволяет выбирать все элементы не применяя для них фильтры активности. Точнее эти фильтры вы должны сами применять.
Т.е. можно запросто выводить элементы у которых период активности начинается через месяц и у которых стоит свойство, что они активные. А если свойство не стоит, то не выбирать.
CIBlockElement::GetList(
Array("DATE_ACTIVE_FROM"=>"DESC"),
Array("IBLOCK_ID"=>"xx", "SECTION_ID"=>"xx", "ACTIVE"=>"Y"));