Вот и мне ее что-то маловато 
 
 проблема так и осталась...
Похоже, что при большом кол-ве полей в записи происходит какой-то сбой в ADO. 
Нулевые значения отпадают. Неправильные имена полей тоже.
Обойти проблему можно переписав результат запроса в массив перед обработкой значений.
Но чертовски интересно было бы знать суть проблемы.