Title: EODeleteRuleNoAction cannot be set in EOModeler
Entry Number: Creation Date: December 12, 1997
Last Updated: <<Date December 15, 1997>>
Keywords: WebObjects, EOModeler, EODeleteRuleNoAction, EOF 2.2, WebObjects 3.5.x
This README document describes how to install an EOModeler bundle used with the Enterprise Objects Framework version 2.2 and WebObjects Release 3.5.x in order to properly set the EODeleteRuleNoAction option in the EOModeler relationship inspector.
The EODeleteRuleNoAction is a new option added to EOModeler starting with EOF Version 2.2.
This EOModeler bundle is the fix for Apple bug ref. no. 2202107.
The bug occurs when you use the Advanced EORelationship inspector to set a relationship's DeleteRule to "No Action" in an eomodel file. When you attempt to open this model at a later point in time, the delete rule will be mistakenly set to "Nullify", and you will see the following message in the console or application event log:
"Invalid delete rule string:'EODeleteRunNoAction' on entity with name: 'toMovie'"
1) From within your application you can use the public API on EORelationship to set the EODeleteRule to be the desired value. This can be done with the following code sample:
// need to import EOClassDescription.h from EOControl where the
// enum is defined.
// find out the relationship which needs to be fixed
relToFix = [[[EOModelGroup defaultGroup] entityNamed:@"entityName"] relationshipNamed:@"relName"];
// set to the proper delete rule
First, you need to install the bundle. Then, we recommend that you drop the bundle into the Resources directory of the EOModeler.app. You also need to set the user defaults to get EOModeler to load the bundle during startup.
On NT (using the Bourne shell shipped with WebObjects):
<<Assuming that your $NEXT_ROOT is defined as C:/Next, that you have renamed the binary file to DeleteRuleFix.tar.gz, and that you have copied the NT binary patch into your C:/temp directory>>