Не работают методы Move элемента msadodc
cias; 29.8.04

Проблема такая: в SCADA системе WinCC использую элемент управления adodc.

ADODC подключается к mysql через odbc драйвер (для UserArchive ситуация аналогична).
После выполнения sql-запроса, пытаюсь просмотреть результат, последовательно в цикле проходя по набору записей. При этом adodc.recordset.fields(2).value возвращает результат первой строки в наборе, хотя после него стоит метод adodc.recordset.movenext().
Метод RecordCount выдает результат в 31 запись (и это верно).
Может чего нехватает в настройках элемента управления, но при использовании в приложении на VB все тоже самое работает(все настройки контрола).
Заранее благодарен за помощь.
а код вот такой
cias; 30.8.04

#include "apdefap.h"

void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
#define GetObjectA GetObject

long i=0;
long j=0;


__object *obj = NULL, *pic = NULL, *ado=NULL;
obj= __object_create("PDLRuntime");
if(!obj)
{
printf("obj = NULL\r\n");
return;
}
pic = obj->GetPicture("Test");
if( pic == NULL){
__object_delete(obj);
printf("pic != NULL\r\n");
return;
}
ado=pic->GetObject("Control1");

if( ado == NULL){
printf("ado = NULL\r\n");
__object_delete(obj);
__object_delete(pic);
return;
}
ado->ConnectionString="DSN=my_office";
ado->RecordSource="Select * from avto";
ado->Refresh();
if(ado->Recordset->BOF)
{
printf("\r\n Òàáëèöà ïóñòà");
}
else
{

printf("\r\n%d",ado->Recordset->RecordCount());//все путем 31
i=ado->Recordset->RecordCount();//i=31
while(j<i)
{
printf("\r\n%s",(char*)ado->Recordset->Fields(2)->Value);//Всегда первая запись
printf(" %u",(long)ado->Recordset->Fields(0)->Value);
ado->Recordset->MoveNext();

j++;
}


}
__object_delete(obj);
__object_delete(pic);
__object_delete(ado);

}<<br>