Re: Calculated Field examples for Core Data
Re: Calculated Field examples for Core Data
- Subject: Re: Calculated Field examples for Core Data
- From: mmalcolm crawford <email@hidden>
- Date: Sun, 14 Aug 2005 08:08:57 -0700
On Aug 14, 2005, at 7:41 AM, Clayton Leitch wrote:
Well, I found a document that talked about derived in core data,
NSPersistentDocumentTutorial.pdf.
That's the article at <http://developer.apple.com/documentation/Cocoa/
Conceptual/NSPersistentDocumentTutorial/03_CustomClass/
chapter_4_section_3.html>...
When I compiled the file I received the errors that are described
below:
<Picture 1.png>
If I uncomment the self setKeys lines I get a selector
unrecognized error when I try to run the project.
The method is
'setKeys:triggerChangeNotificationsForDependentKey:' (note "Dependent").
You should also only specify those attributes upon which the
dependent key is dependent (for example, it appears that
'differenceCurrentPeriod' is only dependent upon 'actual...' and
'predictedPeriodCost' (in your code both calculated keys are
dependent upon all four attributes).
I have tried various means to do the subtraction including the
decimalNumberBySubtracting method. All either give me an error or
a warning. I also tried primitiveValueForKey with no success.
You cannot do arithmetic calculations with NSNumbers with the pointer
values.
What did you try? How are the attributes defined in the model?
Did you try anything simple like
- (NSDecimalNumber *)differenceCurrentPeriod
{
float periodPredicted = [[self valueForKey:@"predictedPeriodCost]
floatValue] -
[[self valueForKey:@"actualPeriodCost] floatValue];
return [NSDecimalNumber numberWithFloat:periodPredicted];
}
or better:
- (NSDecimalNumber *)differenceCurrentPeriod
{
return [[self valueForKey:@"predictedPeriodCost]
decimalNumberBySubtracting:
[self valueForKey:@"actualPeriodCost]];
}
?
mmalc
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Cocoa-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden