1
Vote

INT64 get/set

description

Table has field FBID type int64.
 
When I create record, it work correclly with value 10000106885????.
 
But when I use
NSNumber *FBID = [save getFBID];
 
Value for FBID is 2147483647.
 
Sorry for my bad English.

comments

haoly wrote Aug 24, 2012 at 12:11 PM

I already cheat this by:

file OdataRTTI.m -> function

+(void)setObjectInstanceVariable:(id) object varname:(NSString )variablename varval:(NSString )value
{
//before
    else if(strcmp(type,"@\"NSNumber\"") == 0 )
{
    NSNumber  *number = [NSNumber numberWithInt:[value intValue]];
    objectValue = number;
}
//after
    else if(strcmp(type,"@\"NSNumber\"") == 0 )
{
    NSNumber  *number = [NSNumber numberWithLongLong:[value longLongValue]];
    objectValue = number;
}
}

I think this not work correctly for all case. So I hope new Update will fix this