При попытке получить @sum для столбца в приложении iPhone Core-Data возникает исключение.
Мои две модели следующие -
Модель задания:
@interface Task : NSManagedObject
{
}
@property (nonatomic, retain) NSString * taskName;
@property (nonatomic, retain) NSSet* completion;
@end
@interface Task (CoreDataGeneratedAccessors)
- (void)addCompletionObject:(NSManagedObject *)value;
- (void)removeCompletionObject:(NSManagedObject *)value;
- (void)addCompletion:(NSSet *)value;
- (void)removeCompletion:(NSSet *)value;
@end
Комплектация:
@interface Completion : NSManagedObject
{
}
@property (nonatomic, retain) NSNumber * percentage;
@property (nonatomic, retain) NSDate * time;
@property (nonatomic, retain) Task * task;
@end
А вот и выборка:
NSFetchRequest *request = [[NSFetchRequest alloc] init];
request.entity = [NSEntityDescription entityForName:@"Task" inManagedObjectContext:context];
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"taskName" ascending:YES];
request.sortDescriptors = [NSArray arrayWithObject:sortDescriptor];
NSError *error;
NSArray *results = [context executeFetchRequest:request error:&error];
NSArray *parents = [results valueForKeyPath:@"taskName"];
NSArray *children = [results valueForKeyPath:@"completion.@sum.percentage"];
NSLog(@"%@ %@", parents, children);
[request release];
[sortDescriptor release];
Исключение выдается на четвертой строке снизу. Брошенное исключение:
*** -[NSCFSet decimalValue]: unrecognized selector sent to instance 0x3b25a30
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[NSCFSet decimalValue]: unrecognized selector sent to instance 0x3b25a30'
Я был бы очень признателен за любую помощь.
Спасибо.
Редактировать: я на снежном барсе 10.6.3 и SDK 3.1.3.