Elena 2020-06-03 01:26:55 +02:00
commit 534d38cc2f
2 changed files with 6 additions and 3 deletions

View File

@ -271,9 +271,9 @@ int GdataTable::nRow()
case(Tint64):
return((Cgarray<__int64>*)buf[i])->n;
case(Tstring):
return((Cgarray<char>*)buf[i])->n;
return((Cgarray<char>*)buf[i])->n/ colm[i].nb;
case(Tbin):
return((Cgarray<char>*)buf[i])->n;
return((Cgarray<char>*)buf[i])->n / colm[i].nb;
default:
break;
}

View File

@ -105,7 +105,7 @@ bool ManagerDbfGdataTable::DbfSetColm( char* name, BYTE type, int size )
switch(type)
{
case(DBF_TYPE_DATA_STR):
//size++;
size++;
t = GdataTable::Tstring;
break;
case(DBF_TYPE_DATA_I64):
@ -208,6 +208,7 @@ bool ManagerDbfGdataTable::DbfGetColm(int icolm, char* name, BYTE *type, int *si
//pilla tipo----------------------
static BYTE t[GdataTable::Tntip]={0,DBF_TYPE_DATA_BOOL,DBF_TYPE_DATA_I, DBF_TYPE_DATA_D,DBF_TYPE_DATA_I64, DBF_TYPE_DATA_STR, DBF_TYPE_DATA_BIN } ;
*type = t[_dt->getType(icolm)];
*ndecimal = MAX_NDECIMALS;
//copia segura de nombre------------------
int i =0;
@ -220,6 +221,8 @@ bool ManagerDbfGdataTable::DbfGetColm(int icolm, char* name, BYTE *type, int *si
}
name[i]=0;
*size = _dt->getSizeASCII(icolm);
if (_dt->getType(icolm) == GdataTable::Tstring)
*size = *size - 1;
return true;
}
//***************************************************************************