Всегда работает верно, dataSourceCount() - возвращает число присоединенных источников данных, и не важно активны они или нет. Перед работой с ds по индексу(если нет уверенности, что их количество статично), всегда выполняйте проверку
X++:
if (dataSource(i).enabled())